Skip to content

Commit 2db0dbe

Browse files
authored
fix client id issuance date should only be sent when generated (#775)
1 parent 9d2a0ae commit 2db0dbe

File tree

3 files changed

+3
-2
lines changed

3 files changed

+3
-2
lines changed

src/server/auth/clients.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@ export interface OAuthRegisteredClientsStore {
1616
*
1717
* If unimplemented, dynamic client registration is unsupported.
1818
*/
19-
registerClient?(client: Omit<OAuthClientInformationFull, "client_id">): OAuthClientInformationFull | Promise<OAuthClientInformationFull>;
19+
registerClient?(client: Omit<OAuthClientInformationFull, "client_id" | "client_id_issued_at">): OAuthClientInformationFull | Promise<OAuthClientInformationFull>;
2020
}

src/server/auth/handlers/register.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,7 @@ describe('Client Registration Handler', () => {
236236

237237
expect(response.status).toBe(201);
238238
expect(response.body.client_id).toBeUndefined();
239+
expect(response.body.client_id_issued_at).toBeUndefined();
239240
});
240241

241242
it('handles client with all metadata fields', async () => {

src/server/auth/handlers/register.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,12 +99,12 @@ export function clientRegistrationHandler({
9999
let clientInfo: Omit<OAuthClientInformationFull, "client_id"> & { client_id?: string } = {
100100
...clientMetadata,
101101
client_secret: clientSecret,
102-
client_id_issued_at: clientIdIssuedAt,
103102
client_secret_expires_at: clientSecretExpiresAt,
104103
};
105104

106105
if (clientIdGeneration) {
107106
clientInfo.client_id = crypto.randomUUID();
107+
clientInfo.client_id_issued_at = clientIdIssuedAt;
108108
}
109109

110110
clientInfo = await clientsStore.registerClient!(clientInfo);

0 commit comments

Comments
 (0)