How coleleep/mytestscim works
This is a SCIM 2.0 provisioning server with an authenticated web UI. An identity provider sends user and group operations to the SCIM API; the server authenticates and dispatches them to resource handlers, which persist data in PostgreSQL. The UI uses Okta OIDC login and reads provisioned users and groups from that store. The server also exposes SCIM capability metadata and OAuth token flows. Relationships are based on the README and shown excerpts; unsampled authentication setup and route details are not expanded beyond documented behavior.
Main entry points: server.js SCIM entry and dispatch · users.js User provisioning · groups.js Group provisioning · users.ejs Users page
Components 18
SCIM API
- SCIM entry and dispatch
server.js - SCIM authentication
server.js - User provisioning
routes/users.js - Group provisioning
routes/groups.js - SCIM metadata
server.js
Identity and OAuth
- Okta OIDC login
server.js - OAuth authorization and tokens
server.js
PostgreSQL storage
- PostgreSQL data
server.js
Web UI
- User data view
server.js - Group data view
server.js - Users page
views/users.ejs - Groups page
views/groups.ejs - Login page
views/login.ejs - Consent page
views/consent.ejs
Other components
- Identity provider
- UI visitor
- Okta identity service
- SCIM OAuth client
Connections 19
- Identity provider → SCIM entry and dispatch: sends SCIM
README.md - SCIM entry and dispatch → SCIM authentication: authenticates
server.js - SCIM entry and dispatch → User provisioning: routes users
server.js - SCIM entry and dispatch → Group provisioning: routes groups
server.js - SCIM entry and dispatch → SCIM metadata: serves metadata
server.js - SCIM entry and dispatch → PostgreSQL data: initializes tables
server.js - User provisioning → PostgreSQL data: reads and writes
routes/users.js - Group provisioning → PostgreSQL data: reads and writes
routes/groups.js - UI visitor → Okta OIDC login: signs in
README.md - Okta OIDC login → Okta identity service: authenticates with
README.md - UI visitor → User data view: opens UI
README.md - UI visitor → Group data view: opens UI
server.js - User data view → PostgreSQL data: reads users
server.js - Group data view → PostgreSQL data: reads groups
server.js - User data view → Users page: renders
server.js - Group data view → Groups page: renders
server.js - UI visitor → Login page: requests login
- SCIM OAuth client → OAuth authorization and tokens: requests token
README.md - OAuth authorization and tokens → Consent page: renders consent
server.js