Skip to content
Michael Schwartz edited this page Jan 25, 2023 · 65 revisions

Bringing Joy to Janssen Admins

Reference

Requirements

  • CLI should handle config for all Janssen Project server components: Auth Server, FIDO, SCIM, Client API, Config API
  • Device flow for authentication
  • Access token lifetime: 60 minutes -- no refresh token.
  • Properties file in ./config/jans-cli.ini with user settings
  • Command Mode
    • one liner to execute a command
    • input data stored as JSON (base64 encoded? url encoded? file?)
  • Interactive Mode
    • When you list entities, it should return first 10 items automatically and then give the option to filter results another way
    • Interactive mode writes command-audit.log with equivalent command one liner
    • Fields that have well known values (like response_type), admin should be able to select
    • For Add entity commands, required fields first, then most often used, then others grouped by similarity
    • Always enable a user to cancel and go back one screen, section home, or home screen
    • Never make user enter any inum
    • Show summary and confirm before writes
    • Logout function should delete access token
  • Plugins
    • Extends functionality of CLI
    • Plugins specified by user in jans-cli.ini
    • Installed in extra folders in projects
    • args should have plugin namespace

Auth Server: Scripts

jans_admin-script-form drawio

Auth Server: Clients

jans_admin-clients-list drawio

Client Page 1

jans_admin-client-1 drawio (2)

Client Page 2

jans_admin-client-2 drawio

Client Page 3

jans_admin-client-3 drawio

Client Page 4

jans_admin-client-4 drawio

Client Page 5

jans_admin-client-5

UMA Resource Detail

jans_admin-UMA-Resource drawio

Client Page 6

jans_admin-client-6 drawio

Client Page 7

jans_admin-client-7 drawio (4)

Client Page 8

jans_admin-client-8 drawio (1)

Auth Server: Scopes

Note: Spontaneous Scopes are READ ONLY. They should show up in search results; admins can view a spontaneous scope. But admins cannot create a spontanous scope--creation only happens when an authorized client presents a spontaneous scope at the token endpoint.

Scopes List

jans_admin-scopes-list drawio

OAuth Scopes Page

jans_admin-scopes-1 drawio (1)

OpenID Scopes Page

jans_admin-scopes-2 drawio (1)

Dynamic Scopes Page

jans_admin-scopes-3 drawio (1)

Spontaneous Scopes Page

jans_admin-scopes-4 drawio (3)

UMA Scopes Page

jans_admin-scopes-5 drawio

Agama

jans_admin-Agama-1 drawio

Software Statement Assertion (SSA)

SSA's are JWT's, issued by Auth Server, that are used by a developer during dynamic client registration to prove authorization to obtain protected client credentials. See the SSA Endpoint Documentation and Swagger docs for more info.

Browse / Search SSA's

jans_admin-SSA-1 drawio

Create SSA

jans_admin-SSA-2 drawio (1)

View / Edit / Revoke / Show-Token

jans_admin-SSA-3 drawio (1)

ASCII ART Title Page

                      --------------------¶¶¶¶¶¶¶¶
  __¶¶¶            --------------------¶¶¶¶    ¶¶
 __¶¶  ¶¶¶     ----------------------¶¶¶      ¶¶
___¶     ¶¶¶¶                      ¶¶        ¶¶
___¶        ¶¶¶¶                 ¶¶         ¶¶
 -¶¶           ¶¶¶¶             ¶¶         ¶¶
  ¶¶              ¶¶¶¶¶¶       ¶          ¶¶
  ¶¶                   ¶¶¶   ¶¶          ¶¶
   ¶                     ¶¶  ¶      ¶¶¶¶¶¶¶
   ¶¶                    ¶¶ ¶     ¶¶    ö ¶¶¶
    ¶¶                     ¶¶¶¶¶¶¶         ¶¶¶¶
      ¶¶                                 ¶¶¶
       ¶¶¶                              ¶¶
          ¶¶¶¶                   JANS  ¶¶
              ¶¶               ADMIN  ¶¶
               ¶¶¶¶¶¶         TOOL   ¶¶
 ¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶                    ¶¶
  ¶                              ¶¶¶¶
   ¶¶                        ¶¶¶¶¶
    ¶¶               ¶¶¶¶¶¶¶¶¶
      ¶¶¶¶             ¶¶
         ¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶
Clone this wiki locally