FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV...

47
FIPS 201 Update: Federation, PIV, and Derived PIV Justin Richer

Transcript of FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV...

Page 1: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

FIPS 201 Update:Federation, PIV, and Derived PIV

Justin Richer

Page 2: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

What is federation?

A process that allows the conveyance of identity and authentication information across a set of networked systems.

- NIST SP 800-63-3 Appendix A

PIV Business Requirements Meeting 2

Page 3: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Federation protocols

PIV Business Requirements Meeting 3

Page 4: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Federation agreements

• How does the RP trust the IdP?

• How does the IdP trust the RP?

• How does the user trust any of this?

• Who gets in trouble when something goes wrong?

PIV Business Requirements Meeting 4

Page 5: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Point to point connection

PIV Business Requirements Meeting 5

Page 6: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Federation Authority

PIV Business Requirements Meeting 6

Page 7: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Is it just like authentication?

PIV Business Requirements Meeting 7

Identity Proofing

Authenticators

Verification

Subscriber

AdditionalSubscribers

CSP

AdditionalRPs

RP

Page 8: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Not the same process

• In Authentication

– Subscriber presents authenticators to the RP

• In Federation:

– Subscriber presents authenticators to the IdP

– IdP provides identity assertion to the RP

PIV Business Requirements Meeting 8

Page 9: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Authenticators are here

PIV Business Requirements Meeting 9

Page 10: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Authenticators are NOT here

PIV Business Requirements Meeting 10

Page 11: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Assertions are here

PIV Business Requirements Meeting 11

Page 12: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

What is an assertion?

A statement from a IdP to an RP that contains information about a subscriber’s authenticated state at the IdP. Assertions may also contain verified attributes about the subscriber.

PIV Business Requirements Meeting 12

Page 13: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

What’s in an assertion

PIV Business Requirements Meeting 13

Cryptographic protection

Authentication Event Information

• Validity period of assertion• Target of the assertion• Issuer of the assertion• Type of authenticator(s)• Time of authentication• Key references

Subscriber Information

• Identifier• Proofing level• Name• Email• Profile• Roles and rights

Page 14: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

What’s in an assertion (minimal edition)

PIV Business Requirements Meeting 14

Cryptographic protection

Authentication Event Information

• Validity period of assertion• Target of the assertion• Issuer of the assertion

Subscriber Information

• Identifier

Page 15: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Why does this matter?

Technology SP 800-63-2 SP-800-63-3

Browser cookies Assertion

X.509 certificate Assertion?

Kerberos ticket Assertion

SAML Assertion

OIDC ID Token Assertion (Probably)

PIV Business Requirements Meeting 15

Page 16: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Why does this matter?

Technology SP 800-63-2 SP-800-63-3

Browser cookies Assertion Session management

X.509 certificate Assertion? Authenticator

Kerberos ticket Assertion “Not truly federation”

SAML Assertion Assertion

OIDC ID Token Assertion (Probably) Assertion

PIV Business Requirements Meeting 16

Page 17: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

In other words:

Derived PIV (and other PKI) used to be considered “federation” but it now falls under the “authenticator” umbrella.

But you can federate with PIV through a federation protocol.

PIV Business Requirements Meeting 17

Page 18: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Federation with PIV

PIV Business Requirements Meeting 18

Authenticate to IdP using PIV

Page 19: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Why federate?

• Abstraction layer

• Attribute disclosure

• Timeliness

• Cross-boundary

• RP Control

PIV Business Requirements Meeting 19

Page 20: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Abstraction layer across authenticators

PIV Business Requirements Meeting 20

Page 21: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Selective attribute disclosure

PIV Business Requirements Meeting 21

Page 22: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Time-bound

PIV Business Requirements Meeting 22

Page 23: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Can cross boundaries

PIV Business Requirements Meeting 23

Agency A

Agency B

Page 24: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Can work internally

PIV Business Requirements Meeting 24

Agency A

Page 25: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

RP maps subscriber to local user

PIV Business Requirements Meeting 25

Page 26: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

RP controls session and re-authentication

PIV Business Requirements Meeting 26

Page 27: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Federation in parallel with authenticators

• Different classes of users

– Eg., External vs. internal

• Combine authenticators for users

• Bind external accounts

PIV Business Requirements Meeting 27

Page 28: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

PIV Business Requirements Meeting 28

Page 29: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

PIV Business Requirements Meeting 29

Shared secret authenticator

Page 30: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

PIV Business Requirements Meeting 30

(Deprecated 2nd factor out of band authenticator over SMS sshhh….)

Page 31: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

PIV Business Requirements Meeting 31

Hardware based cryptographicauthenticator smartcard

Page 32: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

PIV Business Requirements Meeting 32

Federation (mostly SAML)

Page 33: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Assurance Levels

• IAL: How strongly someone is proofed for an account

• AAL: How trustworthy the authentication event is

• FAL: How strongly an assertion is conveyed between federated systems using a federated protocol

PIV Business Requirements Meeting 33

Page 34: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

FAL Considerations

• Aspects of the federation protocol

– Protection of the assertion

– Protection of subscriber attributes

• Requirements change based on how assertions are presented

• Does not account for federation agreement

PIV Business Requirements Meeting 34

Page 35: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Federation Assurance Level (FAL)

FAL1 FAL2 FAL3

Assertion type Signed Signed & Encrypted Signed, Encrypted, & Holder-of-Key

Subscriber attributes Yes (if backchannel) Yes Yes

Examples OIDCSAML artifact binding

OIDC with encrypted ID tokenSAML with encrypted assertion

OIDC or SAML plus secondary key-based authenticator (certificate, FIDO, etc)

PIV Business Requirements Meeting 35

Page 36: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Which FAL?

• FAL1 is good for most use cases– Requires signatures, audience restriction, replay protection, etc.

– Especially when subscriber attributes are sent in the backchannel, separate from the assertion

• FAL2 increases audience restriction– At the cost of key management

• FAL3 is forward-looking– Multiple keys and presentations

– Hard to reach (by design)

PIV Business Requirements Meeting 36

Page 37: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Interoperability

• In the past: interoperable authenticators

• Now: interoperable federation profiles

PIV Business Requirements Meeting 37

Page 38: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Using federation protocols

• OpenID Connect (OIDC)

– Supports browser and mobile

– iGov profile from OIDF

• Security Assertion Markup Language (SAML)

– Profile available for browsers

– eGov profile from Kantara

PIV Business Requirements Meeting 38

Page 39: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

iGov

• OpenID Foundation draft standard

• Increase security and interoperability of OIDC

• Require all clients to have and use keys

• Restrict less secure options (implicit flow, URL matching)

• Require discovery and registration support

PIV Business Requirements Meeting 39

Page 40: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

eGov

• Kantara Initiative profile

• Increase security and interoperability of SAML

• Require metadata for discovery

• Require signatures and verification

PIV Business Requirements Meeting 40

Page 41: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Are you federating today?

• Which protocol and profile are you using?

– As an IdP or an RP or both?

• What is the trust agreement?

• Do you comply with SP 800-63-3 C?

– If so, at which FALs?

PIV Business Requirements Meeting 41

Page 42: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Moving forward

• What would a USG/FIPS-specific federation profile contain?

PIV Business Requirements Meeting 42

Page 43: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

PIV Business Requirements Meeting 43

Questions?

Page 44: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Users are here

PIV Business Requirements Meeting 44

Page 45: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Dynamic Registration

PIV Business Requirements Meeting 45

Page 46: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

Identity Broker

PIV Business Requirements Meeting 46

Page 47: FIPS 201 Update - CSRC · SAML Assertion Assertion OIDC ID Token Assertion (Probably) Assertion PIV Business Requirements Meeting 16. In other words: Derived PIV (and other PKI) used

One example of FAL3

PIV Business Requirements Meeting 47

Primary Authentication

Proof of KeyPresentation

Identity Information

Redirects

Subscriber

AdditionalSubscribers

AdditionalIdPs

IdP

AdditionalRPs

RP

Key Reference