What good looks like
How the pieces connect
Access provisioning is built from four layers that cascade into each other. You configure them from the bottom up:Before you begin
Before starting, make sure you have:- A request channel already running, which the IT help desk playbook covers
- An identity provider integration (Okta, Microsoft Entra ID, Google Workspace, JumpCloud, Cloudflare, or OneLogin) for automated provisioning
- An understanding of your organization’s application catalog and which apps require access management
- A clear picture of who should approve access, so you can turn that into approval templates
- (Optional) An AI agent deployed to a Slack channel for conversational requests
Step 1: Import or create applications
Applications are the foundation of access provisioning. You can sync them from your identity provider or create them manually.Sync applications from your identity provider
Create applications manually
Step 2: Create approval templates
Approval templates define who approves an access request and in what order. Create them first, because access policies reference them.Navigate to approval templates
Click New Template
Configure template details
- Name: A descriptive label such as “Manager approval” or “Security access review”
- Description: When this template should be used
- Workspaces: Which workspaces can use this template. Leave empty to make it available everywhere.
Add approval rounds
- Policy: Any can approve or All must approve
- Approvers: Specific users, user groups, or dynamic roles such as the requester’s manager
Save the template
Step 3: Create access policies
Access policies define who can request access and under what conditions. Each policy sets how requests are approved: not at all, by users or groups you pick, or through an approval template.Navigate to the Policies tab
Click New Policy
Configure policy details
- Name: A descriptive label such as “Standard access” or “Privileged access review”
- Description: When this policy should be used
- Eligible groups: Which user groups can request access under this policy. Leave empty to allow all users.
- Ineligible groups: Which user groups are explicitly excluded
- Approval: Select Approval template and pick the template you created in Step 2. Select Users or Groups for a single round of named approvers, or Not required only if requests under this policy should be approved automatically.
- Expiry: How long access granted under this policy lasts. See the table below.
- Business Justification: Toggle on if requesters must explain why they need access
Save the policy
Tiering by risk
Write your tiers down before you build the policies, because the tiers are what the rest of the configuration hangs off. Three cover most catalogs:Choosing an access duration
Step 4: Define access levels
Access levels represent the permission tiers within each application, such as Admin, Editor, or Viewer. Each level attaches an access policy and specifies how access is provisioned.Open an application
Go to the Access Levels tab
Click Add Access Level
Name and describe the level
Attach an access policy
Choose the provisioning method
Map to your identity provider group
Repeat for each permission tier
Choosing a provisioning method
Step 5: Configure the request form
The form is how users submit access requests, and it is also what your AI agent presents. Create one form for access requests and let the field configuration adapt it per requester.Create or open a form
Add an Application Select field
Add an Access Level Select field
Add a Business Justification field
Add a Duration field
Save and publish the form
Step 6: Enable agent-assisted requests
Once your form is published, you can enable your AI agent to handle access requests conversationally through Slack. The agent fills out and submits the form you built in Step 5, so it inherits the same eligibility filtering, approval routing, and provisioning. It has no separate path of its own.Open your agent
Go to the Identity tab
Enable Software Access Requests
Create agent rules for access request scenarios
When someone asks for access to a tool, present the Software Access Request form. Prefill the application and access level from what they said. Do not tell them who the approvers are, the request routing handles that.
Deploy the agent to your Slack channel
Step 7: Test the flow
Validate the complete setup before rolling it out to your organization.Submit a test request
Verify approval routing
Approve and verify provisioning
Confirm the entitlement is created
Test manual provisioning
After you launch
Watch three things through the first two weeks:- Provisioning failures. Check the Entitlements tab on your busiest applications. A failure here is silent from the requester’s side.
- Requests that skip the form. If people still DM for access, the agent rule is not firing or the catalog is missing the app they want.
- Approvals sitting. An approval nobody actions is worse than no approval. Add a reminder before you add more rounds.
Optional workflow automation
Your access provisioning setup is complete without any workflows. Add one only when you need behavior the policy and access level configuration cannot express:- Custom provisioning logic: set an access level’s provisioning method to Workflow and build a workflow that performs the provisioning steps, such as calling an external API or chaining several systems together.
- Post-provisioning follow-up: use the Entitlement Status Changed trigger to send a confirmation message, alert on provisioning failures, or notify a team when access is revoked.
Where teams get this wrong
A policy per application
A policy per application
Approvals on everything
Approvals on everything
Cataloging the estate instead of the requests
Cataloging the estate instead of the requests
Skipping the test with a real requester
Skipping the test with a real requester