Skip to content

fix: improvements to the descriptions around RAR and CIBA#615

Merged
lrzhou25 merged 7 commits intoauth0:mainfrom
d4nt:rar-and-ciba-improvements
Feb 19, 2026
Merged

fix: improvements to the descriptions around RAR and CIBA#615
lrzhou25 merged 7 commits intoauth0:mainfrom
d4nt:rar-and-ciba-improvements

Conversation

@d4nt
Copy link
Contributor

@d4nt d4nt commented Feb 16, 2026

Description

This PR adds additional details regarding CIBA and RAR, and how consent approval works with push notifications in both PAR and CIBA flows.

References

https://auth0team.atlassian.net/browse/FGI-1851

Testing

Checklist

  • I've read and followed CONTRIBUTING.md.
  • I've tested the site build for this change locally.
  • I've made appropriate docs updates for any code or config changes.
  • I've coordinated with the Product Docs and/or Docs Management team about non-trivial changes.

@d4nt d4nt requested a review from a team as a code owner February 16, 2026 13:25
cgcladeraokta
cgcladeraokta previously approved these changes Feb 18, 2026
Copy link

@cgcladeraokta cgcladeraokta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes LGTM. I checked, and they are consistent with other HRI articles in the docs.

<ul>
<li><code>oidc-basic-profile</code> — Most used, web-based login.</li>
<li><code>oidc-ciba</code> — Client-Initiated Backchannel Authentication.</li>
<li><code>oidc-ciba-web-link</code> — Client-Initiated Backchannel Authentication, executing during once the user has logged into the verification web link.</li>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awkward syntax. Suggestion: Client-Initiated Backchannel Authentication, executes once the end user has logged into the verification web link.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.

Using [Rich Authorization Requests (RAR)](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-rar), clients can request and obtain <Tooltip tip="Fine-grained Authorization (FGA): Auth0 product allowing individual users access to specific objects or resources." cta="View Glossary" href="/docs/glossary?term=fine-grained+authorization">fine-grained authorization</Tooltip> data from <Tooltip tip="Resource Owner: Entity (such as a user or application) capable of granting access to a protected resource." cta="View Glossary" href="/docs/glossary?term=resource+owners">resource owners</Tooltip>, such as end users, during the [Authorization Code Flow with Pushed Authorization Requests (PAR)](/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/authorization-code-flow-with-par) and [Client-Initiated Backchannel Authentication Flow](/docs/get-started/authentication-and-authorization-flow/client-initiated-backchannel-authentication-flow).

In a Rich Authorization Request, the `authorization_details` parameter is a JSON array of objects. You can render the `authorization_details`, containing transaction details, in a consent prompt to the user in <Tooltip tip="Multi-factor authentication (MFA): User authentication process that uses a factor in addition to username and password such as a code via SMS." cta="View Glossary" href="/docs/glossary?term=Multi-factor+Authentication">Multi-factor Authentication</Tooltip> challenges.
A Rich Authorization request is one that uses the `authorization_details` parameter. This parameter accepts a JSON array of objects. Allowing more flexibility and structure than the `scope` parameter, `authorization_details` can include detailed information about the authorization being requested, such as the specific resources or actions the client wants to access on behalf of the user.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rich Authorization requests use the authorization_details parameter. This parameter accepts a JSON array of objects including detailed information about the authorization being requested, such as the specific resources or actions the client wants to access on behalf of the user.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I modified your proposal by adding "a JSON array of objects which may include detailed information"

You can render the requested `authorization_details` to the user using either:

* The browser, by using the Customized Consent Prompt
* A mobile application when using push notifications with the [Auth0 Guardian SDK or Guardian app](/docs/secure/multi-factor-authentication/auth0-guardian).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove ending punctuation

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.

<tr>
<td><code>instruction</code></td>
<td>A human-readable message to the user approving the request.</td>
<td><code>Please approve the request</code></td>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ending punctuation, line 49

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.

### Other notification channels

If youre not using the Auth0 Guardian app, then the `authorization_details` types does not need to use the Auth0 schema. Instead, they must follow these requirements:
If you're not using the Auth0 Guardian app displaying the `authorization_details` using the Customized Consent Prompt or your own custom mobile app using the Auth0 Guardian SDK, then the `authorization_details` types does not need to use the Auth0 schema. Instead, they must only follow these requirements:
Copy link
Contributor

@avanscoy avanscoy Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sentence is hard to parse, try:
The authorization_details type does not need to use the Auth0 schema if you aren't using the Auth0 Guardian app with Customize Consent Prompt displaying authorization_details or your own custom mobile app with the Auth0 Guardian SDK.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've not gone with your proposal exactly here, let me know what you think?

[API Access Policies for Applications](/docs/get-started/apis/api-access-policies-for-applications) control what applications can access your APIs and what scopes or `authorization_details` types they are allowed to access.

</Tab></Tabs>
You can check your API's current policy using the management API. Make a `GET` request to the [Get a resource server](https://auth0.com/docs/api/management/v2/resource-servers/get-resource-servers-by-id) endpoint and check the `subject_type_authorization` property in the response:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Management API

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.

--header 'Content-Type: application/json'
```

The `subject_type_authorization` property will have values for `client.policy` and `user.policy`. If the policy value is `allow_all` then applications or users can request all `authorization_details` types registered for the API. If the policy value is `require_client_grant`, then each type of `authorization_details` must be explicitly allowed by the client grant for that application. If the policy value is `deny_all`, then no application or user can request any of the `authorization_details` types registered for the API. See [Application Access to APIs: Client Grants](/docs/get-started/applications/application-access-to-apis-client-grants) for more information on how to manage client grants for applications.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tense.
The subject_type_authorization property has values for...

Inclusive language.
See Application Access to APIs: Client Grants for more information on how to manage client grants for applications.

To learn more on how to manage client grants for applications, read Application Access to APIs: Client Grants.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.


## Optional: Configure consent policy for the resource server

The resource server's consent policy determines whether Auth0 stores the `authorization_details` values and makes them available to mobile applications when a push notificaiton is sent.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

notification

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.


The resource server's consent policy determines whether Auth0 stores the `authorization_details` values and makes them available to mobile applications when a push notificaiton is sent.

The table below summarizes Auth0's standard consent policy behavior for a request containing `authorization_details`:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Auth0's standard consent policy behavior for a request containing authorization_details:

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.

<table class="table"><thead>
<tr>
<th><strong>Flow</strong></th>
<th><strong>Push notification sent?</strong></th>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should there be a question mark ^

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 83f0ff1.

@d4nt d4nt force-pushed the rar-and-ciba-improvements branch from b0682aa to ac4d1b9 Compare February 19, 2026 21:46
@d4nt d4nt force-pushed the rar-and-ciba-improvements branch from a5ea667 to e2212c2 Compare February 19, 2026 22:31
@lrzhou25 lrzhou25 merged commit 69e49d1 into auth0:main Feb 19, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants