feat: add OIDC subject claim fallbacks

This commit is contained in:
croatialu
2026-04-16 18:07:57 +08:00
parent addef55f30
commit d110dd2bcb
5 changed files with 45 additions and 0 deletions
+18
View File
@@ -112,6 +112,24 @@ describe("Configuration YAML file loading", () => {
expect(config.oidc?.enabled).toBe(false);
});
test("oidc.subject_claims can be configured from YAML", async () => {
const filePath = "/config/oidc-subject-claims.yaml";
writeYaml(filePath, {
headscale: { url: "http://localhost:8080" },
server: { cookie_secret: "thirtytwo-character-cookiesecret" },
oidc: {
issuer: "https://accounts.google.com",
client_id: "my-client-id",
client_secret: "my-client-secret",
headscale_api_key: "my-api-key",
subject_claims: ["open_id", "email"],
},
});
const config = await loadConfig(filePath);
expect(config.oidc?.subject_claims).toEqual(["open_id", "email"]);
});
test("partial oidc config with enabled field can be parsed", async () => {
const filePath = "/config/oidc-partial.yaml";
writeYaml(filePath, {