Skip to content

Commit 79bec1c

Browse files
authored
Add SHOULD language about checking the issuer value (#172)
* Add SHOULD language about checking the issuer value * Make SHOULD and MUST and insist that the Receiver validate the iss on receving an event
1 parent 3442477 commit 79bec1c

File tree

1 file changed

+16
-3
lines changed

1 file changed

+16
-3
lines changed

openid-sharedsignals-framework-1_0.md

+16-3
Original file line numberDiff line numberDiff line change
@@ -902,7 +902,9 @@ In order to communicate events from a Transmitter to a Receiver, a Receiver
902902
MUST first create an Event Stream. An Event Receiver creates a stream by making
903903
an HTTP POST request to the Configuration Endpoint. On receiving a valid request
904904
the Event Transmitter responds with a "201 Created" response containing a
905-
[JSON][RFC7159] representation of the stream’s configuration in the body.
905+
[JSON][RFC7159] representation of the stream’s configuration in the body. The Receiver
906+
MUST check the response and confirm that the `iss` value matches the Issuer from
907+
which it received the Transmitter Configuration data.
906908

907909
If a stream already exists, and the Transmitter allows multiple streams with the
908910
same Receiver, the Event Transmitter MUST respond with a new stream ID. If the
@@ -997,7 +999,9 @@ Errors are signaled with HTTP status codes as follows:
997999
An Event Receiver gets the current configuration of a stream by making an HTTP
9981000
GET request to the Configuration Endpoint. On receiving a valid request, the
9991001
Event Transmitter responds with a "200 OK" response containing a [JSON][RFC7159]
1000-
representation of the stream’s configuration in the body.
1002+
representation of the stream’s configuration in the body. The Receiver
1003+
MUST check the response and confirm that the `iss` value matches the Issuer from
1004+
which it received the Transmitter Configuration data.
10011005

10021006
The GET request MAY include the "stream_id" as a query parameter in order to
10031007
identify the correct Event Stream. If the "stream_id" parameter is missing,
@@ -1194,7 +1198,8 @@ HTTP PATCH request to the Configuration Endpoint. The PATCH body contains a
11941198
[JSON][RFC7159] representation of the stream configuration properties to change. On
11951199
receiving a valid request, the Event Transmitter responds with a "200 OK"
11961200
response containing a [JSON][RFC7159] representation of the entire updated stream
1197-
configuration in the body.
1201+
configuration in the body. The Receiver MUST check the response and confirm that the
1202+
`iss` value matches the Issuer from which it received the Transmitter Configuration data.
11981203

11991204
The stream_id property MUST be present in the request. Other properties
12001205
MAY be present in the request. Any Receiver-Supplied property present in the
@@ -1282,6 +1287,8 @@ HTTP PUT request to the Configuration Endpoint. The PUT body contains a JSON
12821287
{{RFC7159}} representation of the new configuration. On receiving a valid
12831288
request, the Event Transmitter responds with a "200 OK" response containing a
12841289
JSON {{RFC7159}} representation of the updated stream configuration in the body.
1290+
The Receiver MUST check the response and confirm that the `iss` value matches the
1291+
Issuer from which it received the Transmitter Configuration data.
12851292

12861293
The stream_id and the full set of Receiver-Supplied properties MUST be present
12871294
in the PUT body, not only those specifically intended to be changed.
@@ -2081,6 +2088,12 @@ Sections 4.5, 4.6 and 4.7 of {{RFC8417}}. While current Id Token {{OpenID.Core}}
20812088
validators may not be using the "typ" header parameter, requiring it for SSF
20822089
SETs guarantees a distinct value for future validators.
20832090

2091+
## The "iss" Claim {#iss-claim}
2092+
The "iss" claim MUST match the "iss" value in the Stream Configuration data for the stream
2093+
that the event is sent on. Receivers MUST validate that this claim matches the "iss"
2094+
in the Stream Configuration data, as well as the Issuer from which the Receiver requested
2095+
the Transmitter Configuration data.
2096+
20842097
### The "exp" Claim {#exp-claim}
20852098
The "exp" claim MUST NOT be used in SSF SETs.
20862099

0 commit comments

Comments
 (0)