You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
title: OpenID Shared Signals and Events Framework Specification 1.0
@@ -71,17 +79,10 @@ This document defines an interoperability profile for implementations of the Sha
71
79
SSF and CAEP together enable improved session security outcomes. This specification defines the minimum required features from SSF and CAEP that an implementation MUST offer in order to be considered as an interoperable implementation. This document defines specific use cases. An implementation may support only a subset of the use cases defined herein, and SHALL be considered an interoperable implementation for the specific use-cases it supports. The following use-cases are considered as a part of this specification:
72
80
73
81
Session Revocation
74
-
: A CAEP Transmitter or Receiver is able to respectively generate or respond to the CAEP session-revoked event
82
+
: A SSF Transmitter or Receiver is able to respectively generate or respond to the CAEP session-revoked event
75
83
76
84
Credential Change
77
-
: A CAEP Transmitter or Receiver is able to respectively generate or respond to the CAEP credential-change event
78
-
79
-
# Definitions
80
-
CAEP Transmitter
81
-
: A SSF Transmitter that supports generating least one event type defined in the CAEP specification.
82
-
83
-
CAEP Receiver
84
-
: A SSF Receiver that supports receiving at least one event type defined in the CAEP specification.
85
+
: A SSF Transmitter or Receiver is able to respectively generate or respond to the CAEP credential-change event
85
86
86
87
# Common Requirements {#common-requirements}
87
88
The following requirements are common across all use-cases defined in this document.
@@ -93,7 +94,19 @@ Transmitters MUST implement the following features:
93
94
The Transmitter Configuration Metadata MUST have a `spec_version` field, and its value MUST be `1_0-ID2` or greater
94
95
95
96
### Delivery Method {#delivery-method}
96
-
The Transmitter Configuration Metadata MUST include the `delivery_methods_supported` field and its value MUST include the value `urn:ietf:rfc:8935` (i.e. the Push-Based Security Event Token (SET) Delivery Using HTTP specificaiton {{RFC8935}})
97
+
The Transmitter Configuration Metadata MUST include the `delivery_methods_supported` field.
98
+
99
+
### JWKS URI {#jwks-uri}
100
+
The Transmitter Configuration Metadata MUST include the `jwks_uri` field, and its value MUST provide the current signing key of the Transmitter.
The Transmitter Configuration Metadata MUST include the `configuration_endpoint` field. The specified endpoint MUST provide a way to Create a Stream.
104
+
105
+
### Status Endpoint {#status-endpoint}
106
+
The Transmitter Configuration Metadata MUST include the `status_endpoint` field. The specified endpoint MUST provide a way to Get and Update the Stream Status. The Transmitter MUST be able to pause and restart streams. For streams that are paused, the Transmitter MUST specify (offline) the resource constraints on how many events it can keep, or for how long. The way a Transmitter specifies this information is outside the scope of the SSF spec.
The Transmitter Configuration Metadata MUST include the `verification_endpoint` field. The specified endpoint MUST provide a way to request verification events to be sent.
97
110
98
111
### Authorization Schemes
99
112
The Transmitter Configuration Metadata MUST include the `authorization_schemes` field and its value MUST include the value
@@ -141,7 +154,12 @@ Receivers MUST be able to accept events using the Push-Based Security Event Toke
141
154
Receivers MUST assume that all subjects are implicitly included in a Stream, without any `AddSubject` method invocations.
142
155
143
156
## Event Subjects {#common-event-subjects}
144
-
Subjects of all events MUST support the `email` Simple Subject format.
157
+
The following subject identifier formats from "Subject Identifiers for Security Event Tokens" {{RFC9493}} MUST be supported:
158
+
159
+
* `email`
160
+
* `iss_sub`
161
+
162
+
Receivers MUST be prepared to accept events with any of the subject identifier formats specified in this section. Transmitters MUST be able to send events with at least one of subject identifier formats specified in this section.
145
163
146
164
## Event Signatures
147
165
All events MUST be signed using the `RS256` algorithm using a minimum of 2048-bit keys.
@@ -150,7 +168,7 @@ All events MUST be signed using the `RS256` algorithm using a minimum of 2048-bi
150
168
Implementations MAY choose to support one or more of the following use-cases in order to be considered interoperable implementations
151
169
152
170
## Session Revocation / Logout
153
-
In order to support session revocation or logout, implementations MUST support the CAEP event type `session-revoked`.
171
+
In order to support session revocation or logout, implementations MUST support the CAEP event type `session-revoked`. The `reason_admin` field of the event MUST be populated with a non-empty value.
154
172
155
173
## Credential Change
156
174
In order to support notifying and responding to credential changes, implementations MUST support the CAEP event type `credential-change`.
@@ -168,6 +186,6 @@ Within the `credential-change` event, implementations MUST support the following
168
186
* `fido2-roaming`
169
187
* `fido2-u2f`
170
188
171
-
172
-
189
+
`reason_admin`
190
+
: Transmitters MUST populate this value with a non-empty string.
0 commit comments