@tinyrack/tinyauth-server 0.0.15 → 0.1.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.
Files changed (136) hide show
  1. package/dist/entrypoints/app.d.ts +49 -2
  2. package/dist/entrypoints/app.d.ts.map +1 -1
  3. package/dist/entrypoints/app.js +5 -0
  4. package/dist/entrypoints/app.js.map +1 -1
  5. package/dist/entrypoints/database/postgres/postgres.d.ts.map +1 -1
  6. package/dist/entrypoints/database/postgres/postgres.js +1 -0
  7. package/dist/entrypoints/database/postgres/postgres.js.map +1 -1
  8. package/dist/entrypoints/database/sqlite/sqlite.d.ts.map +1 -1
  9. package/dist/entrypoints/database/sqlite/sqlite.js +1 -0
  10. package/dist/entrypoints/database/sqlite/sqlite.js.map +1 -1
  11. package/dist/entrypoints/identity-providers/apple.d.ts +1 -0
  12. package/dist/entrypoints/identity-providers/apple.d.ts.map +1 -1
  13. package/dist/entrypoints/identity-providers/apple.js +1 -0
  14. package/dist/entrypoints/identity-providers/apple.js.map +1 -1
  15. package/dist/entrypoints/identity-providers/generic-oauth.d.ts +2 -0
  16. package/dist/entrypoints/identity-providers/generic-oauth.d.ts.map +1 -1
  17. package/dist/entrypoints/identity-providers/generic-oauth.js +2 -0
  18. package/dist/entrypoints/identity-providers/generic-oauth.js.map +1 -1
  19. package/dist/lib/config/client.d.ts.map +1 -1
  20. package/dist/lib/config/client.js +5 -1
  21. package/dist/lib/config/client.js.map +1 -1
  22. package/dist/lib/config/identity-providers.d.ts +4 -0
  23. package/dist/lib/config/identity-providers.d.ts.map +1 -1
  24. package/dist/lib/config/identity-providers.js +25 -8
  25. package/dist/lib/config/identity-providers.js.map +1 -1
  26. package/dist/lib/config/resolved.d.ts +2 -0
  27. package/dist/lib/config/resolved.d.ts.map +1 -1
  28. package/dist/lib/config/url-policy.d.ts +4 -0
  29. package/dist/lib/config/url-policy.d.ts.map +1 -0
  30. package/dist/lib/config/url-policy.js +38 -0
  31. package/dist/lib/config/url-policy.js.map +1 -0
  32. package/dist/lib/pkce.d.ts.map +1 -1
  33. package/dist/lib/pkce.js +8 -1
  34. package/dist/lib/pkce.js.map +1 -1
  35. package/dist/middleware/csrf.d.ts +2 -0
  36. package/dist/middleware/csrf.d.ts.map +1 -0
  37. package/dist/middleware/csrf.js +51 -0
  38. package/dist/middleware/csrf.js.map +1 -0
  39. package/dist/middleware/session.d.ts.map +1 -1
  40. package/dist/middleware/session.js +2 -0
  41. package/dist/middleware/session.js.map +1 -1
  42. package/dist/repositories/revoked-token.repository.d.ts +20 -0
  43. package/dist/repositories/revoked-token.repository.d.ts.map +1 -1
  44. package/dist/repositories/revoked-token.repository.js +44 -1
  45. package/dist/repositories/revoked-token.repository.js.map +1 -1
  46. package/dist/routes/api/auth/passkey/verify/post.d.ts.map +1 -1
  47. package/dist/routes/api/auth/passkey/verify/post.js +1 -1
  48. package/dist/routes/api/auth/passkey/verify/post.js.map +1 -1
  49. package/dist/routes/api/index.d.ts +38 -0
  50. package/dist/routes/api/index.d.ts.map +1 -1
  51. package/dist/routes/api/oauth/_provider/authorize/get.d.ts.map +1 -1
  52. package/dist/routes/api/oauth/_provider/authorize/get.js +13 -1
  53. package/dist/routes/api/oauth/_provider/authorize/get.js.map +1 -1
  54. package/dist/routes/api/oauth/_provider/callback/get.d.ts +19 -0
  55. package/dist/routes/api/oauth/_provider/callback/get.d.ts.map +1 -1
  56. package/dist/routes/api/oauth/_provider/callback/get.js +19 -10
  57. package/dist/routes/api/oauth/_provider/callback/get.js.map +1 -1
  58. package/dist/routes/api/oauth/_provider/callback/post.d.ts +19 -0
  59. package/dist/routes/api/oauth/_provider/callback/post.d.ts.map +1 -1
  60. package/dist/routes/api/oauth/_provider/callback/post.js +49 -11
  61. package/dist/routes/api/oauth/_provider/callback/post.js.map +1 -1
  62. package/dist/routes/api/oauth/index.d.ts +38 -0
  63. package/dist/routes/api/oauth/index.d.ts.map +1 -1
  64. package/dist/routes/index.d.ts +47 -2
  65. package/dist/routes/index.d.ts.map +1 -1
  66. package/dist/routes/oauth/.well-known/openid-configuration/get.d.ts +4 -0
  67. package/dist/routes/oauth/.well-known/openid-configuration/get.d.ts.map +1 -1
  68. package/dist/routes/oauth/.well-known/openid-configuration/get.js +25 -2
  69. package/dist/routes/oauth/.well-known/openid-configuration/get.js.map +1 -1
  70. package/dist/routes/oauth/authorize/get.d.ts +2 -0
  71. package/dist/routes/oauth/authorize/get.d.ts.map +1 -1
  72. package/dist/routes/oauth/authorize/get.js +4 -0
  73. package/dist/routes/oauth/authorize/get.js.map +1 -1
  74. package/dist/routes/oauth/client-auth.d.ts +10 -0
  75. package/dist/routes/oauth/client-auth.d.ts.map +1 -0
  76. package/dist/routes/oauth/client-auth.js +57 -0
  77. package/dist/routes/oauth/client-auth.js.map +1 -0
  78. package/dist/routes/oauth/index.d.ts +9 -2
  79. package/dist/routes/oauth/index.d.ts.map +1 -1
  80. package/dist/routes/oauth/introspect/post.d.ts +1 -0
  81. package/dist/routes/oauth/introspect/post.d.ts.map +1 -1
  82. package/dist/routes/oauth/introspect/post.js +36 -12
  83. package/dist/routes/oauth/introspect/post.js.map +1 -1
  84. package/dist/routes/oauth/revoke/post.d.ts.map +1 -1
  85. package/dist/routes/oauth/revoke/post.js +30 -12
  86. package/dist/routes/oauth/revoke/post.js.map +1 -1
  87. package/dist/routes/oauth/token/post.d.ts +2 -2
  88. package/dist/routes/oauth/token/post.d.ts.map +1 -1
  89. package/dist/routes/oauth/token/post.js +32 -9
  90. package/dist/routes/oauth/token/post.js.map +1 -1
  91. package/dist/routes/oauth/userinfo/get.d.ts.map +1 -1
  92. package/dist/routes/oauth/userinfo/get.js +3 -0
  93. package/dist/routes/oauth/userinfo/get.js.map +1 -1
  94. package/dist/schemas/error.d.ts +75 -0
  95. package/dist/schemas/error.d.ts.map +1 -1
  96. package/dist/schemas/error.js +3 -0
  97. package/dist/schemas/error.js.map +1 -1
  98. package/dist/schemas/field.d.ts +1 -6
  99. package/dist/schemas/field.d.ts.map +1 -1
  100. package/dist/schemas/field.js +6 -3
  101. package/dist/schemas/field.js.map +1 -1
  102. package/dist/schemas/oauth.d.ts +1 -1
  103. package/dist/schemas/oauth.js +1 -1
  104. package/dist/schemas/oauth.js.map +1 -1
  105. package/dist/schemas/response.d.ts +1 -1
  106. package/dist/services/container.d.ts +2 -0
  107. package/dist/services/container.d.ts.map +1 -1
  108. package/dist/services/jwt.service.d.ts +6 -0
  109. package/dist/services/jwt.service.d.ts.map +1 -1
  110. package/dist/services/jwt.service.js +60 -34
  111. package/dist/services/jwt.service.js.map +1 -1
  112. package/dist/services/oauth-authorize.service.d.ts +5 -0
  113. package/dist/services/oauth-authorize.service.d.ts.map +1 -1
  114. package/dist/services/oauth-authorize.service.js +67 -9
  115. package/dist/services/oauth-authorize.service.js.map +1 -1
  116. package/dist/services/oauth-client.service.d.ts +3 -0
  117. package/dist/services/oauth-client.service.d.ts.map +1 -1
  118. package/dist/services/oauth-client.service.js +31 -0
  119. package/dist/services/oauth-client.service.js.map +1 -1
  120. package/dist/services/oauth-connect.service.d.ts +6 -8
  121. package/dist/services/oauth-connect.service.d.ts.map +1 -1
  122. package/dist/services/oauth-connect.service.js +158 -20
  123. package/dist/services/oauth-connect.service.js.map +1 -1
  124. package/dist/services/oauth-token.service.d.ts +11 -3
  125. package/dist/services/oauth-token.service.d.ts.map +1 -1
  126. package/dist/services/oauth-token.service.js +153 -50
  127. package/dist/services/oauth-token.service.js.map +1 -1
  128. package/dist/services/passkey.service.d.ts +1 -1
  129. package/dist/services/passkey.service.d.ts.map +1 -1
  130. package/dist/services/passkey.service.js +11 -3
  131. package/dist/services/passkey.service.js.map +1 -1
  132. package/package.json +1 -1
  133. package/public/assets/{index-KMvNrUPy.js → index-DaJe6s9D.js} +26 -26
  134. package/public/assets/{index-KMvNrUPy.js.map → index-DaJe6s9D.js.map} +1 -1
  135. package/public/index.html +1 -1
  136. package/readme.md +74 -25
@@ -886,6 +886,25 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
886
886
  output: undefined;
887
887
  outputFormat: "redirect";
888
888
  status: 302;
889
+ } | {
890
+ input: {
891
+ param: {
892
+ provider: string;
893
+ };
894
+ } & {
895
+ query: {
896
+ code?: string | string[];
897
+ state?: string | string[];
898
+ error?: string | string[];
899
+ error_description?: string | string[];
900
+ };
901
+ };
902
+ output: {
903
+ code: any;
904
+ message: any;
905
+ };
906
+ outputFormat: "json";
907
+ status: any;
889
908
  };
890
909
  };
891
910
  }, "/"> | import("hono/types").MergeSchemaPath<{
@@ -906,6 +925,25 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
906
925
  output: undefined;
907
926
  outputFormat: "redirect";
908
927
  status: 302;
928
+ } | {
929
+ input: {
930
+ param: {
931
+ provider: string;
932
+ };
933
+ } & {
934
+ form: {
935
+ code?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
936
+ state?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
937
+ error?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
938
+ error_description?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
939
+ };
940
+ };
941
+ output: {
942
+ code: any;
943
+ message: any;
944
+ };
945
+ outputFormat: "json";
946
+ status: any;
909
947
  };
910
948
  };
911
949
  }, "/"> | import("hono/types").MergeSchemaPath<{
@@ -938,6 +976,7 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
938
976
  nonce?: string | string[];
939
977
  prompt?: string | string[];
940
978
  max_age?: string | string[];
979
+ reauthenticated?: string | string[];
941
980
  display?: string | string[];
942
981
  };
943
982
  };
@@ -957,6 +996,7 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
957
996
  nonce?: string | string[];
958
997
  prompt?: string | string[];
959
998
  max_age?: string | string[];
999
+ reauthenticated?: string | string[];
960
1000
  display?: string | string[];
961
1001
  };
962
1002
  };
@@ -974,9 +1014,9 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
974
1014
  input: {
975
1015
  form: {
976
1016
  grant_type: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
977
- client_id: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
978
1017
  code?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
979
1018
  redirect_uri?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
1019
+ client_id?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
980
1020
  client_secret?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
981
1021
  code_verifier?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
982
1022
  refresh_token?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
@@ -986,7 +1026,7 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
986
1026
  access_token: string;
987
1027
  token_type: "Bearer";
988
1028
  expires_in: number;
989
- refresh_token: string;
1029
+ refresh_token?: string | undefined | undefined;
990
1030
  id_token?: string | undefined | undefined;
991
1031
  scope: string;
992
1032
  };
@@ -1014,6 +1054,7 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
1014
1054
  iat?: number | undefined | undefined;
1015
1055
  sub?: string | undefined | undefined;
1016
1056
  iss?: string | undefined | undefined;
1057
+ aud?: string | undefined | undefined;
1017
1058
  };
1018
1059
  outputFormat: "json";
1019
1060
  status: 200;
@@ -1086,6 +1127,7 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
1086
1127
  token_endpoint: string;
1087
1128
  jwks_uri: string;
1088
1129
  response_types_supported: string[];
1130
+ response_modes_supported: string[];
1089
1131
  subject_types_supported: string[];
1090
1132
  id_token_signing_alg_values_supported: string[];
1091
1133
  userinfo_endpoint: string;
@@ -1097,6 +1139,9 @@ export declare const routes: import("hono/hono-base").HonoBase<AppEnv, import("h
1097
1139
  introspection_endpoint: string;
1098
1140
  revocation_endpoint: string;
1099
1141
  ui_locales_supported: ("en" | "ko" | "ja")[];
1142
+ request_parameter_supported: boolean;
1143
+ request_uri_parameter_supported: boolean;
1144
+ claims_parameter_supported: boolean;
1100
1145
  };
1101
1146
  outputFormat: "json";
1102
1147
  status: 200;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKhD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAGsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKhD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAGsB,CAAC"}
@@ -9,6 +9,7 @@ export declare const oidcConfigGet: import("hono/hono-base").HonoBase<AppEnv, {
9
9
  token_endpoint: string;
10
10
  jwks_uri: string;
11
11
  response_types_supported: string[];
12
+ response_modes_supported: string[];
12
13
  subject_types_supported: string[];
13
14
  id_token_signing_alg_values_supported: string[];
14
15
  userinfo_endpoint: string;
@@ -20,6 +21,9 @@ export declare const oidcConfigGet: import("hono/hono-base").HonoBase<AppEnv, {
20
21
  introspection_endpoint: string;
21
22
  revocation_endpoint: string;
22
23
  ui_locales_supported: ("en" | "ko" | "ja")[];
24
+ request_parameter_supported: boolean;
25
+ request_uri_parameter_supported: boolean;
26
+ claims_parameter_supported: boolean;
23
27
  };
24
28
  outputFormat: "json";
25
29
  status: 200;
@@ -1 +1 @@
1
- {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../src/routes/oauth/.well-known/openid-configuration/get.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGrD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;4CAmJzB,CAAC"}
1
+ {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../src/routes/oauth/.well-known/openid-configuration/get.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGrD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CA8KzB,CAAC"}
@@ -26,6 +26,10 @@ export const oidcConfigGet = new Hono().get('/.well-known/openid-configuration',
26
26
  response_types_supported: z
27
27
  .array(z.string())
28
28
  .describe('JSON array containing a list of the OAuth 2.0 response_type values'),
29
+ response_modes_supported: z
30
+ .array(z.string())
31
+ .optional()
32
+ .describe('JSON array containing a list of supported response_mode values'),
29
33
  subject_types_supported: z
30
34
  .array(z.string())
31
35
  .describe('JSON array containing a list of the Subject Identifier types'),
@@ -72,6 +76,18 @@ export const oidcConfigGet = new Hono().get('/.well-known/openid-configuration',
72
76
  .array(z.string())
73
77
  .optional()
74
78
  .describe('Languages and scripts supported for the user interface'),
79
+ request_parameter_supported: z
80
+ .boolean()
81
+ .optional()
82
+ .describe('Whether request object by value is supported'),
83
+ request_uri_parameter_supported: z
84
+ .boolean()
85
+ .optional()
86
+ .describe('Whether request object by reference is supported'),
87
+ claims_parameter_supported: z
88
+ .boolean()
89
+ .optional()
90
+ .describe('Whether the claims request parameter is supported'),
75
91
  })),
76
92
  },
77
93
  },
@@ -85,8 +101,9 @@ export const oidcConfigGet = new Hono().get('/.well-known/openid-configuration',
85
101
  issuer: baseUrl,
86
102
  authorization_endpoint: `${baseUrl}/oauth/authorize`,
87
103
  token_endpoint: `${baseUrl}/oauth/token`,
88
- jwks_uri: `${baseUrl}/oauth/jwks`,
104
+ jwks_uri: `${baseUrl}/oauth/.well-known/jwks`,
89
105
  response_types_supported: ['code'],
106
+ response_modes_supported: ['query'],
90
107
  subject_types_supported: ['public'],
91
108
  id_token_signing_alg_values_supported: ['RS256'],
92
109
  userinfo_endpoint: `${baseUrl}/oauth/userinfo`,
@@ -98,6 +115,8 @@ export const oidcConfigGet = new Hono().get('/.well-known/openid-configuration',
98
115
  'exp',
99
116
  'iat',
100
117
  'nonce',
118
+ 'auth_time',
119
+ 'at_hash',
101
120
  'email',
102
121
  'email_verified',
103
122
  'name',
@@ -106,11 +125,15 @@ export const oidcConfigGet = new Hono().get('/.well-known/openid-configuration',
106
125
  token_endpoint_auth_methods_supported: [
107
126
  'client_secret_basic',
108
127
  'client_secret_post',
128
+ 'none',
109
129
  ],
110
- code_challenge_methods_supported: ['S256', 'plain'],
130
+ code_challenge_methods_supported: ['S256'],
111
131
  introspection_endpoint: `${baseUrl}/oauth/introspect`,
112
132
  revocation_endpoint: `${baseUrl}/oauth/revoke`,
113
133
  ui_locales_supported: config.i18n.supported_languages,
134
+ request_parameter_supported: false,
135
+ request_uri_parameter_supported: false,
136
+ claims_parameter_supported: false,
114
137
  };
115
138
  // Set Cache-Control header
116
139
  c.header('Cache-Control', 'public, max-age=3600');
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/routes/oauth/.well-known/openid-configuration/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAEnD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,IAAI,EAAU,CAAC,GAAG,CACjD,mCAAmC,EACnC,aAAa,CAAC;IACZ,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;IACnB,OAAO,EAAE,+BAA+B;IACxC,WAAW,EACT,kFAAkF;IACpF,SAAS,EAAE;QACT,GAAG,EAAE;YACH,OAAO,EAAE;gBACP,kBAAkB,EAAE;oBAClB,MAAM,EAAE,QAAQ,CACd,CAAC,CAAC,MAAM,CAAC;wBACP,MAAM,EAAE,CAAC;6BACN,MAAM,EAAE;6BACR,QAAQ,CACP,gEAAgE,CACjE;wBACH,sBAAsB,EAAE,CAAC;6BACtB,MAAM,EAAE;6BACR,QAAQ,CAAC,kDAAkD,CAAC;wBAC/D,cAAc,EAAE,CAAC;6BACd,MAAM,EAAE;6BACR,QAAQ,CAAC,0CAA0C,CAAC;wBACvD,QAAQ,EAAE,CAAC;6BACR,MAAM,EAAE;6BACR,QAAQ,CAAC,2CAA2C,CAAC;wBACxD,wBAAwB,EAAE,CAAC;6BACxB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,CACP,oEAAoE,CACrE;wBACH,uBAAuB,EAAE,CAAC;6BACvB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,CACP,8DAA8D,CAC/D;wBACH,qCAAqC,EAAE,CAAC;6BACrC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,CACP,sEAAsE,CACvE;wBACH,iBAAiB,EAAE,CAAC;6BACjB,MAAM,EAAE;6BACR,QAAQ,EAAE;6BACV,QAAQ,CAAC,mCAAmC,CAAC;wBAChD,gBAAgB,EAAE,CAAC;6BAChB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,EAAE;6BACV,QAAQ,CACP,4DAA4D,CAC7D;wBACH,gBAAgB,EAAE,CAAC;6BAChB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,EAAE;6BACV,QAAQ,CAAC,iDAAiD,CAAC;wBAC9D,qBAAqB,EAAE,CAAC;6BACrB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,EAAE;6BACV,QAAQ,CACP,iEAAiE,CAClE;wBACH,qCAAqC,EAAE,CAAC;6BACrC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,EAAE;6BACV,QAAQ,CACP,+DAA+D,CAChE;wBACH,gCAAgC,EAAE,CAAC;6BAChC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,EAAE;6BACV,QAAQ,CACP,6DAA6D,CAC9D;wBACH,sBAAsB,EAAE,CAAC;6BACtB,MAAM,EAAE;6BACR,QAAQ,EAAE;6BACV,QAAQ,CACP,wDAAwD,CACzD;wBACH,mBAAmB,EAAE,CAAC;6BACnB,MAAM,EAAE;6BACR,QAAQ,EAAE;6BACV,QAAQ,CACP,qDAAqD,CACtD;wBACH,qBAAqB,EAAE,CAAC;6BACrB,MAAM,EAAE;6BACR,QAAQ,EAAE;6BACV,QAAQ,CACP,qDAAqD,CACtD;wBACH,oBAAoB,EAAE,CAAC;6BACpB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;6BACjB,QAAQ,EAAE;6BACV,QAAQ,CACP,wDAAwD,CACzD;qBACJ,CAAC,CACH;iBACF;aACF;YACD,WAAW,EAAE,sBAAsB;SACpC;KACF;CACF,CAAC,EACF,KAAK,EAAE,CAAC,EAAE,EAAE;IACV,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;IAE5C,MAAM,aAAa,GAAG;QACpB,MAAM,EAAE,OAAO;QACf,sBAAsB,EAAE,GAAG,OAAO,kBAAkB;QACpD,cAAc,EAAE,GAAG,OAAO,cAAc;QACxC,QAAQ,EAAE,GAAG,OAAO,aAAa;QACjC,wBAAwB,EAAE,CAAC,MAAM,CAAC;QAClC,uBAAuB,EAAE,CAAC,QAAQ,CAAC;QACnC,qCAAqC,EAAE,CAAC,OAAO,CAAC;QAChD,iBAAiB,EAAE,GAAG,OAAO,iBAAiB;QAC9C,gBAAgB,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,CAAC;QAClE,gBAAgB,EAAE;YAChB,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;YACL,OAAO;YACP,OAAO;YACP,gBAAgB;YAChB,MAAM;SACP;QACD,qBAAqB,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;QAC9D,qCAAqC,EAAE;YACrC,qBAAqB;YACrB,oBAAoB;SACrB;QACD,gCAAgC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;QACnD,sBAAsB,EAAE,GAAG,OAAO,mBAAmB;QACrD,mBAAmB,EAAE,GAAG,OAAO,eAAe;QAC9C,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB;KACtD,CAAC;IAEF,2BAA2B;IAC3B,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;IAElD,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/routes/oauth/.well-known/openid-configuration/get.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare const authorizeGet: import("hono/hono-base").HonoBase<AppEnv, {
14
14
  nonce?: string | string[];
15
15
  prompt?: string | string[];
16
16
  max_age?: string | string[];
17
+ reauthenticated?: string | string[];
17
18
  display?: string | string[];
18
19
  };
19
20
  };
@@ -33,6 +34,7 @@ export declare const authorizeGet: import("hono/hono-base").HonoBase<AppEnv, {
33
34
  nonce?: string | string[];
34
35
  prompt?: string | string[];
35
36
  max_age?: string | string[];
37
+ reauthenticated?: string | string[];
36
38
  display?: string | string[];
37
39
  };
38
40
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../src/routes/oauth/authorize/get.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAStD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAsJxB,CAAC"}
1
+ {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../src/routes/oauth/authorize/get.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAStD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBA+JxB,CAAC"}
@@ -36,6 +36,7 @@ export const authorizeGet = new Hono().get('/authorize', describeRoute({
36
36
  nonce: f.nonce.optional(),
37
37
  prompt: f.prompt.optional(),
38
38
  max_age: f.maxAge.optional(),
39
+ reauthenticated: z.literal('1').optional(),
39
40
  display: f.display.optional(),
40
41
  })), verifyAuth({ optional: true }), async (c) => {
41
42
  const query = c.req.valid('query');
@@ -94,6 +95,9 @@ export const authorizeGet = new Hono().get('/authorize', describeRoute({
94
95
  if (error instanceof e.InvalidCodeChallengeMethod.Error) {
95
96
  return redirectWithError('invalid_request', error.message, query.redirect_uri);
96
97
  }
98
+ if (error instanceof e.InvalidPrompt.Error) {
99
+ return redirectWithError('invalid_request', error.message, query.redirect_uri);
100
+ }
97
101
  // Log unexpected errors
98
102
  c.var.logger.error({ err: error }, 'Unexpected authorize error');
99
103
  return redirectWithError('server_error', 'An unexpected error occurred', query.redirect_uri);
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../src/routes/oauth/authorize/get.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../src/routes/oauth/authorize/get.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Context } from 'hono';
2
+ export interface BasicClientCredentials {
3
+ clientId: string;
4
+ clientSecret: string;
5
+ }
6
+ export declare const BASIC_CLIENT_AUTH_CHALLENGE = "Basic realm=\"tinyauth\"";
7
+ export declare function parseBasicClientCredentials(authorizationHeader: string | undefined): BasicClientCredentials | null | undefined;
8
+ export declare function throwInvalidClientCredentialsWithBasicChallenge(c: Context): never;
9
+ export declare function setBasicClientAuthChallengeIfInvalidClientCredentials(c: Context, err: unknown): void;
10
+ //# sourceMappingURL=client-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-auth.d.ts","sourceRoot":"","sources":["../../../src/routes/oauth/client-auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAGpC,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,2BAA2B,6BAA2B,CAAC;AAKpE,wBAAgB,2BAA2B,CACzC,mBAAmB,EAAE,MAAM,GAAG,SAAS,GACtC,sBAAsB,GAAG,IAAI,GAAG,SAAS,CAwC3C;AAED,wBAAgB,+CAA+C,CAC7D,CAAC,EAAE,OAAO,GACT,KAAK,CAGP;AAED,wBAAgB,qDAAqD,CACnE,CAAC,EAAE,OAAO,EACV,GAAG,EAAE,OAAO,GACX,IAAI,CAON"}
@@ -0,0 +1,57 @@
1
+ import { e, TinyAuthError } from '../../schemas/error.js';
2
+ export const BASIC_CLIENT_AUTH_CHALLENGE = 'Basic realm="tinyauth"';
3
+ const BASIC_BASE64_PATTERN = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;
4
+ export function parseBasicClientCredentials(authorizationHeader) {
5
+ if (!authorizationHeader) {
6
+ return undefined;
7
+ }
8
+ const [scheme, encoded, extra] = authorizationHeader.split(' ');
9
+ if (!scheme || scheme.toLowerCase() !== 'basic') {
10
+ return null;
11
+ }
12
+ if (!encoded ||
13
+ extra !== undefined ||
14
+ /\s/.test(encoded) ||
15
+ !BASIC_BASE64_PATTERN.test(encoded)) {
16
+ return null;
17
+ }
18
+ const decodedBytes = Buffer.from(encoded, 'base64');
19
+ const decoded = decodeUtf8(decodedBytes);
20
+ if (!decoded || Buffer.from(decoded, 'utf8').toString('base64') !== encoded) {
21
+ return null;
22
+ }
23
+ const separatorIndex = decoded.indexOf(':');
24
+ if (separatorIndex < 0) {
25
+ return null;
26
+ }
27
+ const clientId = decodeBasicCredential(decoded.slice(0, separatorIndex));
28
+ if (!clientId) {
29
+ return null;
30
+ }
31
+ return {
32
+ clientId,
33
+ clientSecret: decodeBasicCredential(decoded.slice(separatorIndex + 1)),
34
+ };
35
+ }
36
+ export function throwInvalidClientCredentialsWithBasicChallenge(c) {
37
+ c.header('WWW-Authenticate', BASIC_CLIENT_AUTH_CHALLENGE);
38
+ throw new e.InvalidClientCredentials.Error();
39
+ }
40
+ export function setBasicClientAuthChallengeIfInvalidClientCredentials(c, err) {
41
+ if (err instanceof TinyAuthError &&
42
+ err.code === 'INVALID_CLIENT_CREDENTIALS') {
43
+ c.header('WWW-Authenticate', BASIC_CLIENT_AUTH_CHALLENGE);
44
+ }
45
+ }
46
+ function decodeUtf8(value) {
47
+ try {
48
+ return new TextDecoder('utf-8', { fatal: true }).decode(value);
49
+ }
50
+ catch {
51
+ return null;
52
+ }
53
+ }
54
+ function decodeBasicCredential(value) {
55
+ return new URLSearchParams(`value=${value}`).get('value') ?? '';
56
+ }
57
+ //# sourceMappingURL=client-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-auth.js","sourceRoot":"","sources":["../../../src/routes/oauth/client-auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAO1D,MAAM,CAAC,MAAM,2BAA2B,GAAG,wBAAwB,CAAC;AAEpE,MAAM,oBAAoB,GACxB,kEAAkE,CAAC;AAErE,MAAM,UAAU,2BAA2B,CACzC,mBAAuC;IAEvC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IACE,CAAC,OAAO;QACR,KAAK,KAAK,SAAS;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAClB,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EACnC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE5C,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,QAAQ;QACR,YAAY,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;KACvE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+CAA+C,CAC7D,CAAU;IAEV,CAAC,CAAC,MAAM,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC;IAC1D,MAAM,IAAI,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,qDAAqD,CACnE,CAAU,EACV,GAAY;IAEZ,IACE,GAAG,YAAY,aAAa;QAC5B,GAAG,CAAC,IAAI,KAAK,4BAA4B,EACzC,CAAC;QACD,CAAC,CAAC,MAAM,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa;IAC1C,OAAO,IAAI,eAAe,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAClE,CAAC"}
@@ -14,6 +14,7 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
14
14
  nonce?: string | string[];
15
15
  prompt?: string | string[];
16
16
  max_age?: string | string[];
17
+ reauthenticated?: string | string[];
17
18
  display?: string | string[];
18
19
  };
19
20
  };
@@ -33,6 +34,7 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
33
34
  nonce?: string | string[];
34
35
  prompt?: string | string[];
35
36
  max_age?: string | string[];
37
+ reauthenticated?: string | string[];
36
38
  display?: string | string[];
37
39
  };
38
40
  };
@@ -50,9 +52,9 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
50
52
  input: {
51
53
  form: {
52
54
  grant_type: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
53
- client_id: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
54
55
  code?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
55
56
  redirect_uri?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
57
+ client_id?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
56
58
  client_secret?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
57
59
  code_verifier?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
58
60
  refresh_token?: import("hono/types").ParsedFormValue | import("hono/types").ParsedFormValue[];
@@ -62,7 +64,7 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
62
64
  access_token: string;
63
65
  token_type: "Bearer";
64
66
  expires_in: number;
65
- refresh_token: string;
67
+ refresh_token?: string | undefined | undefined;
66
68
  id_token?: string | undefined | undefined;
67
69
  scope: string;
68
70
  };
@@ -90,6 +92,7 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
90
92
  iat?: number | undefined | undefined;
91
93
  sub?: string | undefined | undefined;
92
94
  iss?: string | undefined | undefined;
95
+ aud?: string | undefined | undefined;
93
96
  };
94
97
  outputFormat: "json";
95
98
  status: 200;
@@ -162,6 +165,7 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
162
165
  token_endpoint: string;
163
166
  jwks_uri: string;
164
167
  response_types_supported: string[];
168
+ response_modes_supported: string[];
165
169
  subject_types_supported: string[];
166
170
  id_token_signing_alg_values_supported: string[];
167
171
  userinfo_endpoint: string;
@@ -173,6 +177,9 @@ export declare const oauthApplicationRoutes: import("hono/hono-base").HonoBase<A
173
177
  introspection_endpoint: string;
174
178
  revocation_endpoint: string;
175
179
  ui_locales_supported: ("en" | "ko" | "ja")[];
180
+ request_parameter_supported: boolean;
181
+ request_uri_parameter_supported: boolean;
182
+ claims_parameter_supported: boolean;
176
183
  };
177
184
  outputFormat: "json";
178
185
  status: 200;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/oauth/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AASnD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOP,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/oauth/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AASnD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOP,CAAC"}
@@ -19,6 +19,7 @@ export declare const introspectPost: import("hono/hono-base").HonoBase<AppEnv, {
19
19
  iat?: number | undefined | undefined;
20
20
  sub?: string | undefined | undefined;
21
21
  iss?: string | undefined | undefined;
22
+ aud?: string | undefined | undefined;
22
23
  };
23
24
  outputFormat: "json";
24
25
  status: 200;
@@ -1 +1 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../src/routes/oauth/introspect/post.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAetD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;sBAuE1B,CAAC"}
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../src/routes/oauth/introspect/post.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAoBtD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;sBAqG1B,CAAC"}
@@ -5,6 +5,7 @@ import { TAGS } from "../../../lib/swagger-tags.js";
5
5
  import { e } from "../../../schemas/error.js";
6
6
  import { f } from "../../../schemas/field.js";
7
7
  import { r } from "../../../schemas/response.js";
8
+ import { parseBasicClientCredentials, setBasicClientAuthChallengeIfInvalidClientCredentials, throwInvalidClientCredentialsWithBasicChallenge, } from '../client-auth.js';
8
9
  const IntrospectionRequestBody = z
9
10
  .object({
10
11
  token: f.token,
@@ -49,21 +50,44 @@ export const introspectPost = new Hono().post('/introspect', describeRoute({
49
50
  }), validator('form', IntrospectionRequestBody), async (c) => {
50
51
  const body = c.req.valid('form');
51
52
  const { oauthClientService, oauthTokenService } = c.var.services;
52
- // 1. Validate client credentials if provided
53
- if (body.client_id) {
54
- const client = await oauthClientService.findByClientId(body.client_id);
55
- if (!client.enabled) {
56
- throw new e.OAuthClientDisabled.Error();
53
+ const authorizationHeader = c.req.header('authorization');
54
+ const basicCredentials = parseBasicClientCredentials(authorizationHeader);
55
+ if (basicCredentials === null) {
56
+ throwInvalidClientCredentialsWithBasicChallenge(c);
57
+ }
58
+ if (basicCredentials && body.client_secret) {
59
+ throwInvalidClientCredentialsWithBasicChallenge(c);
60
+ }
61
+ if (basicCredentials && body.client_id) {
62
+ if (basicCredentials.clientId !== body.client_id) {
63
+ throwInvalidClientCredentialsWithBasicChallenge(c);
64
+ }
65
+ }
66
+ const clientId = basicCredentials?.clientId ?? body.client_id;
67
+ if (!clientId) {
68
+ throw new e.InvalidClientCredentials.Error();
69
+ }
70
+ const client = await oauthClientService.findByClientId(clientId);
71
+ if (!client.enabled) {
72
+ throw new e.OAuthClientDisabled.Error();
73
+ }
74
+ const clientSecret = basicCredentials?.clientSecret ?? body.client_secret;
75
+ try {
76
+ if (!clientSecret) {
77
+ throw new e.InvalidClientCredentials.Error();
57
78
  }
58
- if (body.client_secret) {
59
- const isValid = await oauthClientService.verifyClientSecret(body.client_id, body.client_secret);
60
- if (!isValid) {
61
- throw new e.InvalidClientCredentials.Error();
62
- }
79
+ const isValidClientSecret = await oauthClientService.verifyClientSecret(clientId, clientSecret);
80
+ if (!isValidClientSecret) {
81
+ throw new e.InvalidClientCredentials.Error();
82
+ }
83
+ }
84
+ catch (err) {
85
+ if (authorizationHeader) {
86
+ setBasicClientAuthChallengeIfInvalidClientCredentials(c, err);
63
87
  }
88
+ throw err;
64
89
  }
65
- // 3. Introspect the token
66
- const result = await oauthTokenService.introspectToken(body.token, body.token_type_hint);
90
+ const result = await oauthTokenService.introspectToken(body.token, body.token_type_hint, clientId);
67
91
  return c.json(result, 200);
68
92
  });
69
93
  //# sourceMappingURL=post.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../src/routes/oauth/introspect/post.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../src/routes/oauth/introspect/post.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../src/routes/oauth/revoke/post.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AActD;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;kBA0EtB,CAAC"}
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../../src/routes/oauth/revoke/post.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAmBtD;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;kBAmGtB,CAAC"}
@@ -4,6 +4,7 @@ import { z } from 'zod';
4
4
  import { TAGS } from "../../../lib/swagger-tags.js";
5
5
  import { e } from "../../../schemas/error.js";
6
6
  import { f } from "../../../schemas/field.js";
7
+ import { parseBasicClientCredentials, setBasicClientAuthChallengeIfInvalidClientCredentials, throwInvalidClientCredentialsWithBasicChallenge, } from '../client-auth.js';
7
8
  const RevokeRequestBody = z
8
9
  .object({
9
10
  token: f.token,
@@ -53,21 +54,38 @@ export const revokePost = new Hono().post('/revoke', describeRoute({
53
54
  }), validator('form', RevokeRequestBody), async (c) => {
54
55
  const body = c.req.valid('form');
55
56
  const { oauthClientService, oauthTokenService } = c.var.services;
56
- // 1. Validate client credentials if provided
57
- if (body.client_id) {
58
- const client = await oauthClientService.findByClientId(body.client_id);
59
- if (!client.enabled) {
60
- throw new e.OAuthClientDisabled.Error();
57
+ const authorizationHeader = c.req.header('authorization');
58
+ const basicCredentials = parseBasicClientCredentials(authorizationHeader);
59
+ if (basicCredentials === null) {
60
+ throwInvalidClientCredentialsWithBasicChallenge(c);
61
+ }
62
+ if (basicCredentials && body.client_secret) {
63
+ throwInvalidClientCredentialsWithBasicChallenge(c);
64
+ }
65
+ if (basicCredentials && body.client_id) {
66
+ if (basicCredentials.clientId !== body.client_id) {
67
+ throwInvalidClientCredentialsWithBasicChallenge(c);
61
68
  }
62
- if (body.client_secret) {
63
- const isValid = await oauthClientService.verifyClientSecret(body.client_id, body.client_secret);
64
- if (!isValid) {
65
- throw new e.InvalidClientCredentials.Error();
66
- }
69
+ }
70
+ const clientId = basicCredentials?.clientId ?? body.client_id;
71
+ if (!clientId) {
72
+ throw new e.InvalidClientCredentials.Error();
73
+ }
74
+ const client = await oauthClientService.findByClientId(clientId);
75
+ if (!client.enabled) {
76
+ throw new e.OAuthClientDisabled.Error();
77
+ }
78
+ const clientSecret = basicCredentials?.clientSecret ?? body.client_secret;
79
+ try {
80
+ await oauthClientService.validateClientSecretIfRequired(clientId, clientSecret);
81
+ }
82
+ catch (err) {
83
+ if (authorizationHeader) {
84
+ setBasicClientAuthChallengeIfInvalidClientCredentials(c, err);
67
85
  }
86
+ throw err;
68
87
  }
69
- // 3. Revoke the token
70
- await oauthTokenService.revokeToken(body.token, body.token_type_hint);
88
+ await oauthTokenService.revokeToken(body.token, body.token_type_hint, clientId);
71
89
  return c.json({}, 200);
72
90
  });
73
91
  //# sourceMappingURL=post.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../src/routes/oauth/revoke/post.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../../../src/routes/oauth/revoke/post.ts"],"names":[],"mappings":"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"}