Draft: draft-ietf-gnap-core-protocol

Commentary: Deploy Preview for gnap - core - protocol - editors - draft ready ! Explore the source changes : Inspect the deploy log : Browse the preview :
Paragraph (version A):
In some circumstances, the information needed at a given stage is
communicated out of band or is preconfigured between the components
or entities performing the roles.  For example, one entity can fulfil
multiple roles, and so explicit communication between the roles is
not necessary within the protocol flow.  Additionally some components
may not be involved in all use cases.  For example, a client instance
could be calling the AS just to get direct user information and have
no need to get an access token to call an RS.
Paragraph (version B):
In some circumstances, the information needed at a given stage is
communicated out of band or is preconfigured between the components
or entities performing the roles.  For example, one entity can
fulfill multiple roles, and so explicit communication between the
roles is not necessary within the protocol flow.  Additionally some
components may not be involved in all use cases.  For example, a
client instance could be calling the AS just to get direct user
information and have no need to get an access token to call an RS.
Paragraph (version A):
The client instance stores the continuation information from (2)
for use in (8) and (10).  The client instance then interaction-
redirect given by the AS in (2).
Paragraph (version A):
The user's directs their browser to the user code URI.  This URI
is stable and can be communicated via the client software's
documentation, the AS documentation, or the client software
itself.  Since it is assumed that the RO will interact with the AS
through a secondary device, the client instance does not provide a
mechanism to launch the RO's browser at this URI.
Paragraph (version B):
The client instance stores the continuation information from (2)
for use in (8) and (10).  The client instance then interaction-
usercode given by the AS in (2).
Paragraph (version B):
The users directs their browser to the user code URI.  This URI is
stable and can be communicated via the client software's
documentation, the AS documentation, or the client software
itself.  Since it is assumed that the RO will interact with the AS
through a secondary device, the client instance does not provide a
mechanism to launch the RO's browser at this URI.
Paragraph (version A):
The AS determines that the request is been authorized, the AS
grants access to the information in the form of response-token to
the client instance.  Note that response-subject is not generally
applicable in this use case, as there is no user involved.
Paragraph (version B):
The AS determines that the request has been authorized, the AS
grants access to the resource in the form of response-token to the
client instance.  Note that response-subject is not generally
applicable in this use case, as there is no user involved.
Paragraph (version A):
The RS validates the access token and determines that the access
token is expired The RS responds to the client instance with an
error.
Paragraph (version B):
The RS validates the access token and determines that the access
token is expired.  The RS responds to the client instance with an
error.
Paragraph (version A):
To start a request, the client instance sends RFC8259 document with
an object as its root.  Each member of the request object represents
a different aspect of the client instance's request.  Each field is
described in detail in a section below.
Paragraph (version B):
To start a request, the client instance sends a RFC8259 document with
an object as its root.  Each member of the request object represents
a different aspect of the client instance's request.  Each field is
described in detail in a section below.
Paragraph (version B):
Additional members of this request object can be defined by
extensions to this protocol as described in request-extending.
Paragraph (version A):
If the client instance has an instance identifier that the AS can use
to determine appropriate key information, the client instance can
send this instance identifier as a direct reference value in lieu of
the "client" object.  The instance identifier MAY be assigned to a
client instance at runtime through the response-dynamic-handles or
MAY be obtained in another fashion, such as a static registration
process at the AS.
Paragraph (version B):
If the client instance has an instance identifier that the AS can use
to determine appropriate key information, the client instance can
send this instance identifier as a direct reference value in lieu of
the "client" object.  The instance identifier MAY be assigned to a
client instance at runtime through a grant response (response-
dynamic-handles) or MAY be obtained in another fashion, such as a
static registration process at the AS.
Paragraph (version B):
In response to a client instance's request, the AS responds with a
JSON object as the HTTP entity body.  Each possible field is detailed
in the sections below.