@schemavaults/jwt 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -15,7 +15,9 @@ export interface GenerateIdTokenOptions {
|
|
|
15
15
|
nonce?: string | null;
|
|
16
16
|
/**
|
|
17
17
|
* Granted OIDC scopes; `email`/`email_verified` claims are only
|
|
18
|
-
* included when the `email` scope was granted
|
|
18
|
+
* included when the `email` scope was granted, and the profile name
|
|
19
|
+
* claims (`name`, `given_name`, `middle_name`, `family_name`,
|
|
20
|
+
* `preferred_username`) only when the `profile` scope was granted.
|
|
19
21
|
*/
|
|
20
22
|
scopes: readonly string[];
|
|
21
23
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SignJWT } from "jose";
|
|
2
2
|
import { getAuthServerAppId, getAuthServerUrl, } from "@schemavaults/app-definitions";
|
|
3
|
-
import { formatOidcSubClaim } from "@schemavaults/auth-common";
|
|
3
|
+
import { buildOidcProfileClaims, formatOidcSubClaim, } from "@schemavaults/auth-common";
|
|
4
4
|
import signAndVerifyAlg from "./sign_verify_alg";
|
|
5
5
|
import isValidUuid from "../utils/isValidUuid";
|
|
6
6
|
/**
|
|
@@ -43,6 +43,13 @@ export async function generateIdToken({ user, client_id, nonce, scopes, jwt_keys
|
|
|
43
43
|
claims.email = user.email;
|
|
44
44
|
claims.email_verified = user.email_verified ?? false;
|
|
45
45
|
}
|
|
46
|
+
if (scopes.includes("profile")) {
|
|
47
|
+
// OIDC Core §5.1 profile-scoped claims, derived from the user's
|
|
48
|
+
// stored name fields (the `name` claim prefers the public display
|
|
49
|
+
// name). Claims with no stored value are omitted, and /userinfo
|
|
50
|
+
// derives the same claims via the same builder.
|
|
51
|
+
Object.assign(claims, buildOidcProfileClaims(user));
|
|
52
|
+
}
|
|
46
53
|
const id_token = await new SignJWT(claims)
|
|
47
54
|
.setProtectedHeader({
|
|
48
55
|
alg: signAndVerifyAlg,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate_id_token.js","sourceRoot":"","sources":["../../src/jwt/generate_id_token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,MAAM,CAAC;AAC/C,OAAO,EACL,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"generate_id_token.js","sourceRoot":"","sources":["../../src/jwt/generate_id_token.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@schemavaults/jwt",
|
|
3
3
|
"description": "Utility functions for authentication and authorization for use from the auth server or a resource server",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.13.0",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"private": false,
|
|
7
7
|
"repository": {
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"zod": "3.25.8",
|
|
18
18
|
"jose": "6.1.3",
|
|
19
|
-
"@schemavaults/auth-common": "0.
|
|
19
|
+
"@schemavaults/auth-common": "0.25.0",
|
|
20
20
|
"@schemavaults/app-definitions": "0.12.0"
|
|
21
21
|
},
|
|
22
22
|
"scripts": {
|