Verification
Verify the Container Started
After running the container, confirm it started correctly:
docker ps --filter name=privman-teams-bot
docker logs -f privman-teams-bot
All three lines must appear within approximately 10 seconds:
[azure_bot.app] INFO: Starting approval poller (interval=60s)
[azure_bot.poller] INFO: Poller starting — polling every 60s
[azure_bot.poller] INFO: 0 pending — no changes
Confirm the health endpoint responds:
curl http://localhost:8080/health
# {"status":"ok"}
Verify the End-to-End Flow
With everything configured, trigger a real Privilege Manager elevation request to confirm the full flow works:
-
On a managed endpoint, trigger an action that requires Privilege Manager approval (for example, right-click an application and select Request Run as Administrator).
-
The user submits the elevation request. It appears as pending in Privilege Manager.
-
Within
POLL_INTERVALseconds (default 60), the poller picks it up. Watch the logs:[azure_bot.poller] INFO: NEW #<id> - <requester> - <policy>[azure_bot.poller] INFO: Posted card #<id> to conversation 19:...@thread.tacv2 -
A new Adaptive Card appears in the Teams channel with the requester name, policy name, computer name, duration dropdown, and Approve and Deny buttons.
-
Click Approve and select a duration. The card updates to show the approval.
-
Privilege Manager allows the elevation on the endpoint.
Manage the Container
| Action | Command |
|---|---|
| Tail logs | docker logs -f privman-teams-bot
|
| Stop the bot | docker stop privman-teams-bot
|
| Start the bot | docker start privman-teams-bot
|
| Remove the container | docker rm privman-teams-bot
|
| Update to a newer version |
Then re-run the |