Markdown Editor

IAM Solution Design Template (NIST SP 800-63-4, SSO, PAM)

Identity sources, IAL/AAL/FAL, passkeys, SAML/OIDC, joiner-mover-leaver and SCIM, RBAC/SoD, PAM, access reviews, workload identity, migration

Ingeniería de seguridadCompletaNIST SP 800-63-4; SAML 2.0; OpenID Connect Core 1.0; RFC 9700; SCIM 2.0iamsolutiondesign

Cómo usar: Use it when designing or renewing workforce identity: SSO, MFA, provisioning, privileged access and service accounts. Fill authoritative sources and assurance levels per population first, then authentication, federation and lifecycle. The main pitfall is detailing SSO while deprovisioning, privileged access and non-human identities stay one-line bullets.

Vista previa

IAM Solution Design: [Organisation or programme name]

Solution design for workforce identity and access management (IAM): authoritative identity sources, assurance levels, authentication and passkeys, single sign-on and federation, joiner/mover/leaver lifecycle, authorisation model, privileged access, access reviews, workload and machine identities, logging and the migration plan. Assurance levels follow NIST SP 800-63-4 Digital Identity Guidelines (final, July 2025: SP 800-63A-4, 63B-4 and 63C-4). Protocol choices follow SAML 2.0, OpenID Connect Core 1.0, the OAuth 2.0 Security Best Current Practice (RFC 9700), SCIM 2.0 (RFC 7643 and RFC 7644) and W3C Web Authentication Level 3. Zero trust alignment follows NIST SP 800-207. Replace every [bracketed] value and every row marked Example.

Document control

FieldValue
Document ID[IAM-SD-001]
Programme name[Name]
Version[0.1]
Status[Draft / In review / Approved / Superseded]
Owner[@iam-architect]
Approvers/reviewers[@ciso], [@enterprise-architect], [@hr-systems-lead], [@infrastructure-lead], [@internal-audit]
Populations in scope[Employees, contractors, partner staff, privileged administrators, service accounts]
Primary identity provider[Product or service, tenant ID]
Target assurance[Example: IAL2, AAL2 with phishing-resistant option for all staff; AAL3 for privileged roles; FAL2 for federated applications]
Regulatory drivers[Example: SOX IT general controls, ISO/IEC 27001 Annex A access controls, NIS2 Article 21]
Classification[Internal / Confidential]
Last updatedYYYY-MM-DD
Related documents[Security architecture], [Zero trust plan], [Access review procedure], [ADR log]

Approvals

RoleNameDecisionDate
Chief information security officer[@name][Approve / Approve with conditions / Reject]YYYY-MM-DD
Enterprise architecture[@name][Decision]YYYY-MM-DD
HR systems owner[@name][Decision]YYYY-MM-DD
Infrastructure and platform[@name][Decision]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.1YYYY-MM-DD[@name]First draft
0.2YYYY-MM-DD[@name]Example: Assurance levels agreed per population; passkeys selected as primary factor
1.0YYYY-MM-DD[@name]Example: Approved; wave 1 migration authorised

Contents

1. Scope, drivers and principles

1.1 Scope

In scopeOut of scope
Example: Workforce accounts for 9,000 employees and 2,500 contractorsCustomer and consumer accounts (see security/ciam-solution-design)
Example: SSO for SaaS and internally hosted applicationsPhysical access control badges (receives disable events from the governance tool only)
Example: Privileged access to cloud, server, database and network estatesOperational technology plant networks (separate programme)
Example: Service accounts, workload identities and API clientsCertificate authority operations (see security/pki-certificate-architecture)
[Item][Item]

1.2 Drivers

IDDriverEvidenceOutcome sought
DRV-001 (Example)Leavers retain access to SaaS tools for weeksAudit finding [ref]: 14% of sampled leavers active after 30 daysAutomated deprovisioning within 4 hours of HR termination
DRV-002 (Example)Phishing campaigns harvest one-time codesIncident [ref]Phishing-resistant authentication for all staff
DRV-003 (Example)Shared administrator passwordsPenetration test [ref]Named, just-in-time privileged access
[DRV-NNN][Driver][Evidence][Outcome]

1.3 Design principles

IDPrincipleConsequence
IAMP-001 (Example)One authoritative source per attributeEvery attribute in section 3.2 has exactly one owner system; others consume, never edit
IAMP-002 (Example)Identity provider is the only place a workforce user authenticatesApplications federate; local passwords are disabled at onboarding
IAMP-003 (Example)Phishing-resistant by defaultPasskeys or smart cards are the primary factor; codes and push are fallback only
IAMP-004 (Example)Access follows role and attribute, not request historyBirthright access is computed; requests cover exceptions only
IAMP-005 (Example)No standing privilegeAdministrative roles are activated just in time and expire
IAMP-006 (Example)Machines get identities, not passwordsWorkloads use federated or certificate credentials; static secrets need an exception
[IAMP-NNN][Principle][Consequence]

2. Current state and target overview

2.1 Current state summary

Record, for each area, the current state and the main gap: directories and forests (for example two on-premises forests after an acquisition, so no single join key), authentication methods (for example password plus SMS for remote access only), SSO coverage (for example 120 of 410 applications federated), provisioning (for example 70% manual tickets, so orphaned accounts), privileged access (for example shared vaulted passwords with standing rights) and reviews (for example an annual spreadsheet). Quantify each gap; the numbers become the baseline for the acceptance criteria in section 15.

2.2 Target logical architecture

The HR system and the contractor register feed the governance tool, which drives the directory and application accounts; the identity provider authenticates users and asks the policy decision point for each access decision. The policy decision and enforcement split follows NIST SP 800-207; the wider zero trust roadmap lives in Zero Trust Architecture Plan (security/zero-trust-architecture).

2.3 Capability to product mapping

CapabilityTarget product or serviceStatusNotes
Workforce directory[Product][Existing / New / Retire][Tenant, region]
Identity provider (SSO, MFA, conditional access)[Product][Status][Notes]
Identity governance (lifecycle, requests, reviews)[Product][Status][Notes]
Privileged access management[Product][Status][Notes]
Workload identity issuer[Example: Cloud workload identity federation; SPIFFE-based issuer for Kubernetes][Status][Notes]

Record each product choice as an ADR in the Architecture Decision Log (architecture/architecture-decision-log); use the Build vs Buy Analysis (architecture/build-vs-buy-analysis) when the choice is contested.

3. Identity sources and authority

3.1 Populations and authoritative sources

PopulationAuthoritative sourceSponsor or ownerTypical volumeLifecycle trigger
Employees (Example)HR system of recordLine manager9,000Hire, transfer, termination events from HR
Contractors (Example)Contractor register in the governance toolNamed internal sponsor2,500Contract start and end dates; sponsor recertifies every 90 days
Partner staff (Example)Partner's own identity provider (federated)Partner relationship manager800Partner deprovisions at source; local shadow account expires after 30 days inactivity
Privileged admin accounts (Example)Governance tool, derived from employee recordPlatform owner300Created on role assignment; disabled with parent identity
[Population][Source][Owner][Volume][Trigger]

3.2 Attribute authority

AttributeAuthoritative systemConsumersFormat and rule
Immutable person ID (Example)Governance tool (generated)AllOpaque, never reused, never shown to users
Employee number (Example)HR systemDirectory, payroll-linked appsNumeric, unique
Legal and preferred name (Example)HR systemDirectoryPreferred name used for display
Email and username (Example)Directory (derived)ApplicationsChanges allowed; applications key on person ID or directory object ID
Department, cost centre, manager (Example)HR systemGovernance tool, role rulesDrive birthright access
Employment status and end date (Example)HR systemGovernance toolDrives disable and delete
[Attribute][System][Consumers][Rule]

3.3 Identifier and correlation rules

  • Assign one immutable identifier per human, independent of employment type, so that a contractor who becomes an employee keeps one identity history.
  • Correlate existing accounts during migration using [employee number / verified email / manual match], and record every manual match with the approver.
  • Never recycle usernames or email addresses within [Example: 24 months] of release.
  • Store the federated subject identifier (NameID for SAML, sub for OIDC) per application so that a renamed user is not treated as a new person.

4. Assurance levels

4.1 Method

NIST SP 800-63-4 replaces a fixed assurance table with a digital identity risk management (DIRM) process: define the online service, assess the impact of failures, select initial identity, authentication and federation assurance levels, tailor them with compensating or supplemental controls, and evaluate continuously. Record each step for each application tier below, and keep the tailoring rationale, because auditors ask for it.

Level familyWhat it governsLevels in SP 800-63-4 (one-line paraphrase)
Identity assurance (IAL), SP 800-63A-4Strength of identity proofing at enrolmentIAL1: basic evidence the person exists and is linked to the claim; IAL2: stronger evidence and verification, remote or in person; IAL3: supervised in-person session with a trained agent and biometric collection
Authentication assurance (AAL), SP 800-63B-4Strength of sign-inAAL1: single or multi-factor; AAL2: two distinct factors with replay resistance, and a phishing-resistant option must be offered; AAL3: phishing-resistant public-key authenticator with a non-exportable private key
Federation assurance (FAL), SP 800-63C-4Strength of assertions passed to applicationsFAL1: signed assertion that the application validates; FAL2: adds protection against injected assertions and requires a trusted relationship established in advance between identity provider and application; FAL3: adds protection against a compromised identity provider through bound authenticators or holder-of-key assertions

4.2 Assurance by population and application tier

IDPopulation or tierImpact rationaleIALAALFALTailoring
ASR-001 (Example)All staff, standard appsModerate harm from unauthorised access to internal dataIAL2 (HR onboarding with document check)AAL2, phishing-resistant requiredFAL2Passkey or smart card mandatory; push with number matching only as recovery bridge
ASR-002 (Example)Finance and HR appsFraud and privacy harmIAL2AAL2 plus step-up per transaction classFAL2Reauthenticate for payment release
ASR-003 (Example)Privileged administratorsSevere harm, estate-wideIAL2 plus in-person verification at role grantAAL3FAL2Device-bound hardware authenticator; managed device required
ASR-004 (Example)Partner staffModerateInherited from partner (contractual)AAL2 asserted by partner IdPFAL2Partner agreement requires phishing-resistant MFA; verified through amr or acr claims
[ASR-NNN][Tier][Rationale][IAL][AAL][FAL][Tailoring]

5. Authentication and passkeys

5.1 Authenticator policy

Authenticator typeAllowed atRegistrationNotes
Device-bound passkey on hardware security key (Example)AAL2, AAL3In person or from an existing AAL3 sessionRequired for privileged roles; key is non-exportable
Platform passkey, device-bound (managed laptop) (Example)AAL2, AAL3 where key is non-exportable and attestation confirms itDuring device enrolmentPreferred daily factor
Synced passkey (Example)AAL2 onlySelf-service from an AAL2 sessionSP 800-63B-4 allows syncable authenticators up to AAL2, not AAL3; check the backup eligibility flag defined in WebAuthn Level 3 to tell synced from device-bound
Smart card or derived credential (PKI) (Example)AAL2, AAL3Issued by the identity teamCertificates from the internal CA (see security/pki-certificate-architecture)
Authenticator app push with number matching (Example)AAL2 (not phishing resistant)Self-serviceTransitional; retire by [date]
SMS or voice one-time code (Example)Not allowed for staffNot applicableSP 800-63B-4 treats PSTN out-of-band as restricted
Password (Example)Only as one factor inside MFASet at onboardingMinimum length and blocklist per SP 800-63B-4; no forced periodic rotation; rotate on evidence of compromise
[Type][Level][Registration][Notes]

5.2 Sign-in and step-up flow

The flow below shows a standard sign-in at AAL2 with a passkey; the same path with a higher requested authentication context gives step-up.

5.3 Session and reauthentication

ContextOverall session limitInactivity limitReauthentication trigger
Standard apps at AAL2 (Example)24 hours1 hourNew device, high risk score, privileged action
Privileged sessions at AAL3 (Example)12 hours15 minutesEvery elevation
[Context][Limit][Limit][Trigger]

SP 800-63B-4 gives upper bounds for AAL2 and AAL3 reauthentication; set your values at or below them and record any business exception.

5.4 Registration, recovery and help desk

  • Bind the first authenticator during onboarding using a one-time enrolment code delivered through [manager / HR / in person], valid for [Example: 72 hours].
  • Require every user to register at least two authenticators so loss of one does not force a help-desk reset.
  • Help-desk recovery requires identity verification at the same IAL as enrolment (for example a video check against the HR photo plus manager confirmation), never knowledge questions alone.
  • Log every recovery as a security event and notify the user on all registered channels.
  • After recovery, revoke all sessions and refresh tokens and require re-registration of a phishing-resistant authenticator.

6. Federation and single sign-on

6.1 Protocol standards

Use caseStandardRequired settings
Browser SSO to SaaS that supports only SAML (Example)SAML 2.0 Web Browser SSO profileSigned assertions, SHA-256 or stronger, audience restriction, assertion lifetime of [5] minutes, encrypted assertion where attributes are sensitive
New web and mobile apps (Example)OpenID Connect Core 1.0 authorisation code flow with PKCEConfidential clients authenticate with private_key_jwt or mTLS; exact redirect URI matching; no implicit flow, as RFC 9700 advises
API access (Example)OAuth 2.0 access tokensAudience-restricted tokens; sender-constrained (DPoP, RFC 9449, or mTLS) for high-risk APIs; short lifetime
Partner identity providers (Example)SAML 2.0 or OIDC federationMetadata exchange, signing key rollover procedure, attribute contract in the partner agreement
Legacy apps without federation (Example)Header-based or Kerberos via access gatewayGateway is the enforcement point; app reachable only through it
[Use case][Standard][Settings]

6.2 Application onboarding tiers

TierCriteriaOnboarding requirementsTarget date
Tier 1 (Example)Supports SAML or OIDC and SCIMFederate, enable SCIM, disable local login, add to review campaignWave 1
Tier 2 (Example)Supports federation, not SCIMFederate, use connector or just-in-time provisioning with scheduled deprovision reconciliationWave 2
Tier 3 (Example)No federationPlace behind access gateway or vault-managed credential; plan replacementWave 3
[Tier][Criteria][Requirements][Date]

6.3 Claims and attribute contract

Claim or attributeSourceFormatReleased to
Subject identifier (Example)Directory object IDPairwise per application where the app allowsAll apps
Email (Example)DirectoryRFC 5322 addressApps that need contact
Groups or roles (Example)Governance toolApplication-scoped role values only, not every directory groupPer app contract
Authentication context (Example)Identity provideracr and amr values from section 4All apps
[Claim][Source][Format][Released to]

Release the minimum attributes each application needs; record each release in the application's onboarding record.

7. Identity lifecycle: joiner, mover, leaver

7.1 Lifecycle flow

HR events drive every change; no human creates or deletes a standard account by hand.

7.2 Lifecycle service levels

EventActionTargetMeasure
Joiner (Example)Account and birthright access readyBefore start date 09:00 localPercentage of joiners productive on day one
Mover (Example)New access granted; old access removed after overlapGrant 1 business day; removal 14 daysCount of mover accounts with access from previous role after 30 days
Leaver, standard (Example)Disable all accounts and sessions4 hours from HR effective timeMedian and 95th percentile time to disable
Leaver, urgent or hostile (Example)Immediate disable on HR or security request15 minutesTime from request to disable
Contractor end date (Example)Auto-disable unless sponsor extendsOn end dateAccounts past end date
[Event][Action][Target][Measure]

7.3 Provisioning standards

  • Use SCIM 2.0 (RFC 7643 schema, RFC 7644 protocol) for every application that supports it; check for RFC 9865 cursor pagination support on large tenants, and for RFC 9967 (SCIM profile for Security Event Tokens, which also adds optional asynchronous requests) where applications should emit or receive lifecycle events (section 12).
  • For applications without SCIM, use governance connectors or scheduled reconciliation that reports accounts without a matching active identity.
  • Disable before delete: deactivation preserves audit trails; delete after the retention period in the records schedule.
  • Revoke refresh tokens and active sessions at disable time; SCIM deactivation alone does not end existing sessions in many applications.

8. Authorisation model

8.1 Model layers

LayerDefinitionOwnerExample
Birthright accessGranted automatically from HR attributesIAM teamExample: Email, intranet, collaboration suite for all employees
Business roleBundle of entitlements for a job functionBusiness role ownerExample: "Accounts payable clerk" grants ERP AP entry and document archive read
Application entitlementPermission defined inside an applicationApplication ownerExample: ERP role AP_INVOICE_ENTRY
Attribute-based ruleRuntime condition evaluated per requestApplication or policy engineExample: Read customer record only for own region and only from a managed device
[Layer][Definition][Owner][Example]

For fine-grained or relationship-based decisions inside your own applications, use the patterns in Authorization service design (system-design/design-authorization-service) rather than pushing thousands of groups into tokens.

8.2 Role engineering rules

  • Start from entitlement usage data (who uses what), then confirm with business owners; do not design roles top-down from the organisation chart alone.
  • Cap business roles at [Example: one role per 30 people on average]; review roles with fewer than [3] members.
  • Every entitlement has an owner, a description in business language, a risk rating and a review frequency.
  • Requests outside a role need justification, an end date for high-risk items and approval by the entitlement owner.

8.3 Segregation of duties

Rule IDConflicting access AConflicting access BRiskControl
SOD-001 (Example)Create vendorApprove paymentFictitious vendor fraudPreventive: request blocked
SOD-002 (Example)Deploy to productionApprove own changeUnauthorised changeDetective: monthly report and review
[SOD-NNN][A][B][Risk][Control]

9. Privileged access

9.1 Privileged access model

ControlDesignApplies to
Separate admin identity (Example)Distinct account per administrator, no mailbox, no internet browsingAll Tier 0 and Tier 1 roles
Just-in-time elevation (Example)Role activated for [1 to 8] hours with ticket reference and approval for Tier 0Cloud, directory, IdP, database admins
Phishing-resistant AAL3 (Example)Hardware security key bound in personAll privileged identities
Privileged access workstation (Example)Hardened managed device; privileged sessions only from itTier 0
Session brokering and recording (Example)Sessions through PAM proxy with recording and keystroke logServers, databases, network devices
Credential vaulting and rotation (Example)Vault checks out and rotates local admin and service passwords after useLegacy systems without federation
[Control][Design][Applies to]

9.2 Administrative tiers

TierScopeExamplesRules
Tier 0 (Example)Systems that control identity itselfDirectory, IdP, PAM, PKI, governance toolSmallest group; dual approval; no use of Tier 0 credentials on lower-tier systems
Tier 1 (Example)Servers, cloud subscriptions, databasesPlatform and DBA teamsJIT, recorded sessions

9.3 Break-glass accounts

  • Keep [Example: two] emergency accounts per critical tenant, excluded from conditional access that depends on the IdP being reachable, but protected by hardware keys stored in separate safes.
  • Alert on every sign-in to a break-glass account and review within one business day.
  • Test the procedure every [Example: six months] and record the result in the Disaster Recovery Plan (ops/disaster-recovery-plan).

10. Access governance and reviews

10.1 Review campaigns

CampaignScopeReviewerFrequencyDefault on no response
Manager review (Example)All access of direct reportsLine managerEvery 6 monthsEscalate to next manager after 10 days; revoke high-risk items after 20
Privileged access review (Example)All Tier 0 and Tier 1 eligibilityPlatform owner plus securityQuarterlyRevoke
Application owner review (Example)All accounts in SOX-relevant appsApplication ownerQuarterlyRevoke and report to audit
Service account review (Example)All non-human identitiesTechnical ownerEvery 6 monthsDisable after warning
[Campaign][Scope][Reviewer][Frequency][Default]

Use Access Review (ops/access-review) to record each campaign's findings, actions and sign-off.

10.2 Making reviews meaningful

  • Show reviewers last-used dates, peer comparison and risk rating for each item; highlight outliers instead of listing everything equally.
  • Pre-approve access that matches role rules and ask reviewers only about exceptions, so attention goes where risk is.
  • Remove access automatically on "revoke" decisions and keep the fulfilment evidence with the decision.

11. Service, workload and machine identities

11.1 Non-human identity types

TypePreferred credentialFallbackOwner rule
Cloud workloads (Example)Platform-managed identity (no secret)Federated token exchangeOwning team in the service catalogue
Kubernetes workloads (Example)Short-lived X.509 or JWT identity documents from a SPIFFE-compatible issuer (for example SPIRE), or the cluster's projected service account token federated to the cloudVault-issued dynamic secretNamespace owner
CI/CD pipelines (Example)OIDC workload identity federation from the pipeline platform to the cloud, scoped by repository and branchNone for productionRepository owner
Third-party SaaS integrations (Example)OAuth client credentials with private_key_jwtAPI key in vault with rotationIntegration owner
Legacy service accounts (Example)Vaulted password, rotated every [90] daysNot applicableApplication owner; replacement planned
[Type][Credential][Fallback][Owner rule]

11.2 Rules for non-human identities

  • Every non-human identity has a named human owner, a purpose, an expiry or review date and a record in the inventory.
  • Interactive sign-in is disabled for service accounts.
  • Scope permissions to one workload and one environment; never reuse a production identity in test.
  • Detect secrets in code repositories and pipelines, and treat any found secret as compromised.
  • For workload-to-workload trust inside the platform, see section 9 of PKI and Certificate Architecture (security/pki-certificate-architecture).

12. Logging, monitoring and identity threat detection

12.1 Events and retention

Send sign-in successes and failures, authenticator registration and recovery, lifecycle and provisioning actions, privileged elevations and session records, configuration changes to the IdP, directory and PAM, and workload token issuance to the SIEM. Example: keep [13] months searchable and [7] years archived where regulation requires, and keep privileged session recordings for [1] year. Retention must let you answer "who had access to system X on date Y" for the whole audit period.

12.2 Detections

IDDetectionResponse
DET-001 (Example)Sign-in to break-glass accountPage security on call
DET-002 (Example)New authenticator registered followed by sign-in from new country within one hourSuspend session; contact user
DET-003 (Example)Federation trust or signing certificate added to IdPPage Tier 0 owner; verify change ticket
DET-004 (Example)Disabled user's token used at an applicationRevoke at application; investigate session revocation gap
[DET-NNN][Detection][Response]

Where applications and the IdP support it, exchange session and account events (session revoked, credential changed) using the OpenID Shared Signals Framework with CAEP and RISC event types, so that a disable at the IdP ends sessions everywhere quickly.

13. Resilience and operations

TopicDesign
Availability target (Example)IdP and directory 99.95%; governance tool 99.5% (lifecycle can queue)
Failure behaviour (Example)Existing sessions continue to their limit; new sign-ins fail closed except break-glass
Signing key management (Example)Signing keys in HSM-backed key store; rollover every [12] months with overlap; metadata published in advance
Dependency map (Example)DNS, time sync, HSM, HR feed, device management; each in the resilience tiering
Runbooks (Example)IdP outage, signing key compromise, mass account lockout, HR feed failure; stored offline
Operating model (Example)IAM platform team owns IdP and governance; security operations owns detections; service desk handles standard user resets, never Tier 0 or Tier 1 accounts
[Topic][Design]

Assign the identity platforms a resilience tier in Resilience Tiering and HA/DR Design (architecture/resilience-tiering-ha-dr-design); they normally sit in the highest tier because everything else depends on them.

14. Migration and rollout plan

14.1 Waves

WaveScopeEntry criteriaExit criteriaTarget date
0: Foundations (Example)Immutable ID, HR feed, directory consolidation, break-glassDesign approved99% of active staff correlated; break-glass testedYYYY-MM-DD
1: Phishing-resistant MFA (Example)Passkey registration campaign; IT and admins firstWave 0 done; help-desk recovery process live95% of staff with two authenticators; admins on hardware keysYYYY-MM-DD
2: SSO and SCIM Tier 1 apps (Example)Top 100 apps by user countClaims contract publishedLocal login disabled; leaver SLA met for these appsYYYY-MM-DD
3: PAM and JIT (Example)Cloud and directory admin rolesAAL3 for adminsNo standing Tier 0 assignmentsYYYY-MM-DD
4: Long tail and non-human identities (Example)Tier 2 and 3 apps; service accountsInventory complete90% of service accounts owned and reviewedYYYY-MM-DD
[Wave][Scope][Entry][Exit][Date]

14.2 Cutover controls

  • Run old and new authentication in parallel per application until the rollback window closes; switch by group, not by user.
  • Communicate to users at least [Example: two weeks] before each change, with a self-service registration link and help-desk capacity planned for the peak.
  • Use Cutover Plan (project/cutover-plan) for each wave's go and no-go and rollback steps.

15. Requirements traceability and acceptance

Req IDRequirementDesign sectionVerificationAcceptance criterion
IAM-REQ-001 (Example)Leavers lose all access within 4 hours7.2, 7.3Test: terminate 20 test identities in HRAll accounts disabled and tokens revoked within 4 hours in every Tier 1 app
IAM-REQ-002 (Example)All staff use phishing-resistant MFA5.1Report from IdP authentication methods98% of sign-ins with passkey or smart card after wave 1
IAM-REQ-003 (Example)No standing Tier 0 privilege9.1, 9.2Directory and cloud role exportZero permanent assignments outside break-glass
IAM-REQ-004 (Example)Every service account has an owner11.2Inventory query100% owned; ownerless accounts disabled
IAM-REQ-005 (Example)Access reviews evidenced10.1Audit sampleEvery decision has reviewer, date and fulfilment evidence
[IAM-REQ-NNN][Requirement][Section][Method][Criterion]

Carry non-functional requirements (availability, sign-in latency, provisioning throughput) from the NFR Catalogue (requirements/nfr-catalogue).

16. Risks and decisions

16.1 Risks

IDRiskLikelihoodImpactMitigationOwner
RSK-001 (Example)HR data quality blocks automationHighHighData cleansing sprint in wave 0; exception queue[@hr-systems-lead]
RSK-002 (Example)Users lose passkeys and flood help deskMediumMediumTwo authenticators required; staffed recovery[@service-desk-lead]
RSK-003 (Example)Legacy apps cannot federateHighMediumGateway or replacement plan; compensating review[@app-portfolio-lead]
[RSK-NNN][Risk][L][I][Mitigation][@owner]

16.2 Decisions

ADRDecisionStatus
ADR-IAM-001 (Example)OIDC is the default for new applications; SAML only where the vendor lacks OIDCAccepted
ADR-IAM-002 (Example)Synced passkeys allowed for standard staff at AAL2; device-bound only for privilegedAccepted
[ADR-NNN][Decision][Status]

17. Glossary and references

17.1 Glossary

TermMeaning
IAL, AAL, FALIdentity, authentication and federation assurance levels in NIST SP 800-63-4
DIRMDigital identity risk management process in SP 800-63-4
PasskeyWebAuthn credential (public key pair) used instead of a password; synced or device-bound
Phishing resistantAuthentication that binds the response to the genuine site, so a look-alike site cannot reuse it
JMLJoiner, mover, leaver lifecycle events
SCIMSystem for Cross-domain Identity Management, a REST protocol for provisioning
PAMPrivileged access management
Break-glassEmergency account used only when normal access paths fail

17.2 References

ReferenceVersion or dateUse
NIST SP 800-63-4, Digital Identity Guidelines (with SP 800-63A-4, 63B-4, 63C-4), csrc.nist.govFinal, July 2025Assurance levels, DIRM, authenticator and federation requirements
NIST SP 800-207, Zero Trust ArchitectureAugust 2020Policy decision and enforcement model
OASIS Security Assertion Markup Language (SAML) V2.0OASIS Standard, March 2005, with approved errataFederation for legacy and SaaS apps
OpenID Connect Core 1.0 incorporating errata set 2December 2023Federation for new apps
RFC 9700, Best Current Practice for OAuth 2.0 Security (BCP 240)January 2025OAuth hardening
RFC 9449, OAuth 2.0 Demonstrating Proof of Possession (DPoP)2023Sender-constrained tokens
RFC 7643 and RFC 7644, SCIM 2.0 core schema and protocol; RFC 9865 cursor pagination; RFC 9967 SCIM profile for Security Event Tokens and asynchronous requestsSeptember 2015; 2025; 2026Provisioning
W3C Web Authentication Level 3W3C Recommendation, August 2026Passkeys, backup flags
OpenID Shared Signals Framework 1.0, CAEP 1.0, RISC 1.0Final, September 2025Session and account event sharing
SPIFFE specifications, spiffe.ioCurrentWorkload identity
[Internal standard][Version][Use]

Standard and licence note

Based on NIST SP 800-63-4 Digital Identity Guidelines (final, July 2025) and NIST SP 800-207, which are works of the US Government and not subject to copyright in the United States, and on the public specifications SAML 2.0 (OASIS), OpenID Connect Core 1.0 (OpenID Foundation), RFC 9700, RFC 9449, RFC 7643, RFC 7644, RFC 9865, RFC 9967 (IETF), W3C Web Authentication Level 3 and SPIFFE. Assurance levels are paraphrased in original wording; no specification text is reproduced. This template is original text written for this collection. Product names belong to their owners. Check the current official versions before use, because NIST publishes errata and the identity specifications continue to evolve. Template licence: MIT.

Plantillas relacionadas