diff --git a/docs/admin/admin-ui/auth-server-interaction.md b/docs/admin/admin-ui/auth-server-interaction.md index 5ac26cb630..d0ee54f33c 100644 --- a/docs/admin/admin-ui/auth-server-interaction.md +++ b/docs/admin/admin-ui/auth-server-interaction.md @@ -14,9 +14,9 @@ When accessing the Gluu Flex Admin UI through a web browser, the following steps 1. The user accesses the Gluu Flex Admin UI frontend through a web browser. 2. The frontend requests the Admin UI backend to retrieve Admin UI configuration from Janssen persistence. The [Admin UI configuration](./configuration.md) includes OIDC client details for accessing the Auth Server, OIDC client details for accessing the Token Server, OIDC client details for accessing the License APIs, and license metadata. It's important to note that **the Admin UI backend is implemented as a Jans Config API plugin**. -3. The frontend calls the Admin UI backend API (`/isConfigValid`) to validate the license configuration in persistence, essentially verifying the validity of the OIDC client used to access the License APIs. If it is not valid, the same API tries to register a new OIDC client using the SSA uploaded during installation. In case the SSA is invalid, the Admin UI shows a page to upload a new valid SSA. To minimize network calls to account.gluu.org, `/isConfigValid` verifies the OIDC client validity only at a set interval (default: 30 days). Otherwise, `/isConfigValid` checks if the required OIDC client for License APIs exists in the Admin UI configuration (persistence). -4. After validating the OIDC client, the Admin UI calls the backend API (/isActive) to check if a valid license is present in the license configuration. It verifies whether the license key and its details are valid and not expired. At regular intervals (default is 30 days), the Admin UI backend calls the SCAN API (/scan/license/isActive) to verify license validity and sync its details into the license configuration (persistence). -5. If a valid license is not present, the frontend calls the backend API (/retrieve) to retrieve the license for the user via the SCAN API (/scan/license/retrieve). The license can only be retrieved from SCAN if the user has subscribed to the Admin UI license in Agama Lab. +3. The frontend calls the Admin UI backend API (`/v1/license/isConfigValid`) to validate the license configuration in persistence, essentially verifying the validity of the OIDC client used to access the License APIs. If it is not valid, the same API tries to register a new OIDC client using the SSA uploaded during installation. In case the SSA is invalid, the Admin UI shows a page to upload a new valid SSA. To minimize network calls to account.gluu.org, `/v1/license/isConfigValid` verifies the OIDC client validity only at a set interval (default: 30 days). Otherwise, `/v1/license/isConfigValid` checks if the required OIDC client for License APIs exists in the Admin UI configuration (persistence). +4. After validating the OIDC client, the Admin UI calls the backend API (/v1/license/isActive) to check if a valid license is present in the license configuration. It verifies whether the license key and its details are valid and not expired. At regular intervals (default is 30 days), the Admin UI backend calls the License API (/v1/license/isActive) in Agama Lab to verify license validity and sync its details into the license configuration (persistence). +5. If a valid license is not present, the frontend calls the backend API (/v1/license/retrieve) to retrieve the license for the user via the Agama Lab's License API (/v1/license/retrieve). The license can only be retrieved if the user has subscribed to the Admin UI license in Agama Lab. 6. If the user has not already subscribed to a valid license in Agama Lab, the Admin UI displays a page to generate a 30-day trial license. The user cannot generate another trial license after expiry of a generated trial license and will need to subscribe to the Admin UI license in Agama Lab to access the user interface. 7. After verification of valid license the frontend initiates the Authorization Code Flow by redirecting the user to the login page. @@ -48,16 +48,16 @@ else license client invalid end Gluu Flex Admin UI->>Admin UI Backend: /license/isActive Note over Gluu Flex Admin UI,Admin UI Backend: validate license -Admin UI Backend->>SCAN: /scan/license/isActive +Admin UI Backend->>Agama Lab: /license/isActive alt license active - SCAN->>Admin UI Backend: true + Agama Lab->>Admin UI Backend: true else license inactive / not present - SCAN->>Admin UI Backend: false - Admin UI Backend->>SCAN: /retrieve + Agama Lab->>Admin UI Backend: false + Admin UI Backend->>Agama Lab: /retrieve alt license subscribed - SCAN->>Admin UI Backend: license + Agama Lab->>Admin UI Backend: license else license not subscribed - SCAN->>Admin UI Backend: false + Agama Lab->>Admin UI Backend: false Admin UI Backend->>Gluu Flex Admin UI: false Gluu Flex Admin UI->>Browser: Screen to generate Trial license end diff --git a/docs/admin/admin-ui/auth-server-menu.md b/docs/admin/admin-ui/auth-server-menu.md index 2ec60e8dca..00e56913f0 100644 --- a/docs/admin/admin-ui/auth-server-menu.md +++ b/docs/admin/admin-ui/auth-server-menu.md @@ -237,6 +237,8 @@ assurance or the context of the authentication process used for user authenticat This page allows the administrator to view all enabled ACRs and select the default ACR, which refers to the predefined or default authentication assurance when no specific ACR value is requested or specified. +This menu also address the deployment of Agama projects on the Janssen Auth Server either by uploading the untampered Agama project packages (with .gama extension) or by adding a Agama Community project. + ![image](../../assets/admin-ui/authn.png) ## Config API Properties @@ -250,15 +252,3 @@ details and the administrator can revoke the sessions of the selected user. ![image](../../assets/admin-ui/sessions.png) - diff --git a/docs/admin/admin-ui/configuration.md b/docs/admin/admin-ui/configuration.md index eb83e4bd8d..3e4ee4952e 100644 --- a/docs/admin/admin-ui/configuration.md +++ b/docs/admin/admin-ui/configuration.md @@ -69,7 +69,6 @@ The information is stored in json format with following attributes. |Attribute Name|Description| |--------------|-----------| |uiConfig|Object with UI configuration attributes| -|sessionTimeoutInMins|The admin UI will auto-logout after a period of inactivity defined in this field.| uiConfig @@ -80,7 +79,6 @@ uiConfig |cedarlingLogType|Set embeded Cedarling log-type in Admin UI. The allowed values are `off` and `std_out`.| |auiPolicyStoreUrl|Path of Policy Store archive file| |auiDefaultPolicyStorePath|The path of the default Policy Store json file on Config Api pod.| -|cedarlingPolicyStoreRetrievalPoint|The retrieval point of the Policy Store. The allowed values are `default` and `remote`.| ### OIDC Client Details for License Server @@ -105,63 +103,103 @@ The information is stored in json format with following attributes. |licenseConfig| Object with License configuration details | |ssa| SSA used to register OIDC client to access license APIs | |scanLicenseApiHostname| SCAN License server hostname | +|licenseKey|License-key to access Admin UI| |licenseHardwareKey| Hardware key (org_id) to access license APIs | |intervalForSyncLicenseDetailsInDays| The Admin UI backend syncs license details into the configuration (persistence) after the set interval (default: 30 days). | +|licenseValidUpto|Expiry date to the subscribed flex license| +|licenseDetailsLastUpdatedOn|The date on which the license details were synced from Agama Lab to the Admin UI's License Configuration| +|productCode|The product code of the issued license at [LicenseSpring](https://licensespring.com/)| +|licenseType|The license type of the issued license at [LicenseSpring](https://licensespring.com/) +|licenseActive|Is the license configured currently active?| +|licenseExpired|Is the license configured expired?| +|licenseMAUThreshold|The allowed monthly active users for issued license| +|oidcClient|Object with details of OIDC client to access license API| + + **Sample configuration stored in persistence** ```text + { "oidcConfig": { "auiWebClient": { + "introspectionEndpoint": null, + "tokenEndpoint": null, "redirectUri": "https://your.host.com/admin", - "postLogoutUri": "https://your.gost.com/admin", + "postLogoutUri": "https://your.host.com/admin", "frontchannelLogoutUri": "https://your.host.com/admin/logout", "scopes": [ "openid", + "https://jans.io/auth/ssa.admin", + "email", "profile", - "user_name", - "email" + "offline_access", + "jans_stat" ], "acrValues": [ - "basic" + "simple_password_auth" ], "opHost": "https://your.host.com", - "clientId": "2001.aaf0b8eb-a82e-4798-b1a0-e007803a6568", - "clientSecret": "GGO4t1uixrTpl4Rizt3zag==". + "clientId": "xxxx.xxxxxxx-xxxx-xxxx-xxxx-xxxxxx", + "clientSecret": "xxxxxxxxxxxxx", "additionalParameters": [] }, "auiBackendApiClient": { + "introspectionEndpoint": "https://your.host.com/jans-auth/restv1/introspection", "tokenEndpoint": "https://your.host.com/jans-auth/restv1/token", + "redirectUri": null, + "postLogoutUri": null, + "frontchannelLogoutUri": null, "scopes": [ "openid", - "profile", - "user_name", - "email" + "https://jans.io/auth/ssa.admin" ], + "acrValues": null, "opHost": "https://your.host.com", - "clientId": "2001.aaf0b8eb-a82e-4798-b1a0-e007803a6568", - "clientSecret": "GGO4t1uixrTpl4Rizt3zag==" + "clientId": "xxxx.xxxxxxx-xxxx-xxxx-xxxx-xxxxxx", + "clientSecret": "xxxxxxxxxxxxx", + "additionalParameters": null } }, - "uiConfig": { - "sessionTimeoutInMins": 30, - "allowSmtpKeystoreEdit": true, - "cedarlingLogType":"off", - "auiPolicyStoreUrl": "", - "auiDefaultPolicyStorePath": "./custom/config/adminUI/policy-store.json", - "cedarlingPolicyStoreRetrievalPoint": "default" - }, "licenseConfig": { - "ssa": "...ssa in jwt format...", - "scanLicenseApiHostname": "https://cloud-dev.gluu.cloud", - "licenseKey": "XXXX-XXXX-XXXX-XXXX", - "licenseHardwareKey": "github:ghUsername", + "ssa": "eyJraWQiOiJzc2FfN2IyMGM1MDYtMDlhNi00MTU1LWF....", + "scanLicenseApiHostname": "https://license-server-hostname.gluu.org", + "licenseKey": "xxxx.xxxxxxx-xxxx-xxxx-xxxx-xxxxxx", + "licenseHardwareKey": "xxxx.xxxxxxx-xxxx-xxxx-xxxx-xxxxxx", + "licenseValidUpto": "2026-07-07", + "licenseDetailsLastUpdatedOn": "2026-06-18", + "productCode": "adminui001", + "productName": "Gluu Admin UI", + "licenseType": "time-limited", + "customerFirstName": "", + "customerLastName": "", + "customerEmail": "trial_request", + "companyName": "", + "licenseActive": true, + "licenseExpired": false, + "licenseMAUThreshold": 1000, + "intervalForSyncLicenseDetailsInDays": 30, "oidcClient": { - "opHost": "https://account-dev.gluu.cloud", - "clientId": "36a43e2b-a77b-4e9c-a966-a9d98af1665c", - "clientSecret": "211188d8-a2d8-4562-ab53-80907c1bb5ba" + "introspectionEndpoint": null, + "tokenEndpoint": null, + "redirectUri": null, + "postLogoutUri": null, + "frontchannelLogoutUri": null, + "scopes": null, + "acrValues": null, + "opHost": "https://account-server-hostname.gluu.org", + "clientId": "xxxx.xxxxxxx-xxxx-xxxx-xxxx-xxxxxx", + "clientSecret": "xxxx.xxxxxxx-xxxx-xxxx-xxxx-xxxxxx", + "additionalParameters": null } + }, + "uiConfig": { + "sessionTimeoutInMins": 31, + "allowSmtpKeystoreEdit": true, + "cedarlingLogType": "off", + "auiPolicyStoreUrl": "", + "auiDefaultPolicyStorePath": "./custom/config/adminUI/policy-store.cjar" } } ``` diff --git a/docs/admin/admin-ui/home.md b/docs/admin/admin-ui/home.md index 56a630cce7..643008ebbf 100644 --- a/docs/admin/admin-ui/home.md +++ b/docs/admin/admin-ui/home.md @@ -44,7 +44,7 @@ The dashboard has a bar graph showing month-wise access-token with grant-type `c ### Localization and Theme selection -Admin UI supports localization. The default language is English. The other supported languages are French and Portuguese. A new preferred language can be selected from the top right corner of the dashboard which will convert the labels and tooltip to the selected language. +Admin UI supports localization. The default language is English. The other supported languages are French, Spanish and Portuguese. A new preferred language can be selected from the top right corner of the dashboard which will convert the labels and tooltip to the selected language. ![image](../../assets/admin-ui/localization.png) @@ -83,6 +83,8 @@ The Gluu Flex Admin UI provides a user-friendly interface for managing various U - **List paging size:** This field allows to define the default paging size for all search pages within the Admin UI. - **Config API URL:** The read-only URL of the Jans Config API is used by the Admin UI for interaction. - **Admin UI Session Timeout (In Minutes):** This field determines the maximum idle time allowed before a user is automatically logged out of the Admin UI. +- **Cedarling Log enabled?:** This switch enables or disables Cedarling logs in the browser console. +- **Admin UI Logging Level:** This field is used to set frontend log level on browser console. - **Admin UI authentication method (ACR):** This dropdown enables user to select the default authentication method to be used in the Admin UI. - **Custom Parameters (for authentication):** The custom parameters allow you to pass additional information to the authorization server during Admin UI authentication. @@ -90,74 +92,18 @@ The Gluu Flex Admin UI provides a user-friendly interface for managing various U ## Security -The features like managing Admin UI Roles and Capabilities and Mappings are placed under the Security menu. These features will be discussed one by one below: +Features such as uploading a new policy store to manage access control and checking role-to-scope mappings in the Admin UI are covered under the Security menu. ### GUI Access Control -The administrator can control view/edit/delete access of users of Gluu Flex Admin UI by adding or removing the -appropriate Permissions mapped to the user's Admin UI Role. For e.g. if the **read** Permission of OIDC -clients (`https://jans.io/oauth/config/clients.readonly`) is not mapped to the logged-in user's Role, the contents of -the page showing OIDC client records will not be visible to the user. In the same way, if the write and delete -Permissions of OIDC clients are not mapped then the user will not be able to edit or delete any OIDC client record. - -### Admin UI Roles - -The logged-in administrator can create, edit or delete Admin UI Roles using this Page. The Admin UI Role -can be assigned to the user using the [User Management](./user-management-menu.md) feature of this GUI. After installation, -the following Admin UI Roles can be seen on Admin UI: api-viewer, api-editor, api-manager and api-admin. The default -user i.e. `admin` is assigned with api-admin role. A user with one or more Admin UI Role(s) assigned will be able to -log into Gluu Flex Admin UI. - -![image](../../assets/admin-ui/role.png) +This topic is covered in detail [here](./access-control.md). New Admin UI roles can be added by introducing the corresponding policies in the policy store. These roles can then be assigned to users through the [User Management](./user-management-menu.md) feature of the Admin UI. After installation, the Admin UI uses a default policy store generated by the installer for access control. This policy store includes the `admin` role, and the default user (admin) is assigned that role. ### Capabilities -Gluu Flex Admin UI uses [Config API](https://github.com/JanssenProject/jans/tree/main/jans-config-api) to manage and -configure the Jans Auth server.The user interface allows to add, edit and delete the Permissions or Capabilities used to access the APIs (i.e. rest APIs used by Admin UI). - -![image](../../assets/admin-ui/permission.png) - -### Role-Permission Mapping - -The administrator can map the Admin UI Role with one or more Capabilities using the Role-Permission Mapping page. The Role mapped with Capabilities can be then assigned to the user to allow access to the corresponding operations of the GUI. +In Cedarling, a capability represents an action (such as view, edit, or delete) that a principal is authorized to perform on a resource. In the context of Admin UI, the resource is an Admin UI feature. We can introduce Cedarling policies in the policy store to manage capabilities of Admin UI role. The policy store can be uploaded through the [Cedarling Configuration](./configuration.md#cedarling-configuration) page to control access to Admin UI features. After the Policy Store file is uploaded, the backend parses the Policy Store to determine the roles and the role-to-scope mappings. The Role-Permission Mappings can be viewed under the Security menu. ![image](../../assets/admin-ui/role-permission.png) -The below table lists the Capabilities used in Admin UI: - -| Capability | Description | -| ------------------------------------------------------------------------------------------- | ------------------------------------- | -| `https://jans.io/oauth/config/attributes.readonly` | View Person attributes | -| `https://jans.io/oauth/config/attributes.write` | Add/Edit Person attributes | -| `https://jans.io/oauth/config/attributes.delete` | Delete Person attributes | -| `https://jans.io/oauth/config/scopes.readonly` | View the Scopes | -| `https://jans.io/oauth/config/scopes.write` | Add/Edit Scopes | -| `https://jans.io/oauth/config/scopes.delete` | Delete Scopes | -| `https://jans.io/oauth/config/scripts.readonly` | View the Scripts | -| `https://jans.io/oauth/config/scripts.write` | Add/Edit Scripts | -| `https://jans.io/oauth/config/scripts.delete` | Delete Scripts | -| `https://jans.io/oauth/config/openid/clients.readonly` | View the Clients | -| `https://jans.io/oauth/config/openid/clients.write` | Add/Edit Clients | -| `https://jans.io/oauth/config/openid/clients.delete` | Delete Clients | -| `https://jans.io/oauth/config/smtp.readonly` | View SMTP configuration | -| `https://jans.io/oauth/config/smtp.write` | Edit SMTP configuration | -| `https://jans.io/oauth/config/smtp.delete` | Remove SMTP configuration | -| `https://jans.io/oauth/config/logging.readonly` | View Auth server log configuration | -| `https://jans.io/oauth/config/logging.write` | Edit Auth server log configuration | -| `https://jans.io/oauth/config/database/ldap.readonly` | View LDAP persistence configuration | -| `https://jans.io/oauth/config/database/ldap.write` | Edit LDAP persistence configuration | -| `https://jans.io/oauth/config/database/ldap.delete` | Delete LDAP persistence configuration | -| `https://jans.io/oauth/config/jwks.readonly` | View JWKS | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/role.readonly` | View Admin UI Roles | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/role.write` | Edit Admin UI Roles | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/role.delete` | Delete Admin UI Roles | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/permission.readonly` | View Admin UI Permissions | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/permission.write` | Edit Admin UI Permissions | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/permission.delete` | Delete Admin UI Permissions | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/rolePermissionMapping.readonly` | View Role-Permission Mapping | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/rolePermissionMapping.write` | Edit Role-Permission Mapping | -| `https://jans.io/oauth/jans-auth-server/config/adminui/user/rolePermissionMapping.delete` | Delete Role-Permission Mapping | - ## Webhooks Gluu Flex Admin UI uses webhooks to automate custom business logic during create, update, and delete operations (e.g., when a new user is created). Administrators can map webhooks to specific features and events, enabling dynamic and extensible workflows. diff --git a/docs/admin/admin-ui/introduction.md b/docs/admin/admin-ui/introduction.md index 531d7e0789..542bf7e31d 100644 --- a/docs/admin/admin-ui/introduction.md +++ b/docs/admin/admin-ui/introduction.md @@ -16,29 +16,76 @@ The above diagram explains the interaction between various dependent components. ### Admin UI Frontend -This user facing GUI has been developed using [React.js](https://react.dev/) and [Redux](https://redux.js.org/) is used for state management. The Admin UI utilizes an OpenAPI JavaScript client for Jans Config API, facilitating API calls to Jans Config API endpoints. +This user-facing Frontend has been developed using the following: -The GUI utilizes popular libraries such as [Material-UI](https://mui.com/material-ui/), Axios, [Formik](https://formik.org/), etc. [Webpack](https://webpack.js.org/) is responsible for compiling and bundling the application, optimizing its performance, and generating the necessary production files. The Admin UI bundle is hosted on an **Apache HTTP server**, which is included as a component with the Janssen server installation. This setup ensures that the GUI is readily accessible and efficiently served to users. +#### UI Framework & Styling -### Admin UI Backend +- **React 18** — core UI framework +- **MUI (Material UI) v9** — component library (@mui/material, @mui/icons-material, @mui/x-date-pickers) +- **Bootstrap 5** — utility CSS +- **Emotion (@emotion/react, @emotion/styled)** — CSS-in-JS, used by MUI +- **tss-react** — MUI-compatible typed style system +- **@material-table/core** — data tables -The GUI utilizes a dedicated Java backend to handle specific tasks, such as reading the Admin UI configuration from persistence, managing Admin UI roles and permission mapping in configuration, performing audit logging, and making calls to license APIs on SCAN. The Jans Config API follows a flexible plugin architecture, allowing the addition of new APIs through extensions known as plugins, without the need to modify the core application. The Admin UI Backend has been incorporated into the Jans Config API as a plugin to address Admin UI-specific tasks. +#### State Management & Data Fetching -## Installation +- **Redux Toolkit + react-redux** — global state management +- **redux-persist** — persists Redux state across reloads +- **TanStack Query (React Query) v5** — server state / API data fetching +- **Axios** — HTTP client + +#### Routing + +- **React Router DOM v7** + +#### Forms & Validation + +- **Formik** — form state management +- **Yup** — schema-based form validation + +#### Authentication/ Authorization + +- **@openid/appauth** — OpenID Connect / OAuth 2.0 client-side auth +- **@janssenproject/cedarling_wasm** — Cedarling WASM module for policy-based authorization (Cedar policy engine) + +#### Internationalisation -Gluu Flex can be installed using [VM installer](../../install/vm-install/vm-requirements.md) or using [Rancher](../recipes/getting-started-rancher.md) on Cloud Native. +- **i18next + react-i18next** — i18n support -During installation, we need to provide a Software Statement Assertion (SSA) which is used by Admin UI to register an OIDC client to access license APIs. Check the following [guide](../../install/flex/prerequisites.md#software-statement-assertions) for the steps to issue SSA from the [Agama Lab](https://cloud.gluu.org/agama-lab) web interface. +#### Utilities -![image](../../assets/admin-ui/install-ssa.png) +- **Lodash** — general utility functions +- **Dayjs** — date/time handling +- **Recharts** — charts (used for MAU dashboard) +- **react-toastify** — toast notifications +- **animejs** — animations +- **clsx** — conditional class names + +#### Build & Tooling + +- **Vite v8** — build tool +- **TypeScript 6** +- **Orval** — generates typed API client from OpenAPI spec +- **Jest + React Testing Library** — unit/component testing +- **ESLint + Prettier** — linting and formatting + +### Admin UI Backend + +The GUI utilizes a dedicated Java backend to handle specific tasks, such as reading the Admin UI configuration from persistence, managing Admin UI roles and permission mapping in configuration, performing audit logging, and making calls to license APIs on Agama Lab. The Jans Config API follows a flexible plugin architecture, allowing the addition of new APIs through extensions known as plugins, without the need to modify the core application. The Admin UI Backend has been incorporated into the Jans Config API as a plugin to address Admin UI-specific tasks. + +## Installation + +Gluu Flex can be installed using [VM installer](../../install/vm-install/vm-requirements.md) or using [Helm Deployments](../../install/helm-install/README.md) on Cloud Native. ## Gluu Flex License -After installation, the Admin UI can be accessed at `https://hostname/admin` (the hostname is provided during setup). Access to this web interface is granted only after subscribing to the Admin UI license from Agama Lab. +After installation, the Admin UI can be accessed at `https://hostname/admin` (the hostname is provided during setup). Access to this web interface is granted only after issuing a Software Statement Assertion (SSA) and subscribing to the Admin UI license from [Agama Lab](https://cloud.gluu.org/agama-lab). The SSA issued from the Agama Lab is used by Admin UI to register an OIDC client to access license APIs. Follow this [guide](../../install/flex/prerequisites.md) for detailed steps. + +![Upload SSA](../../assets/admin-ui/upload-license.png) There is a provision to generate a 30-day free trial license of Gluu Flex which will help users to enter and understand this web interface. -![image](../../assets/admin-ui/trial-license.png) +![Issue Trial license page](../../assets/admin-ui/trial-license.png) After license activation, the user can log into Gluu Flex Admin UI using the default username (`admin`) and the `password` (the admin password provided during installation). diff --git a/docs/admin/admin-ui/left-nav-menu.md b/docs/admin/admin-ui/left-nav-menu.md index 50fb2e42f7..95dc59e72a 100644 --- a/docs/admin/admin-ui/left-nav-menu.md +++ b/docs/admin/admin-ui/left-nav-menu.md @@ -22,5 +22,4 @@ Gluu Flex Admin UI has the following main menus on the left navigation: - [SMTP](./smtp-menu.md) - [SCIM](./scim-menu.md) - [FIDO](./fido-menu.md) -- [SAML](./saml-menu.md) - [Jans Lock](./jans-lock-menu.md) diff --git a/docs/admin/admin-ui/scripts.md b/docs/admin/admin-ui/scripts.md index 650935735c..ca44bc0f44 100644 --- a/docs/admin/admin-ui/scripts.md +++ b/docs/admin/admin-ui/scripts.md @@ -11,9 +11,6 @@ tags: # Custom Scripts - -The Custom Scripts page provides a list of scripts. Easily add, update, and delete scripts to control and modify various authentication methods. - ![image](../../assets/admin-ui/admin-ui-custom-script.png) [Custom Scripts](https://docs.jans.io/stable/janssen-server/developer/scripts/) are used to implement custom business logic for authentication, authorization, client registration, cache refresh, scopes, token revocation, etc. @@ -21,7 +18,6 @@ The Custom Scripts page provides a list of scripts. Easily add, update, and dele The Janssen Authentication Server leverages custom scripts, which, when implemented, can facilitate complex business workflows without changing the server code. Gluu Flex Admin UI provides the interface to add/edit/delete custom scripts. ![image](../../assets/admin-ui/admin-ui-custom-script-1.png) -![image](../../assets/admin-ui/admin-ui-custom-script-2.png) ## Script properties diff --git a/docs/admin/admin-ui/user-claims.md b/docs/admin/admin-ui/user-claims.md index 82daa323ff..7bb9e5df34 100644 --- a/docs/admin/admin-ui/user-claims.md +++ b/docs/admin/admin-ui/user-claims.md @@ -13,7 +13,6 @@ tags: [User Claims](https://docs.jans.io/stable/janssen-server/auth-server/openid-features/user-claims/) are individual pieces of user data, like uid, email, firstName, etc., that are required by applications in order to identify a user. The Admin UI allows administrators to manage these user claims effectively. ![image](../../assets/admin-ui/admin-ui-user-claims-1.png) -![image](../../assets/admin-ui/admin-ui-user-claims-2.png) The following fields are supported in the Person (attribute) creation form: diff --git a/docs/assets/admin-ui/admin-ui-Memcached.png b/docs/assets/admin-ui/admin-ui-Memcached.png index 2699272d6f..3816c182b3 100644 Binary files a/docs/assets/admin-ui/admin-ui-Memcached.png and b/docs/assets/admin-ui/admin-ui-Memcached.png differ diff --git a/docs/assets/admin-ui/admin-ui-add-user.png b/docs/assets/admin-ui/admin-ui-add-user.png index ebf663346d..2325727850 100644 Binary files a/docs/assets/admin-ui/admin-ui-add-user.png and b/docs/assets/admin-ui/admin-ui-add-user.png differ diff --git a/docs/assets/admin-ui/admin-ui-custom-script-1.png b/docs/assets/admin-ui/admin-ui-custom-script-1.png index 0e140e1047..e5a311db70 100644 Binary files a/docs/assets/admin-ui/admin-ui-custom-script-1.png and b/docs/assets/admin-ui/admin-ui-custom-script-1.png differ diff --git a/docs/assets/admin-ui/admin-ui-custom-script-2.png b/docs/assets/admin-ui/admin-ui-custom-script-2.png deleted file mode 100644 index 63aaa1212c..0000000000 Binary files a/docs/assets/admin-ui/admin-ui-custom-script-2.png and /dev/null differ diff --git a/docs/assets/admin-ui/admin-ui-custom-script.png b/docs/assets/admin-ui/admin-ui-custom-script.png index e3deb01f16..6e55acc4a8 100644 Binary files a/docs/assets/admin-ui/admin-ui-custom-script.png and b/docs/assets/admin-ui/admin-ui-custom-script.png differ diff --git a/docs/assets/admin-ui/admin-ui-fido-static-conf.png b/docs/assets/admin-ui/admin-ui-fido-static-conf.png index c1154c9a6e..7e02ccc895 100644 Binary files a/docs/assets/admin-ui/admin-ui-fido-static-conf.png and b/docs/assets/admin-ui/admin-ui-fido-static-conf.png differ diff --git a/docs/assets/admin-ui/admin-ui-inMemory.png b/docs/assets/admin-ui/admin-ui-inMemory.png index c55a1d5f07..f38279d652 100644 Binary files a/docs/assets/admin-ui/admin-ui-inMemory.png and b/docs/assets/admin-ui/admin-ui-inMemory.png differ diff --git a/docs/assets/admin-ui/admin-ui-left-nav-menu.png b/docs/assets/admin-ui/admin-ui-left-nav-menu.png index f57a6adf33..a65b45eede 100644 Binary files a/docs/assets/admin-ui/admin-ui-left-nav-menu.png and b/docs/assets/admin-ui/admin-ui-left-nav-menu.png differ diff --git a/docs/assets/admin-ui/admin-ui-logging.png b/docs/assets/admin-ui/admin-ui-logging.png index ecef2058a3..29160861aa 100644 Binary files a/docs/assets/admin-ui/admin-ui-logging.png and b/docs/assets/admin-ui/admin-ui-logging.png differ diff --git a/docs/assets/admin-ui/admin-ui-nativePersistence.png b/docs/assets/admin-ui/admin-ui-nativePersistence.png index 0f6203c86a..e71572173e 100644 Binary files a/docs/assets/admin-ui/admin-ui-nativePersistence.png and b/docs/assets/admin-ui/admin-ui-nativePersistence.png differ diff --git a/docs/assets/admin-ui/admin-ui-persistence.png b/docs/assets/admin-ui/admin-ui-persistence.png index 7e5c6080f3..44813b03d6 100644 Binary files a/docs/assets/admin-ui/admin-ui-persistence.png and b/docs/assets/admin-ui/admin-ui-persistence.png differ diff --git a/docs/assets/admin-ui/admin-ui-redisConfiguration.png b/docs/assets/admin-ui/admin-ui-redisConfiguration.png index abf9de80e9..152d72c10a 100644 Binary files a/docs/assets/admin-ui/admin-ui-redisConfiguration.png and b/docs/assets/admin-ui/admin-ui-redisConfiguration.png differ diff --git a/docs/assets/admin-ui/admin-ui-scim.png b/docs/assets/admin-ui/admin-ui-scim.png index dad0da4822..8d5dad9077 100644 Binary files a/docs/assets/admin-ui/admin-ui-scim.png and b/docs/assets/admin-ui/admin-ui-scim.png differ diff --git a/docs/assets/admin-ui/admin-ui-scope.png b/docs/assets/admin-ui/admin-ui-scope.png index b74ab237d0..ea921b78ec 100644 Binary files a/docs/assets/admin-ui/admin-ui-scope.png and b/docs/assets/admin-ui/admin-ui-scope.png differ diff --git a/docs/assets/admin-ui/admin-ui-smtp.png b/docs/assets/admin-ui/admin-ui-smtp.png index 185b5de174..e32b6256e4 100644 Binary files a/docs/assets/admin-ui/admin-ui-smtp.png and b/docs/assets/admin-ui/admin-ui-smtp.png differ diff --git a/docs/assets/admin-ui/admin-ui-ssa.png b/docs/assets/admin-ui/admin-ui-ssa.png index cdb4437b17..e5ea9b525a 100644 Binary files a/docs/assets/admin-ui/admin-ui-ssa.png and b/docs/assets/admin-ui/admin-ui-ssa.png differ diff --git a/docs/assets/admin-ui/admin-ui-update-user.png b/docs/assets/admin-ui/admin-ui-update-user.png index 7f94d791d8..fbaeeef1db 100644 Binary files a/docs/assets/admin-ui/admin-ui-update-user.png and b/docs/assets/admin-ui/admin-ui-update-user.png differ diff --git a/docs/assets/admin-ui/admin-ui-user-changepassword.png b/docs/assets/admin-ui/admin-ui-user-changepassword.png index ce624ccef4..1d05e08a68 100644 Binary files a/docs/assets/admin-ui/admin-ui-user-changepassword.png and b/docs/assets/admin-ui/admin-ui-user-changepassword.png differ diff --git a/docs/assets/admin-ui/admin-ui-user-claims-1.png b/docs/assets/admin-ui/admin-ui-user-claims-1.png index f24bff1bca..bf3142cd65 100644 Binary files a/docs/assets/admin-ui/admin-ui-user-claims-1.png and b/docs/assets/admin-ui/admin-ui-user-claims-1.png differ diff --git a/docs/assets/admin-ui/admin-ui-user-claims-2.png b/docs/assets/admin-ui/admin-ui-user-claims-2.png deleted file mode 100644 index eeed70c4dc..0000000000 Binary files a/docs/assets/admin-ui/admin-ui-user-claims-2.png and /dev/null differ diff --git a/docs/assets/admin-ui/admin-ui-user-screen.png b/docs/assets/admin-ui/admin-ui-user-screen.png index 1e336300a8..dd77eeb075 100644 Binary files a/docs/assets/admin-ui/admin-ui-user-screen.png and b/docs/assets/admin-ui/admin-ui-user-screen.png differ diff --git a/docs/assets/admin-ui/audit-log.png b/docs/assets/admin-ui/audit-log.png index d89ee05edc..0c440a9c7f 100644 Binary files a/docs/assets/admin-ui/audit-log.png and b/docs/assets/admin-ui/audit-log.png differ diff --git a/docs/assets/admin-ui/auth-server-configuration.png b/docs/assets/admin-ui/auth-server-configuration.png index b372d72450..c5ee04388f 100644 Binary files a/docs/assets/admin-ui/auth-server-configuration.png and b/docs/assets/admin-ui/auth-server-configuration.png differ diff --git a/docs/assets/admin-ui/authn.png b/docs/assets/admin-ui/authn.png index 9d29326c15..9d5fd29805 100644 Binary files a/docs/assets/admin-ui/authn.png and b/docs/assets/admin-ui/authn.png differ diff --git a/docs/assets/admin-ui/client.png b/docs/assets/admin-ui/client.png index 5845cdba52..b18b552f3f 100644 Binary files a/docs/assets/admin-ui/client.png and b/docs/assets/admin-ui/client.png differ diff --git a/docs/assets/admin-ui/dynamic-scope.png b/docs/assets/admin-ui/dynamic-scope.png index 95f42be523..4d2f8dfd6a 100644 Binary files a/docs/assets/admin-ui/dynamic-scope.png and b/docs/assets/admin-ui/dynamic-scope.png differ diff --git a/docs/assets/admin-ui/health.png b/docs/assets/admin-ui/health.png index 4f38c3948b..497859401c 100644 Binary files a/docs/assets/admin-ui/health.png and b/docs/assets/admin-ui/health.png differ diff --git a/docs/assets/admin-ui/jans-assets.png b/docs/assets/admin-ui/jans-assets.png index 819b9a503c..9f600a98e0 100644 Binary files a/docs/assets/admin-ui/jans-assets.png and b/docs/assets/admin-ui/jans-assets.png differ diff --git a/docs/assets/admin-ui/jwks.png b/docs/assets/admin-ui/jwks.png index 9fc2886d29..256ddcddc1 100644 Binary files a/docs/assets/admin-ui/jwks.png and b/docs/assets/admin-ui/jwks.png differ diff --git a/docs/assets/admin-ui/license-details.png b/docs/assets/admin-ui/license-details.png index 7a192f5229..68880b2e6d 100644 Binary files a/docs/assets/admin-ui/license-details.png and b/docs/assets/admin-ui/license-details.png differ diff --git a/docs/assets/admin-ui/localization.png b/docs/assets/admin-ui/localization.png index 068dc7b968..de7c784aa2 100644 Binary files a/docs/assets/admin-ui/localization.png and b/docs/assets/admin-ui/localization.png differ diff --git a/docs/assets/admin-ui/login-page.png b/docs/assets/admin-ui/login-page.png index 52177c0f39..8324d78d41 100644 Binary files a/docs/assets/admin-ui/login-page.png and b/docs/assets/admin-ui/login-page.png differ diff --git a/docs/assets/admin-ui/openid-scope.png b/docs/assets/admin-ui/openid-scope.png index 7c1c32273a..dff6581aaf 100644 Binary files a/docs/assets/admin-ui/openid-scope.png and b/docs/assets/admin-ui/openid-scope.png differ diff --git a/docs/assets/admin-ui/role-permission.png b/docs/assets/admin-ui/role-permission.png index e8d85c491b..6400be3e69 100644 Binary files a/docs/assets/admin-ui/role-permission.png and b/docs/assets/admin-ui/role-permission.png differ diff --git a/docs/assets/admin-ui/sessions.png b/docs/assets/admin-ui/sessions.png index 8b3aa12c66..522eba6833 100644 Binary files a/docs/assets/admin-ui/sessions.png and b/docs/assets/admin-ui/sessions.png differ diff --git a/docs/assets/admin-ui/settings.png b/docs/assets/admin-ui/settings.png index 2e8a6c39b4..e83bd57c77 100644 Binary files a/docs/assets/admin-ui/settings.png and b/docs/assets/admin-ui/settings.png differ diff --git a/docs/assets/admin-ui/theme-selection.png b/docs/assets/admin-ui/theme-selection.png index f8b5a5d413..aa32c90502 100644 Binary files a/docs/assets/admin-ui/theme-selection.png and b/docs/assets/admin-ui/theme-selection.png differ diff --git a/docs/assets/admin-ui/trial-license.png b/docs/assets/admin-ui/trial-license.png index 1542c46a71..a2ab322347 100644 Binary files a/docs/assets/admin-ui/trial-license.png and b/docs/assets/admin-ui/trial-license.png differ diff --git a/docs/assets/admin-ui/upload-license.png b/docs/assets/admin-ui/upload-license.png new file mode 100644 index 0000000000..958bc7fa7e Binary files /dev/null and b/docs/assets/admin-ui/upload-license.png differ diff --git a/docs/assets/admin-ui/webhook-view.png b/docs/assets/admin-ui/webhook-view.png index 1ea64982ac..e889c713c4 100644 Binary files a/docs/assets/admin-ui/webhook-view.png and b/docs/assets/admin-ui/webhook-view.png differ diff --git a/mkdocs.yml b/mkdocs.yml index 5bb6fbd094..58a65226e6 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -165,7 +165,6 @@ nav: - 'SMTP': 'admin/admin-ui/smtp-menu.md' - 'SCIM': 'admin/admin-ui/scim-menu.md' - 'FIDO': 'admin/admin-ui/fido-menu.md' - - 'SAML': 'admin/admin-ui/saml-menu.md' - 'Jans Lock': 'admin/admin-ui/jans-lock-menu.md' - 'FAQ & Troubleshooting': 'admin/admin-ui/faq.md' - 'Flex Recipes':