U3b · September 2026 · Administrators
Administration and access
Manage the controlled pilot without confusing account identity, project access and source rights.
Three separate access decisions
Signing in establishes an identity. Active organization and project memberships authorize operations. Source permissions determine which evidence and disclosure surfaces those operations may use. Passing one layer does not bypass the others.
The current Soldier Data login registry supports owner, analyst and viewer claims. The broader application capability matrix also contains admin and reviewer roles, but those are not extra role values to insert into the pilot login file. Use the generated role matrix below to understand application policy, not to infer that every optional administration screen is enabled.
Onboard a pilot user
- Record the user’s purpose, required project, approved role and approving owner. Prefer the minimum access needed for the work.
- Confirm which identity mode the deployed environment actually uses. The U4 pilot uses the controlled Soldier Data account boundary; OIDC/account administration is separately configured code, not evidence of a live enterprise identity service.
- Have the authorized operator provision the account using the protected account-file schema and password-verifier procedure. Never ask for the password in chat or commit a verifier/account document into the application repository.
- Apply approved organization and project membership through the environment’s supported administration procedure. Do not assume a login-file role creates a database membership. During a release account freeze, coordinate changes with the release operator.
- Apply any required process restart through a reviewed release/change procedure: the login account registry is loaded at startup.
- Have the user sign in themselves. Verify the intended project and evidence access, and verify that unrelated project evidence stays unavailable. Record the result and approval reference without storing session cookies.
Role and capability reference
The following selected actions are generated from the application’s ROLE_CAPABILITIES export. Both organization and project roles must allow the action where project scope is required. Source rights and runtime configuration can still refuse it.
| Action | owner | admin | analyst | reviewer | approver | viewer | guest |
|---|---|---|---|---|---|---|---|
| evidence:read | Allowed by role | Allowed by role | Allowed by role | Allowed by role | Allowed by role | Allowed by role | Not granted |
| project:create | Allowed by role | Not granted | Allowed by role | Not granted | Not granted | Not granted | Not granted |
| project:update | Allowed by role | Not granted | Allowed by role | Not granted | Not granted | Not granted | Not granted |
| recipe:run | Allowed by role | Not granted | Allowed by role | Not granted | Not granted | Not granted | Not granted |
| export:create | Allowed by role | Not granted | Allowed by role | Not granted | Not granted | Not granted | Not granted |
| artifact:download | Allowed by role | Allowed by role | Allowed by role | Allowed by role | Allowed by role | Allowed by role | Not granted |
| review:approve | Allowed by role | Not granted | Not granted | Not granted | Allowed by role | Not granted | Not granted |
| report:deliver | Allowed by role | Not granted | Not granted | Not granted | Allowed by role | Not granted | Not granted |
| membership:write | Allowed by role | Allowed by role | Not granted | Not granted | Not granted | Not granted | Not granted |
| session:revoke | Allowed by role | Allowed by role | Not granted | Not granted | Not granted | Not granted | Not granted |
Change or revoke access
- Confirm the requester’s authority and identify the exact organization, project, subject and intended change. Keep a recoverable authorized owner.
- For the pilot login registry, active=false prevents new authentication after the configured process is restarted; incrementing sessionVersion invalidates earlier cookies under the reloaded registry. Follow the controlled file-update and restart procedure.
- Change authoritative organization/project membership separately where needed. The capability authorizer reads those memberships on every action; legacy login roles alone never grant project access.
- Verify that an existing session and a fresh login behave as intended. Check both project evidence and artifact access. Do not share the revoked person’s password to perform this check.
- Record who approved the change, what scope changed, when it became effective and how denial was verified.
Password, session and account support
| Symptom | Administrator response |
|---|---|
| Cannot sign in | Check approved account identity, active state and domain. Repeated attempts can trigger per-process login throttling. Do not request the password. |
| Session ended | Ask the user to sign in again. An expired or revoked session is not repaired by changing browser storage or minting a token. |
| Signed in but project unavailable | Check both organization and project membership, then source permissions. Do not promote the user to owner as a troubleshooting shortcut. |
| Needs password reset | Use the operator-controlled password-verifier replacement process. The pilot has no self-service reset workflow. |
| Account administration is absent | Verify whether the optional identity-administration runtime is configured. Absence is not evidence that the authorization layer should be bypassed. |
Administration record and review cadence
Maintain an access-change record containing the requester, approving role, subject/project identifiers, change, effective time and verification outcome. Store sensitive operational details in the organization’s approved private system, not in the public documentation portal.
Review access when a person’s role changes or a project closes. Recheck source eligibility before new exports. No automatic access-review interval, enterprise audit retention term or service-level commitment is established by this guide.
Implementation references for this manual
Repository paths reviewed for this U3b documentation. Optional code is not a claim of live availability.
deploy/auth/README.mdserver/auth/soldierDataAuth.mjsserver/policy/capabilities.mjsserver/app/configuredIdentityAdministration.mjsdocs/implementation-plans/execution/evidence/COMPLETION-P19/account-administration-mvp.md