Skip to content

feat(experience): add generic app access denied page#8897

Merged
charIeszhao merged 1 commit into
masterfrom
charles-log-13487-add-generic-sie-access-denied-experience
Jun 2, 2026
Merged

feat(experience): add generic app access denied page#8897
charIeszhao merged 1 commit into
masterfrom
charles-log-13487-add-generic-sie-access-denied-experience

Conversation

@charIeszhao
Copy link
Copy Markdown
Member

Summary

Add a generic Sign-in Experience access denied state for app-level access control denials on the consent page.

When the consent info request or consent submission returns oidc.access_denied, the consent page now renders a terminal access denied error page instead of leaving users on a blank/toast-only state. The denied page uses generic copy and removes the authorize/cancel actions so denied users cannot continue to the application from this state.

Stacked on #8882.

Testing

Unit tests

Checklist

  • .changeset
  • unit tests
  • integration tests
  • necessary TSDoc comments

Copilot AI review requested due to automatic review settings May 28, 2026 13:16
@charIeszhao charIeszhao requested a review from simeng-li as a code owner May 28, 2026 13:16
@github-actions github-actions Bot added the feature Cool stuff label May 28, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 28, 2026

COMPARE TO master

Total Size Diff ⚠️ 📈 +12.27 KB

Diff by File
Name Diff
packages/core/src/middleware/koa-auto-consent.test.ts 📈 +4.06 KB
packages/core/src/middleware/koa-auto-consent.ts 📈 +673 Bytes
packages/core/src/routes/interaction/consent/index.ts 📈 +46 Bytes
packages/core/src/tenants/Tenant.ts 📈 +110 Bytes
packages/experience/src/pages/Consent/index.test.tsx 📈 +3.08 KB
packages/experience/src/pages/Consent/index.tsx 📈 +699 Bytes
packages/integration-tests/src/tests/api/application-access-control.test.ts 📈 +262 Bytes
packages/phrases-experience/src/locales/ar/error/index.ts 📈 +226 Bytes
packages/phrases-experience/src/locales/cs/error/index.ts 📈 +179 Bytes
packages/phrases-experience/src/locales/de/error/index.ts 📈 +191 Bytes
packages/phrases-experience/src/locales/en/error/index.ts 📈 +175 Bytes
packages/phrases-experience/src/locales/es/error/index.ts 📈 +181 Bytes
packages/phrases-experience/src/locales/fr/error/index.ts 📈 +198 Bytes
packages/phrases-experience/src/locales/it/error/index.ts 📈 +174 Bytes
packages/phrases-experience/src/locales/ja/error/index.ts 📈 +217 Bytes
packages/phrases-experience/src/locales/ko/error/index.ts 📈 +191 Bytes
packages/phrases-experience/src/locales/pl-pl/error/index.ts 📈 +177 Bytes
packages/phrases-experience/src/locales/pt-br/error/index.ts 📈 +183 Bytes
packages/phrases-experience/src/locales/pt-pt/error/index.ts 📈 +180 Bytes
packages/phrases-experience/src/locales/ru/error/index.ts 📈 +240 Bytes
packages/phrases-experience/src/locales/th/error/index.ts 📈 +338 Bytes
packages/phrases-experience/src/locales/tr-tr/error/index.ts 📈 +166 Bytes
packages/phrases-experience/src/locales/uk-ua/error/index.ts 📈 +262 Bytes
packages/phrases-experience/src/locales/zh-cn/error/index.ts 📈 +135 Bytes
packages/phrases-experience/src/locales/zh-hk/error/index.ts 📈 +132 Bytes
packages/phrases-experience/src/locales/zh-tw/error/index.ts 📈 +138 Bytes

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a terminal generic access-denied state to the Sign-in Experience consent flow for app-level access control denials.

Changes:

  • Detects oidc.access_denied errors from consent info loading and consent submission.
  • Renders a navbar-hidden ErrorPage with generic access-denied copy instead of leaving the user in the normal consent flow.
  • Adds unit tests and localized phrases for the new error state.

Reviewed changes

Copilot reviewed 22 out of 22 changed files in this pull request and generated no comments.

Show a summary per file
File Description
packages/experience/src/pages/Consent/index.tsx Adds access-denied handling and terminal error page rendering.
packages/experience/src/pages/Consent/util.ts Adds helper to identify OIDC access-denied HTTP errors.
packages/experience/src/pages/Consent/index.test.tsx Covers denied consent info and denied consent submission flows.
packages/phrases-experience/src/locales/en/error/index.ts Adds English access-denied phrases.
packages/phrases-experience/src/locales/ar/error/index.ts Adds Arabic access-denied phrases.
packages/phrases-experience/src/locales/cs/error/index.ts Adds Czech access-denied phrases.
packages/phrases-experience/src/locales/de/error/index.ts Adds German access-denied phrases.
packages/phrases-experience/src/locales/es/error/index.ts Adds Spanish access-denied phrases.
packages/phrases-experience/src/locales/fr/error/index.ts Adds French access-denied phrases.
packages/phrases-experience/src/locales/it/error/index.ts Adds Italian access-denied phrases.
packages/phrases-experience/src/locales/ja/error/index.ts Adds Japanese access-denied phrases.
packages/phrases-experience/src/locales/ko/error/index.ts Adds Korean access-denied phrases.
packages/phrases-experience/src/locales/pl-pl/error/index.ts Adds Polish access-denied phrases.
packages/phrases-experience/src/locales/pt-br/error/index.ts Adds Brazilian Portuguese access-denied phrases.
packages/phrases-experience/src/locales/pt-pt/error/index.ts Adds European Portuguese access-denied phrases.
packages/phrases-experience/src/locales/ru/error/index.ts Adds Russian access-denied phrases.
packages/phrases-experience/src/locales/th/error/index.ts Adds Thai access-denied phrases.
packages/phrases-experience/src/locales/tr-tr/error/index.ts Adds Turkish access-denied phrases.
packages/phrases-experience/src/locales/uk-ua/error/index.ts Adds Ukrainian access-denied phrases.
packages/phrases-experience/src/locales/zh-cn/error/index.ts Adds Simplified Chinese access-denied phrases.
packages/phrases-experience/src/locales/zh-hk/error/index.ts Adds Hong Kong Traditional Chinese access-denied phrases.
packages/phrases-experience/src/locales/zh-tw/error/index.ts Adds Taiwan Traditional Chinese access-denied phrases.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@charIeszhao charIeszhao force-pushed the charles-log-13486-enforce-app-access-during-authorization-and-token branch from 4c936b0 to 6ee5bc7 Compare May 29, 2026 10:38
@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from 100819a to e08b371 Compare June 1, 2026 14:10
@github-actions github-actions Bot added size/m and removed size/m labels Jun 1, 2026
Comment thread packages/experience/src/pages/Consent/index.tsx Outdated
@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from e08b371 to a6d3565 Compare June 2, 2026 02:57
@github-actions github-actions Bot added size/m and removed size/m labels Jun 2, 2026
@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from a6d3565 to dc8bd68 Compare June 2, 2026 03:09
@github-actions github-actions Bot added size/l and removed size/m labels Jun 2, 2026
Base automatically changed from charles-log-13486-enforce-app-access-during-authorization-and-token to master June 2, 2026 03:12
@github-actions github-actions Bot added size/xl and removed size/l labels Jun 2, 2026
@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from dc8bd68 to 9ed8b35 Compare June 2, 2026 03:15
Copilot AI review requested due to automatic review settings June 2, 2026 03:16
@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from 9ed8b35 to 63d6f7b Compare June 2, 2026 03:16
@github-actions github-actions Bot removed the size/xl label Jun 2, 2026
@github-actions github-actions Bot added the size/l label Jun 2, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 26 out of 26 changed files in this pull request and generated no new comments.

@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from 63d6f7b to 31e509b Compare June 2, 2026 03:37
@github-actions github-actions Bot added size/l and removed size/l labels Jun 2, 2026
Copilot AI review requested due to automatic review settings June 2, 2026 04:08
@charIeszhao charIeszhao force-pushed the charles-log-13487-add-generic-sie-access-denied-experience branch from 31e509b to f176bdc Compare June 2, 2026 04:08
@github-actions github-actions Bot added size/l and removed size/l labels Jun 2, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 26 out of 26 changed files in this pull request and generated no new comments.

@charIeszhao charIeszhao merged commit 9ef7397 into master Jun 2, 2026
44 of 46 checks passed
@charIeszhao charIeszhao deleted the charles-log-13487-add-generic-sie-access-denied-experience branch June 2, 2026 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

3 participants