# 4.15.4 ZTrust (SSP) – Self Role Request and Approval Workflow

The ZTrust Self-Service Portal (SSP) provides users with a centralized interface to view and request access to roles assigned within the system.

1. #### View Assigned Roles

   Users can easily review the roles currently assigned to their account. The SSP provides two perspectives for better visibility:

   * **Application / Client-based View**\
     Users can see roles assigned to them for specific applications or clients.
   * **Realm-based View**\
     Users can view roles that are assigned at the realm level, which apply across the environment.

   This helps users clearly understand what permissions they currently have and where they apply.
2. **Request Additional Roles**

   If a user requires access to a role that is not currently assigned, they can submit an access request directly through the Self-Service Portal.

   The portal supports requesting both:

   * **Client / Application Roles** – Roles specific to an application.
   * **Realm Roles** – Roles that apply across the entire realm.

**Prerequisites**

Before using the Role Access and Request feature in the ZTrust Self-Service Portal (SSP), ensure the following configurations are completed:

1. **SMTP Configuration**
   1. SMTP must be configured in the system to enable email communication.
   2. This is required for sending notifications related to role requests and approvals.
2. **Role Availability**

   1. The **realm or application (client)** must have roles configured.
   2. Only roles that exist in the system can be requested through the SSP.

**Step-by-Step Guide**

You can access the Self-Service Portal (SSP) at:

<mark style="color:$success;">https\://{your-host-url}/realms/{your-realm-name}/account</mark>

Replace {your-host-url} with your ZTrust server base URL.

Replace {your-realm-name} with the actual realm name configured in ZTrust.

### Step 1: Login to the Portal

1. Open the ZTrust Self-Service Portal (SSP).
2. Login using your registered credentials.
3. After successful authentication, the SSP dashboard will be displayed.

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FPNDLh11sgAM7S1AifvcZ%2Funknown.png?alt=media&#x26;token=d0b933e8-faf4-4130-9273-230f8a9fe748" alt=""><figcaption></figcaption></figure>

### Step 2: Navigate to Applications

1. From the left-side navigation menu, select Applications. This will navigate you to the Applications section.
2. This will navigate you to the Applications section.

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2Fm4G5uuD13fKuxavQfJGD%2Funknown.png?alt=media&#x26;token=2fbc7778-34ea-490c-8cb8-6bbc67aa5321" alt=""><figcaption></figcaption></figure>

In this section, you will see the list of applications integrated with ZTrust within the realm that you have access to.

### Step 3: Select an Application

1. The application list displays all applications available to the user.
2. The SSP will also indicate which application is currently being used.
3. Select any application from the list.

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FDob0kXm7EQluEd025sdL%2Funknown.png?alt=media&#x26;token=07926e1d-9e04-4746-bf27-e07cf6e6e3a5" alt=""><figcaption></figcaption></figure>

After selecting an application, a popup window will appear displaying the role details for that application.

### Step 4: View Role Types

Inside the popup, you will see two types of roles:

* **Realm Roles**
* **Client Roles**

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2F0U5Ju0UE0IPHWHxQoKdQ%2Funknown.png?alt=media&#x26;token=1c47cfa4-a575-463e-aa34-37728eadbd54" alt=""><figcaption></figcaption></figure>

For this example, select Realm Roles.

### Step 5: View Available and Assigned Roles

Under the selected role type, two sections will be displayed:

#### Available Roles

These are the roles that exist in the realm but are not currently assigned to you.

#### Assigned Roles

These are the roles that are already assigned to you, meaning you currently have access to them.

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FC5dAVOk5bqiYRKwoGfca%2Funknown.png?alt=media&#x26;token=e2c45619-3694-4c6f-be53-603d8fb7aa53" alt=""><figcaption></figcaption></figure>

### Step 6: Request a New Role

If you require access to a role that is not assigned:

1. Click Request a New Role.

   <figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FJEqkAANMNJ0sjdfDs3LV%2Funknown.png?alt=media&#x26;token=5afc1622-c3f9-4d30-be5d-e22f01e1878d" alt=""><figcaption></figcaption></figure>
2. Select the role you want to request from the available roles list.
3. Provide a reason for requesting the role.

   <figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FxdjMzicjBbxQUm0bv5QC%2Funknown.png?alt=media&#x26;token=db72435e-cc94-453c-965c-b1eabe98c6fc" alt=""><figcaption></figcaption></figure>
4. Click Submit Request.

### Step 7: Role Request Submitted

Once the request is submitted:

1. Your role request is successfully sent from the Self-Service Portal.

   <figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FMSIiaoAsheEW2Fw5AsKm%2Funknown.png?alt=media&#x26;token=9e6dca01-89f2-4833-9fb7-c52e166e0b32" alt=""><figcaption></figcaption></figure>
2. The request will be reviewed by administrators or approvers.

### Step 8: Role Request – Pending State

After submitting a role request, the requested role will move to a Requested state.

* The Requested state indicates that the request has been successfully submitted and is waiting for administrator review.
* While the request is in the Requested state, the same role cannot be requested again.
* The role will appear as non-selectable (disabled) in the role request list until the administrator approves or rejects the request.

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2Fi4DMdQbu31fv1oXBUhFG%2Funknown.png?alt=media&#x26;token=8548cd06-6bd1-44c9-b12b-a06b2776e988" alt=""><figcaption></figcaption></figure>

### Important Notes

* Users cannot submit duplicate requests for the same role while it is pending.
* Once the administrator approves or rejects the request:
  * If approved, the role will appear under Assigned Roles.
  * If rejected, the user may submit a new request again if required.

### Admin Approval Flow

### Step 9: Role Request Notification to Admin

After a user submits a role request from the ZTrust Self-Service Portal (SSP), the administrator receives an email notification containing the request details.

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2FPmeMTgdMke8qEitoAfIF%2Funknown.png?alt=media&#x26;token=3640e506-7e00-4769-b44f-ca77f921f84e" alt=""><figcaption></figcaption></figure>

This email provides the administrator with the necessary information about the requested role and the reason provided by the user.

### Step 10: Admin Reviews the Request

1. The administrator clicks the Admin Console link provided in the email.
2. This redirects the administrator to the ZTrust Admin Console.
3. The admin can view:
   1. The requested user
   2. The requested role
   3. The reason provided by the user
   4. The current request status

<figure><img src="https://1778922777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3EUK5AUZv0UVaI5S0CTM%2Fuploads%2Fz0NNjWZani1PcvVQfxZ8%2Funknown.png?alt=media&#x26;token=8c6fc07c-e6f9-46f8-bf49-aa0542d7c237" alt=""><figcaption></figcaption></figure>

The admin will be presented with two actions:

* **Approve**
* **Deny**

### Step 11: Approve the Request

If the administrator selects Approve:

* The requested role will be assigned to the user.
* The user will now have access to the approved role.
* The request status will be updated to Approved.
* The user will receive an email notification confirming the approval.

### Step 12: Deny the Request

If the administrator selects Deny:

* The requested role will not be assigned to the user.
* The request status will be updated to Rejected.
* The user will receive an email notification informing them that the request has been rejected.

After rejection, the user may submit a new request again if access is still required.

### Important Note

All role request activities and responses (including request submission, approval, and rejection) are communicated through email notifications to ensure transparency and proper tracking of access requests.
