Skip to content

Commit

Permalink
Remove stale OIDC aware docs and tests (#28805)
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
  • Loading branch information
t3chguy authored Dec 23, 2024
1 parent 1294395 commit 4e1bd69
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 59 deletions.
22 changes: 1 addition & 21 deletions docs/oidc.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,9 @@
# OIDC and delegated authentication

## Compatibility/OIDC-aware mode

[MSC2965: OIDC provider discovery](https://github.com/matrix-org/matrix-spec-proposals/pull/2965)
[MSC3824: OIDC aware clients](https://github.com/matrix-org/matrix-spec-proposals/pull/3824)
This mode uses an SSO flow to gain a `loginToken` from the authentication provider, then continues with SSO login.
Element Web uses [MSC2965: OIDC provider discovery](https://github.com/matrix-org/matrix-spec-proposals/pull/2965) to discover the configured provider.
Wherever valid MSC2965 configuration is discovered, OIDC-aware login flow will be the only option offered.

## (🧪Experimental) OIDC-native flow

Can be enabled by a config-level-only setting in `config.json`

```json
{
"features": {
"feature_oidc_native_flow": true
}
}
```

See https://areweoidcyet.com/client-implementation-guide/ for implementation details.

Element Web uses [MSC2965: OIDC provider discovery](https://github.com/matrix-org/matrix-spec-proposals/pull/2965) to discover the configured provider.
Where OIDC native login flow is enabled and valid MSC2965 configuration is discovered, OIDC native login flow will be the only login option offered.
Where a valid MSC2965 configuration is discovered, OIDC native login flow will be the only login option offered.
Element Web will attempt to [dynamically register](https://openid.net/specs/openid-connect-registration-1_0.html) with the configured OP.
Then, authentication will be completed [as described here](https://areweoidcyet.com/client-implementation-guide/).

Expand Down
34 changes: 0 additions & 34 deletions playwright/e2e/oidc/oidc-aware.spec.ts

This file was deleted.

4 changes: 0 additions & 4 deletions playwright/e2e/oidc/oidc-native.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ test.describe("OIDC Native", { tag: ["@no-firefox", "@no-webkit"] }, () => {
test.skip(isDendrite, "does not yet support MAS");
test.slow(); // trace recording takes a while here

test.use({
labsFlags: ["feature_oidc_native_flow"],
});

test("can register the oauth2 client and an account", async ({ context, page, homeserver, mailhog, mas }) => {
const tokenUri = `http://localhost:${mas.port}/oauth2/token`;
const tokenApiPromise = page.waitForRequest(

Check failure on line 19 in playwright/e2e/oidc/oidc-native.spec.ts

View workflow job for this annotation

GitHub Actions / Run Tests [Chrome] 2/6

[Chrome] › oidc/oidc-native.spec.ts:17:9 › OIDC Native › can register the oauth2 client and an account @no-firefox @no-webkit

1) [Chrome] › oidc/oidc-native.spec.ts:17:9 › OIDC Native › can register the oauth2 client and an account @no-firefox @no-webkit Error: page.waitForRequest: Test timeout of 90000ms exceeded. 17 | test("can register the oauth2 client and an account", async ({ context, page, homeserver, mailhog, mas }) => { 18 | const tokenUri = `http://localhost:${mas.port}/oauth2/token`; > 19 | const tokenApiPromise = page.waitForRequest( | ^ 20 | (request) => request.url() === tokenUri && request.postDataJSON()["grant_type"] === "authorization_code", 21 | ); 22 | at /home/runner/work/element-web/element-web/playwright/e2e/oidc/oidc-native.spec.ts:19:38

Check failure on line 19 in playwright/e2e/oidc/oidc-native.spec.ts

View workflow job for this annotation

GitHub Actions / Run Tests [Chrome] 2/6

[Chrome] › oidc/oidc-native.spec.ts:17:9 › OIDC Native › can register the oauth2 client and an account @no-firefox @no-webkit

1) [Chrome] › oidc/oidc-native.spec.ts:17:9 › OIDC Native › can register the oauth2 client and an account @no-firefox @no-webkit Error: page.waitForRequest: Test timeout of 90000ms exceeded. 17 | test("can register the oauth2 client and an account", async ({ context, page, homeserver, mailhog, mas }) => { 18 | const tokenUri = `http://localhost:${mas.port}/oauth2/token`; > 19 | const tokenApiPromise = page.waitForRequest( | ^ 20 | (request) => request.url() === tokenUri && request.postDataJSON()["grant_type"] === "authorization_code", 21 | ); 22 | at /home/runner/work/element-web/element-web/playwright/e2e/oidc/oidc-native.spec.ts:19:38
Expand Down

0 comments on commit 4e1bd69

Please sign in to comment.