Skip to main content
Serval has a a full Privileged Access Management (PAM) system that automates just in time access to applications. You can set up access policies, provisioning methods and profiles at the applicaiton, resource and role level.

Access Layers

LevelDescriptionExamples
ApplicationTop-level configuration. For certain applications (i.e. AWS), multiple instances of the same app can be configured separately.E.g., Okta, Slack, Github, Linear
ResourceA group, team, or other logical division within an application. Note: many applications will have a single “App Access” resource if there are no other sub-application resources that are requestable.E.g., Group, Channel, Repository, Team
RoleThe set of permissions a user is requesting within an application or resource.E.g., Member, Owner, Admin, Super Admin

Configuring Access

Key Components of Access Configuration

Navigating to Access Management in app.serval.com

  1. From the left sidebar, select a team.
  2. Click the Access tab.
  3. View all applications with access configured for the selected team.
Use Access Management to define access policies and provisioning methods for each role. An access policy must exist before Serval can grant access. Within Access Management, administrators must configure:
  1. Access Policies: Define rules for users’ access requests (e.g, duration, business justification, approval process)
  2. Provisioning Methods: Define how access is technically granted to the role (e.g., manual task, linked SCIM group, custom workflow, direct provisioning via API).
  3. Access Profiles: Define which groups of individuals can request access to a role, resource or application.
While in some cases workflows can also manage access, all role-based provisioning should be configured in Serval’s dedicated Access Management tool. Serval enforces security and permissioning controls at this layer, with built-in logging / reporting, and automatic handling for just-in-time provisioning and deprovisioning.
Configure Role

Configure Role

1. Configuring Access Policies

Creating a New Access Policy

  1. Select Create policy.
  2. In the Create access policy window:
    • Policy Name: enter a clear, descriptive name (e.g., General Access).
    • Policy Description: describe what the policy covers.
    • Max Access Length: choose Indefinite or set a time limit.
    • Require business justification: toggle Yes if users must provide a reason.
    • Require confirmation for requests made on behalf of others: toggle Yes if needed.
    • Require approval from one of: add approvers who must approve requests under this policy.
  3. Click Create policy to save and reuse across roles.
Access policies define how users can request access for any application, resource, or role. Policies control:
  • Maximum access length: whether access is indefinite or time-bound.
  • Business justification: whether users must provide a reason for their request.
  • Request confirmation: whether requests made on behalf of others must be confirmed.
  • Approval flow: which approvers must authorize the request.
Create access policy dialog

Create Access Policy

2. Configuring Provisioning Methods

Admin can configure one of the following methods for provisioning access when access is requested.
Example: Jeff requests editor access to a Linear group. If manual provisioning is used, the assignee adds Jeff as an editor in Linear. If the policy allows 12-hour temporary access, Serval assigns a ticket to grant access and a second ticket 12 hours later to remove it.
Example: Access to Linear can be provisioned by adding the user to the appropriate Okta group. When the access time limit expires, the user is automatically removed
  • Simple Example: Access to a GitHub repository is managed by adding or removing the user from a pull request list that controls provisioning for that resource.
  • Multi-Step Example: Open a GitHub PR to update Terraform for group membership, but first create a Linear task to purchase a license; once marked complete, the workflow auto-merges the PR and validates access.
Example: Automatically import all Ramp roles into Serval
Serval’s help desk agent automatically understands what applications have been configured for just-in-time access. Once you have set up this automation, the helpdesk will understand how to provision JIT access without additional workflows or guidance (unless for a custom case.)

3. Setting Access Profiles

Configure access profiles with name, description, associated Serval group and associated IdP role to limit which users can request access to this role, providing an additional layer of security.
Direct provisioning

Build Access Profile

Scenarios: Configuring Access at the Application, Resource or Role Level 

Application Example

Scenario: Configure access to Ramp for company-wide access.

  • Name: Ramp - Standard
  • Description: Standard user access across the company.
  • Policy: Indefinite timeline, no approver needed.
  • Provisioning Method: Through Ramp user Group in Okta

Resource Example

Scencario: Configure access to Ramp for company-wide access.

  • Name: Figma - Brand Assets File
  • Description: View access to the brand assets design file
  • Policy: Indefinite access, no approval needed
  • Provisioning Method: Provisioned via Figma Editor Group in Okta.

Role Example

Scenario: Configure a GitHub Administrator role for elevated repository and organization permissions.

  • Name: Ramp - Standard
  • Description: Standard user access across the company.
  • Policy: Indefinite timeline, no approver needed.
  • Provisioning Method: Through Ramp user Group in Okta

Users Requesting Access

Users can request access either:
  1. Request access in natural language through Serval in the same way they submit any other ticket (e.g., via Slack, Teams or any help desk portal)
User requesting access in Slack

Request access via the help desk

  1. Navigate to Access > Select an app from the list > Select access type and click the “Request” button in the top right corner > Provide additional details and click “Request access”
Request access in-app

Request access in app.serval.com