Skip to main content

OpenID Connect support for OAuth Authorization Server

When sign-in scopes (openid / profile / email) are granted on an OAuth Authorization Server, this authorization server acts as an OpenID Connect authorization server and releases the member's sign-in information (claims) to the client. id_token issuance and claim retrieval from the userinfo endpoint are enabled only when the granted scope contains openid.

For how to configure an OAuth Authorization Server, see OAuth Authorization Server.

Basic information

ItemDescription
TypeOpenID Connect (id_token / userinfo / JWKS)
TargetOAuth Authorization Server (target domain API / Management / AdminMCP)
Use caseAn OAuth client needs to retrieve the member's sign-in information (claims)

Metadata

Accessing [Metadata URL] in the OAuth Authorization Server editor returns this authorization server's configuration (Authorization Server Metadata) as JSON. In addition to basic OAuth 2.0 items such as issuer, authorization_endpoint, and token_endpoint, the response includes the following items.

  • jwks_uri: URL of the JWKS endpoint
  • userinfo_endpoint: URL of the userinfo endpoint (when openid is among the issuable scopes)
  • subject_types_supported
  • id_token_signing_alg_values_supported (RS256)
  • claims_supported

The JWKS and userinfo endpoint URLs described below are both obtained from this response.

id_token

The token endpoint exchanges an authorization code, refresh token, or client credentials for an access token (its URL is available in the metadata as token_endpoint). When the granted scope contains openid, this endpoint's response includes an RS256-signed id_token (JWT) in addition to the access token.

The id_token always contains iss (issuer), sub (member ID), aud (client ID), iat, exp, and auth_time, plus nonce when a nonce was provided in the authorization request. For the claims added based on the profile and email scopes, see Scope-to-claim mapping.

JWKS endpoint

Serves the public key used to verify the id_token signature, as a JWK Set (RFC 7517). The endpoint URL is available in the metadata as jwks_uri. The signing key is managed per authorization server and is generated on first access.

userinfo endpoint

You can retrieve the member's claims using an access token.

ItemDescription
MethodGET / POST
AuthenticationAuthenticated with the Authorization: Bearer <access_token> header (passing the access token as a query parameter is not supported).
ResponseReturns the claims (always including sub) that correspond to the granted scopes, as JSON.

The endpoint URL is available in the metadata as userinfo_endpoint.

Scope-to-claim mapping

The claims returned in the id_token and from userinfo are determined by the granted scopes.

ScopeClaimSource
openidsubMember ID
profilenameFull name (family name + given name)
profilefamily_nameFamily name
profilegiven_nameGiven name
profilepreferred_usernameLogin ID
profileupdated_atMember update date/time (Unix time)
emailemailEmail address
emailemail_verifiedAlways true (a constant, because Kuroco has no email verification flow)

When a scope containing openid is requested, the consent screen shows the sign-in information to be shared with the client (the actual claim values) under "Shared information". You can review the member information that will actually be released, not just the scope names, before granting consent.


Support

If you have any other questions, please contact us or check out Our Slack Community.