Skip to content

Commit fbad118

Browse files
committed
Add 'format' to stream config and normative examples in CAEP (each with different meanings)
1 parent 03e926c commit fbad118

6 files changed

+270
-269
lines changed

openid-caep-specification-1_0.html

Lines changed: 118 additions & 134 deletions
Large diffs are not rendered by default.

openid-caep-specification-1_0.md

Lines changed: 32 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ normative:
3838
NIST-AUTH:
3939
target: https://pages.nist.gov/800-63-3/sp800-63-3.html
4040
title: "Digital Identity Guidelines, Authentication and Lifecycle Management"
41-
author:
41+
author:
4242
-
4343
ins: P. Grassi
4444
name: Paul Grassi
@@ -52,7 +52,7 @@ normative:
5252
NIST-FED:
5353
target: https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-63c.pdf
5454
title: "Digital Identity Guidelines, Federation and Assertions"
55-
author:
55+
author:
5656
-
5757
ins: P. A. Grassi
5858
name: Paul A. Grassi
@@ -68,7 +68,7 @@ normative:
6868
-
6969
ins: E. M. Nadeau
7070
name: Ellen M. Nadeau
71-
NIST-IDPROOF:
71+
NIST-IDPROOF:
7272
target: https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-63a.pdf
7373
title: "Digital Identity Guidelines, Enrollment and Identity Proofing"
7474
author:
@@ -110,10 +110,10 @@ normative:
110110
name: John Bradley
111111
org: Yubico
112112
date: 2021-05
113-
WebAuthn:
113+
WebAuthn:
114114
target: https://www.w3.org/TR/webauthn/
115115
title: "Web Authentication: An API for accessing Public Key Credentials Level 2"
116-
author:
116+
author:
117117
-
118118
ins: D. Balfanz
119119
name: Dirk Balfanz
@@ -139,9 +139,9 @@ conform to the SSF Profile. This document specifies the event-types required to
139139
achieve this goal.
140140

141141
## Notational Considerations
142-
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD",
143-
"SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this
144-
document are to be interpreted as described in BCP 14 {{RFC2119}} {{RFC8174}}
142+
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD",
143+
"SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this
144+
document are to be interpreted as described in BCP 14 {{RFC2119}} {{RFC8174}}
145145
when, and only when, they appear in all capitals, as shown here.
146146

147147
# Optional Event Claims {#optional-event-claims}
@@ -150,7 +150,7 @@ definition.
150150

151151
event_timestamp
152152
: OPTIONAL, JSON number: the time at which the event described by this SET
153-
occurred. Its value is a JSON number representing the number of seconds
153+
occurred. Its value is a JSON number representing the number of seconds
154154
from 1970-01-01T0:0:0Z as measured in UTC until the date/time.
155155

156156
initiating_entity
@@ -210,15 +210,15 @@ Event Type URI:
210210

211211
`https://schemas.openid.net/secevent/caep/event-type/session-revoked`
212212

213-
Session Revoked signals that the session identified by the subject has been
214-
revoked. The explicit session identifier may be directly referenced in the
213+
Session Revoked signals that the session identified by the subject has been
214+
revoked. The explicit session identifier may be directly referenced in the
215215
subject or other properties of the session may be included to allow the
216216
receiver to identify applicable sessions.
217217

218-
When a Complex Claim is used as the subject, the revocation event applies
218+
When a Complex Claim is used as the subject, the revocation event applies
219219
to any session derived from matching those combined claims.
220220

221-
The actual reason why the session was revoked might be specified with the
221+
The actual reason why the session was revoked might be specified with the
222222
nested `reason_admin` and/or `reason_user` claims described in {{optional-event-claims}}.
223223

224224
### Event-Specific Claims {#session-revoked-claims}
@@ -260,6 +260,7 @@ NOTE: The event type URI is wrapped, the backslash is the continuation character
260260
"events": {
261261
"https://schemas.openid.net/secevent/caep/event-type/session-revoked": {
262262
"subject": {
263+
"format": "complex",
263264
"session": {
264265
"format": "opaque",
265266
"id": "dMTlD|1600802906337.16|16008.16"
@@ -298,6 +299,7 @@ NOTE: The event type URI is wrapped, the backslash is the continuation character
298299
"events": {
299300
"https://schemas.openid.net/secevent/caep/event-type/session-revoked": {
300301
"subject": {
302+
"format": "complex",
301303
"user": {
302304
"format": "iss_sub",
303305
"iss": "https://idp.example.com/123456789/",
@@ -333,10 +335,10 @@ Event Type URI:
333335

334336
`https://schemas.openid.net/secevent/caep/event-type/token-claims-change`
335337

336-
Token Claims Change signals that a claim in a token, identified by the
337-
subject claim, has changed.
338+
Token Claims Change signals that a claim in a token, identified by the
339+
subject claim, has changed.
338340

339-
The actual reason why the claims change occurred might be specified with the
341+
The actual reason why the claims change occurred might be specified with the
340342
nested `reason_admin` and/or `reason_user` claims made in {{optional-event-claims}}.
341343

342344
### Event-Specific Claims {#token-claims-change-claims}
@@ -435,14 +437,14 @@ Event Type URI:
435437

436438
`https://schemas.openid.net/secevent/caep/event-type/credential-change`
437439

438-
The Credential Change event signals that a credential was created, changed,
440+
The Credential Change event signals that a credential was created, changed,
439441
revoked or deleted. Credential Change scenarios include:
440442

441443
- password/PIN change/reset
442444
- certificate enrollment, renewal, revocation and deletion
443445
- second factor / passwordless credential enrollment or deletion (U2F, FIDO2, OTP, app-based)
444446

445-
The actual reason why the credential change occurred might be specified with the
447+
The actual reason why the credential change occurred might be specified with the
446448
nested `reason_admin` and/or `reason_user` claims made in {{optional-event-claims}}.
447449

448450
### Event-Specific Claims {#credential-change-claims}
@@ -522,19 +524,19 @@ Event Type URI:
522524

523525
`https://schemas.openid.net/secevent/caep/event-type/assurance-level-change`
524526

525-
The Assurance Level Change event signals that there has been a change in
526-
authentication method since the initial user login. This change can be from
527-
a weak authentication method to a strong authentication method, or vice versa.
527+
The Assurance Level Change event signals that there has been a change in
528+
authentication method since the initial user login. This change can be from
529+
a weak authentication method to a strong authentication method, or vice versa.
528530

529-
In the first scenario, Assurance Level Change will an increase, while in the
530-
second scenario it will be a decrease. For example, a user can start a session
531-
with Service Provider A using single factor authentication (such as a password).
532-
The user can then open another session with Service Provider B using
533-
two-factor authentication (such as OTP). In this scenario an increase
534-
Assurance Level Change event will signal to Service Provider A that user has
531+
In the first scenario, Assurance Level Change will an increase, while in the
532+
second scenario it will be a decrease. For example, a user can start a session
533+
with Service Provider A using single factor authentication (such as a password).
534+
The user can then open another session with Service Provider B using
535+
two-factor authentication (such as OTP). In this scenario an increase
536+
Assurance Level Change event will signal to Service Provider A that user has
535537
authenticated with a stronger authentication method.
536538

537-
The actual reason why the assurance level changed might be specified with the
539+
The actual reason why the assurance level changed might be specified with the
538540
nested `reason_admin` and/or `reason_user` claims made in {{optional-event-claims}}.
539541

540542
### Event-Specific Claims {#assurance-level-change-claims}
@@ -627,7 +629,7 @@ Event Type URI:
627629

628630
Device Compliance Change signals that a device's compliance status has changed.
629631

630-
The actual reason why the status change occurred might be specified with the
632+
The actual reason why the status change occurred might be specified with the
631633
nested `reason_admin` and/or `reason_user` claims made in {{optional-event-claims}}.
632634

633635
### Event-Specific Claims {#device-compliance-change-claims}
@@ -662,6 +664,7 @@ NOTE: The event type URI is wrapped, the backslash is the continuation character
662664
"events": {
663665
"https://schemas.openid.net/secevent/caep/event-type/device-compliance-change": {
664666
"subject": {
667+
"format": "complex",
665668
"device": {
666669
"format": "iss_sub",
667670
"iss": "https://idp.example.com/123456789/",

openid-caep-specification-1_0.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,7 @@ Cappalli & Tulshibagwale Standards Track [Page 4]
234234
"events": {
235235
"https://schemas.openid.net/secevent/caep/event-type/session-revoked": {
236236
"subject": {
237+
"format": "complex",
237238
"session": {
238239
"format": "opaque",
239240
"id": "dMTlD|1600802906337.16|16008.16"
@@ -276,7 +277,6 @@ Cappalli & Tulshibagwale Standards Track [Page 4]
276277

277278

278279

279-
280280
Cappalli & Tulshibagwale Standards Track [Page 5]
281281

282282
CAEP-Spec February 2023
@@ -290,6 +290,7 @@ Cappalli & Tulshibagwale Standards Track [Page 5]
290290
"events": {
291291
"https://schemas.openid.net/secevent/caep/event-type/session-revoked": {
292292
"subject": {
293+
"format": "complex",
293294
"user": {
294295
"format": "iss_sub",
295296
"iss": "https://idp.example.com/123456789/",
@@ -328,8 +329,7 @@ Cappalli & Tulshibagwale Standards Track [Page 5]
328329
https://schemas.openid.net/secevent/caep/event-type/token-claims-
329330
change
330331

331-
Token Claims Change signals that a claim in a token, identified by
332-
the subject claim, has changed.
332+
333333

334334

335335

@@ -338,6 +338,9 @@ Cappalli & Tulshibagwale Standards Track [Page 6]
338338
CAEP-Spec February 2023
339339

340340

341+
Token Claims Change signals that a claim in a token, identified by
342+
the subject claim, has changed.
343+
341344
The actual reason why the claims change occurred might be specified
342345
with the nested reason_admin and/or reason_user claims made in
343346
Section 2.
@@ -386,9 +389,6 @@ Cappalli & Tulshibagwale Standards Track [Page 6]
386389

387390

388391

389-
390-
391-
392392
Cappalli & Tulshibagwale Standards Track [Page 7]
393393

394394
CAEP-Spec February 2023
@@ -810,6 +810,7 @@ Cappalli & Tulshibagwale Standards Track [Page 14]
810810
"events": {
811811
"https://schemas.openid.net/secevent/caep/event-type/device-compliance-change": {
812812
"subject": {
813+
"format": "complex",
813814
"device": {
814815
"format": "iss_sub",
815816
"iss": "https://idp.example.com/123456789/",
@@ -836,7 +837,6 @@ Cappalli & Tulshibagwale Standards Track [Page 14]
836837

837838

838839

839-
840840
Cappalli & Tulshibagwale Standards Track [Page 15]
841841

842842
CAEP-Spec February 2023

openid-sharedsignals-framework-1_0.html

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2434,7 +2434,8 @@ <h5 id="name-creating-a-stream">
24342434
"urn:example:secevent:events:type_2",
24352435
"urn:example:secevent:events:type_3",
24362436
"urn:example:secevent:events:type_4"
2437-
]
2437+
],
2438+
"format": "email"
24382439
}
24392440
</pre>
24402441
</div>
@@ -2474,7 +2475,8 @@ <h5 id="name-creating-a-stream">
24742475
"events_delivered": [
24752476
"urn:example:secevent:events:type_2",
24762477
"urn:example:secevent:events:type_3"
2477-
]
2478+
],
2479+
"format": "email"
24782480
}
24792481
</pre>
24802482
</div>
@@ -2575,7 +2577,8 @@ <h5 id="name-reading-a-streams-configura">
25752577
"events_delivered": [
25762578
"urn:example:secevent:events:type_2",
25772579
"urn:example:secevent:events:type_3"
2578-
]
2580+
],
2581+
"format": "complex"
25792582
}
25802583
</pre>
25812584
</div>
@@ -2632,7 +2635,8 @@ <h5 id="name-reading-a-streams-configura">
26322635
"events_delivered": [
26332636
"urn:example:secevent:events:type_2",
26342637
"urn:example:secevent:events:type_3"
2635-
]
2638+
],
2639+
"format": "iss_sub"
26362640
},
26372641
{
26382642
"stream_id": "50b2d39934264897902c0581ba7c21a3",
@@ -2658,7 +2662,8 @@ <h5 id="name-reading-a-streams-configura">
26582662
"events_delivered": [
26592663
"urn:example:secevent:events:type_2",
26602664
"urn:example:secevent:events:type_3"
2661-
]
2665+
],
2666+
"format": "opaque"
26622667
}
26632668
]
26642669
</pre>
@@ -2927,7 +2932,8 @@ <h5 id="name-replacing-a-streams-configu">
29272932
"urn:example:secevent:events:type_2",
29282933
"urn:example:secevent:events:type_3",
29292934
"urn:example:secevent:events:type_4"
2930-
]
2935+
],
2936+
"format": "did"
29312937
}
29322938
</pre>
29332939
</div>
@@ -2968,7 +2974,8 @@ <h5 id="name-replacing-a-streams-configu">
29682974
"events_delivered": [
29692975
"urn:example:secevent:events:type_2",
29702976
"urn:example:secevent:events:type_3"
2971-
]
2977+
],
2978+
"format": "did"
29722979
}
29732980
</pre>
29742981
</div>

openid-sharedsignals-framework-1_0.md

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -887,7 +887,8 @@ Authorization: Bearer eyJ0b2tlbiI6ImV4YW1wbGUifQo=
887887
"urn:example:secevent:events:type_2",
888888
"urn:example:secevent:events:type_3",
889889
"urn:example:secevent:events:type_4"
890-
]
890+
],
891+
"format": "email"
891892
}
892893
~~~
893894
{: #figcreatestreamreq title="Example: Create Event Stream Request"}
@@ -922,7 +923,8 @@ Content-Type: application/json
922923
"events_delivered": [
923924
"urn:example:secevent:events:type_2",
924925
"urn:example:secevent:events:type_3"
925-
]
926+
],
927+
"format": "email"
926928
}
927929
~~~
928930
{: #figcreatestreamresp title="Example: Create Stream Response"}
@@ -991,7 +993,8 @@ Cache-Control: no-store
991993
"events_delivered": [
992994
"urn:example:secevent:events:type_2",
993995
"urn:example:secevent:events:type_3"
994-
]
996+
],
997+
"format": "complex"
995998
}
996999
~~~
9971000
{: title="Example: Read Stream Configuration Response" #figreadconfigresp}
@@ -1038,7 +1041,8 @@ Cache-Control: no-store
10381041
"events_delivered": [
10391042
"urn:example:secevent:events:type_2",
10401043
"urn:example:secevent:events:type_3"
1041-
]
1044+
],
1045+
"format": "iss_sub"
10421046
},
10431047
{
10441048
"stream_id": "50b2d39934264897902c0581ba7c21a3",
@@ -1064,7 +1068,8 @@ Cache-Control: no-store
10641068
"events_delivered": [
10651069
"urn:example:secevent:events:type_2",
10661070
"urn:example:secevent:events:type_3"
1067-
]
1071+
],
1072+
"format": "opaque"
10681073
}
10691074
]
10701075
~~~
@@ -1258,7 +1263,8 @@ Authorization: Bearer eyJ0b2tlbiI6ImV4YW1wbGUifQo=
12581263
"urn:example:secevent:events:type_2",
12591264
"urn:example:secevent:events:type_3",
12601265
"urn:example:secevent:events:type_4"
1261-
]
1266+
],
1267+
"format": "did"
12621268
}
12631269
~~~
12641270
{: title="Example: Replace Stream Configuration Request" #figreplaceconfigreq}
@@ -1294,7 +1300,8 @@ Cache-Control: no-store
12941300
"events_delivered": [
12951301
"urn:example:secevent:events:type_2",
12961302
"urn:example:secevent:events:type_3"
1297-
]
1303+
],
1304+
"format": "did"
12981305
}
12991306
~~~
13001307
{: title="Example: Replace Stream Configuration Response" #figreplaceconfigresp}

0 commit comments

Comments
 (0)