@andrewheberle/serverless-ssh-ca 0.17.13 → 0.17.16
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.
- package/README.md +8 -19
- package/dist/api/v3/index.d.ts +1 -0
- package/dist/api/v3/index.d.ts.map +1 -0
- package/dist/api/v3/index.js +2 -1
- package/dist/api/v3/index.js.map +1 -0
- package/dist/api/v3/schema.d.ts +47 -1
- package/dist/api/v3/schema.d.ts.map +1 -0
- package/dist/api/v3/schema.js +65 -61
- package/dist/api/v3/schema.js.map +1 -0
- package/dist/certificate.d.ts +1 -0
- package/dist/certificate.d.ts.map +1 -0
- package/dist/certificate.js +11 -6
- package/dist/certificate.js.map +1 -0
- package/dist/{db.d.ts → db/index.d.ts} +6 -6
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +151 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/migrations/0001_initial_schema.d.ts +3 -0
- package/dist/db/migrations/0001_initial_schema.d.ts.map +1 -0
- package/dist/db/migrations/0001_initial_schema.js +24 -0
- package/dist/db/migrations/0001_initial_schema.js.map +1 -0
- package/dist/db/migrations/index.d.ts +3 -0
- package/dist/db/migrations/index.d.ts.map +1 -0
- package/dist/db/migrations/index.js +5 -0
- package/dist/db/migrations/index.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/krl.d.ts +1 -0
- package/dist/krl.d.ts.map +1 -0
- package/dist/krl.js +2 -1
- package/dist/krl.js.map +1 -0
- package/dist/logger.d.ts +1 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +13 -1
- package/dist/logger.js.map +1 -0
- package/dist/proof.d.ts +2 -0
- package/dist/proof.d.ts.map +1 -0
- package/dist/proof.js +2 -1
- package/dist/proof.js.map +1 -0
- package/dist/router.d.ts +1 -0
- package/dist/router.d.ts.map +1 -0
- package/dist/router.js +9 -1
- package/dist/router.js.map +1 -0
- package/dist/sshsig/armor.d.ts +1 -0
- package/dist/sshsig/armor.d.ts.map +1 -0
- package/dist/sshsig/armor.js +1 -0
- package/dist/sshsig/armor.js.map +1 -0
- package/dist/sshsig/formats.d.ts +1 -0
- package/dist/sshsig/formats.d.ts.map +1 -0
- package/dist/sshsig/formats.js +1 -0
- package/dist/sshsig/formats.js.map +1 -0
- package/dist/sshsig/index.d.ts +1 -0
- package/dist/sshsig/index.d.ts.map +1 -0
- package/dist/sshsig/index.js +1 -0
- package/dist/sshsig/index.js.map +1 -0
- package/dist/sshsig/reader.d.ts +1 -0
- package/dist/sshsig/reader.d.ts.map +1 -0
- package/dist/sshsig/reader.js +1 -0
- package/dist/sshsig/reader.js.map +1 -0
- package/dist/sshsig/sig.d.ts +1 -0
- package/dist/sshsig/sig.d.ts.map +1 -0
- package/dist/sshsig/sig.js +1 -0
- package/dist/sshsig/sig.js.map +1 -0
- package/dist/sshsig/sig_parser.d.ts +1 -0
- package/dist/sshsig/sig_parser.d.ts.map +1 -0
- package/dist/sshsig/sig_parser.js +1 -0
- package/dist/sshsig/sig_parser.js.map +1 -0
- package/dist/sshsig/verifier.d.ts +1 -0
- package/dist/sshsig/verifier.d.ts.map +1 -0
- package/dist/sshsig/verifier.js +1 -0
- package/dist/sshsig/verifier.js.map +1 -0
- package/dist/sshsig/writer.d.ts +1 -0
- package/dist/sshsig/writer.d.ts.map +1 -0
- package/dist/sshsig/writer.js +1 -0
- package/dist/sshsig/writer.js.map +1 -0
- package/dist/types.d.ts +8 -8
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +2 -1
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +14 -11
- package/dist/utils.js.map +1 -0
- package/dist/verify.d.ts +1 -0
- package/dist/verify.d.ts.map +1 -0
- package/dist/verify.js +1 -0
- package/dist/verify.js.map +1 -0
- package/package.json +26 -10
- package/src/api/v3/index.ts +419 -0
- package/src/api/v3/schema.ts +273 -0
- package/src/certificate.ts +220 -0
- package/src/db/index.ts +194 -0
- package/src/db/migrations/0001_initial_schema.ts +25 -0
- package/src/db/migrations/index.ts +6 -0
- package/src/index.ts +18 -0
- package/src/krl.ts +414 -0
- package/src/logger.ts +16 -0
- package/src/proof.ts +187 -0
- package/src/router.ts +42 -0
- package/src/sshsig/armor.ts +24 -0
- package/src/sshsig/formats.ts +226 -0
- package/src/sshsig/index.ts +47 -0
- package/src/sshsig/reader.ts +59 -0
- package/src/sshsig/sig.ts +17 -0
- package/src/sshsig/sig_parser.ts +90 -0
- package/src/sshsig/verifier.ts +85 -0
- package/src/sshsig/writer.ts +56 -0
- package/src/types.ts +48 -0
- package/src/utils.ts +412 -0
- package/src/verify.ts +25 -0
- package/LICENSE +0 -201
- package/dist/db.js +0 -111
package/README.md
CHANGED
|
@@ -1,16 +1,9 @@
|
|
|
1
|
-
# Serverless SSH CA on Cloudflare Workers
|
|
2
|
-
|
|
3
|
-
[](https://deploy.workers.cloudflare.com/?url=https%3A%2F%2Fgithub.com%2Fandrewheberle%2Fserverless-ssh-ca-template)
|
|
4
|
-
|
|
5
|
-
[](https://codecov.io/gh/andrewheberle/serverless-ssh-ca)
|
|
6
|
-
|
|
7
|
-
This repository contains a serverless Certificate Authority (CA) that can be used
|
|
8
|
-
to provide signed certificates for SSH users and hosts running on Cloudflare Workers.
|
|
9
|
-
|
|
10
1
|
## @andrewheberle/serverless-ssh-ca
|
|
11
2
|
|
|
12
3
|
This is the package that implements the SSH CA functionality which can be deployed
|
|
13
|
-
to Cloudflare as a working solution using the "Deploy to Cloudflare" button
|
|
4
|
+
to Cloudflare as a working solution using the "Deploy to Cloudflare" button below:
|
|
5
|
+
|
|
6
|
+
[](https://deploy.workers.cloudflare.com/?url=https%3A%2F%2Fgithub.com%2Fandrewheberle%2Fserverless-ssh-ca-template)
|
|
14
7
|
|
|
15
8
|
To use the package in your own Worker manually (assuming you have the requried
|
|
16
9
|
bindings in place), the following code in `src/index.ts` (your Worker's main
|
|
@@ -30,8 +23,8 @@ See the following respositories for additional information:
|
|
|
30
23
|
|
|
31
24
|
| Repostitory | Details |
|
|
32
25
|
|---|---|
|
|
33
|
-
| https://github.com/andrewheberle/ssh-ca-client | Contains client code for issuing user and host certificates |
|
|
34
|
-
| https://github.com/andrewheberle/
|
|
26
|
+
| [https://github.com/andrewheberle/ssh-ca-client](https://github.com/andrewheberle/ssh-ca-client) | Contains client code for issuing user and host certificates |
|
|
27
|
+
| [https://github.com/andrewheberle/serverless-ssh-ca-template](https://github.com/andrewheberle/serverless-ssh-ca-template) | Contains a template repository for deployment to Cloudflare Workers |
|
|
35
28
|
|
|
36
29
|
## Architecture
|
|
37
30
|
|
|
@@ -184,20 +177,20 @@ sequenceDiagram
|
|
|
184
177
|
This example shows the configuration in Cloudflare Access, however other
|
|
185
178
|
OIDC IdP's should be generally equivalent:
|
|
186
179
|
|
|
187
|
-

|
|
180
|
+

|
|
188
181
|
|
|
189
182
|
The `Redirect URL` must match the configured value in the client.
|
|
190
183
|
|
|
191
184
|
Transfer the IdP settings as follows:
|
|
192
185
|
|
|
193
|
-

|
|
186
|
+

|
|
194
187
|
|
|
195
188
|
The `openid` and `email` scopes are required, with enabling of refresh tokens
|
|
196
189
|
(the `offline_access` scope) being optional, but recommended.
|
|
197
190
|
|
|
198
191
|
### Client
|
|
199
192
|
|
|
200
|
-
Please visit the client repository for further information:
|
|
193
|
+
Please visit the ssh-ca-client repository for further information:
|
|
201
194
|
|
|
202
195
|
https://github.com/andrewheberle/ssh-ca-client
|
|
203
196
|
|
|
@@ -262,7 +255,3 @@ curl https://ssh-ca.example.com/api/v3/ca
|
|
|
262
255
|
Once the above configuration is completed and host certificates are in place
|
|
263
256
|
clients will not require "trust on first use" (TOFU) as the certificate will be
|
|
264
257
|
verified as being signed by the configured SSH CA.
|
|
265
|
-
|
|
266
|
-
# Attributions
|
|
267
|
-
|
|
268
|
-
The icons used by the client are made by Freepik from [www.flaticon.com](https://www.flaticon.com).
|
package/dist/api/v3/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/v3/index.ts"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAsWhD,eAAO,MAAM,SAAS,GAAI,KAAK,aAAa,mHAW3C,CAAA"}
|
package/dist/api/v3/index.js
CHANGED
|
@@ -79,7 +79,7 @@ const UserCertificateRequestEndpoint = (env) => {
|
|
|
79
79
|
};
|
|
80
80
|
const RevocationListEndpoint = (env) => {
|
|
81
81
|
return class extends OpenAPIRoute {
|
|
82
|
-
schema = createRevocationListEndpointSchema(
|
|
82
|
+
schema = createRevocationListEndpointSchema();
|
|
83
83
|
async handle(c) {
|
|
84
84
|
const data = await this.getValidatedData();
|
|
85
85
|
const l = logger(env).with(...group("request", "type", data.params.certificateType, "action", "krl"));
|
|
@@ -276,3 +276,4 @@ export const createApi = (env) => {
|
|
|
276
276
|
api.post("/:certificateType/revoke", RevokeCertificateEndpoint(env));
|
|
277
277
|
return api;
|
|
278
278
|
};
|
|
279
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/v3/index.ts"],"names":[],"mappings":"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"}
|
package/dist/api/v3/schema.d.ts
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import z from "zod";
|
|
2
2
|
import type { SshCaBindings } from "../../types";
|
|
3
|
+
export declare const createIdentityTokenSchema: (env: SshCaBindings) => z.ZodPipe<z.ZodString, z.ZodTransform<{
|
|
4
|
+
sub: string;
|
|
5
|
+
principals: string[];
|
|
6
|
+
}, string>>;
|
|
7
|
+
export declare const createAccessTokenSchema: (env: SshCaBindings) => z.ZodPipe<z.ZodString, z.ZodTransform<{
|
|
8
|
+
email: string;
|
|
9
|
+
sub: string;
|
|
10
|
+
}, string>>;
|
|
11
|
+
export declare const createHeaderSchema: (env: SshCaBindings) => z.ZodObject<{
|
|
12
|
+
Authorization: z.ZodPipe<z.ZodString, z.ZodTransform<{
|
|
13
|
+
email: string;
|
|
14
|
+
sub: string;
|
|
15
|
+
}, string>>;
|
|
16
|
+
}, z.core.$strip>;
|
|
3
17
|
export declare const CaPublicKeyEndpointSchema: {
|
|
4
18
|
responses: {
|
|
5
19
|
"200": {
|
|
@@ -12,6 +26,16 @@ export declare const CaPublicKeyEndpointSchema: {
|
|
|
12
26
|
};
|
|
13
27
|
};
|
|
14
28
|
};
|
|
29
|
+
export declare const userCertificateRequestEndpointBodySchema: (env: SshCaBindings) => z.ZodObject<{
|
|
30
|
+
public_key: z.ZodPipe<z.ZodPipe<z.ZodBase64, z.ZodTransform<Buffer<ArrayBuffer>, string>>, z.ZodTransform<import("sshpk").Key, Buffer<ArrayBuffer>>>;
|
|
31
|
+
proof: z.ZodPipe<z.ZodString, z.ZodTransform<import("../../proof").ProofOfPossession, string>>;
|
|
32
|
+
identity: z.ZodPipe<z.ZodString, z.ZodTransform<{
|
|
33
|
+
sub: string;
|
|
34
|
+
principals: string[];
|
|
35
|
+
}, string>>;
|
|
36
|
+
extensions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
37
|
+
lifetime: z.ZodDefault<z.ZodInt>;
|
|
38
|
+
}, z.core.$strip>;
|
|
15
39
|
export declare const createUserCertificateRequestEndpointSchema: (env: SshCaBindings) => {
|
|
16
40
|
security: {
|
|
17
41
|
oidcAuth: never[];
|
|
@@ -64,7 +88,7 @@ export declare const createUserCertificateRequestEndpointSchema: (env: SshCaBind
|
|
|
64
88
|
};
|
|
65
89
|
};
|
|
66
90
|
};
|
|
67
|
-
export declare const createRevocationListEndpointSchema: (
|
|
91
|
+
export declare const createRevocationListEndpointSchema: () => {
|
|
68
92
|
request: {
|
|
69
93
|
params: z.ZodObject<{
|
|
70
94
|
certificateType: z.ZodEnum<{
|
|
@@ -90,6 +114,16 @@ export declare const createRevocationListEndpointSchema: (env: SshCaBindings) =>
|
|
|
90
114
|
};
|
|
91
115
|
};
|
|
92
116
|
};
|
|
117
|
+
export declare const hostCertificateRequestEndpointBodySchema: (env: SshCaBindings) => z.ZodObject<{
|
|
118
|
+
public_key: z.ZodPipe<z.ZodPipe<z.ZodBase64, z.ZodTransform<Buffer<ArrayBuffer>, string>>, z.ZodTransform<import("sshpk").Key, Buffer<ArrayBuffer>>>;
|
|
119
|
+
proof: z.ZodPipe<z.ZodString, z.ZodTransform<import("../../proof").ProofOfPossession, string>>;
|
|
120
|
+
identity: z.ZodPipe<z.ZodString, z.ZodTransform<{
|
|
121
|
+
sub: string;
|
|
122
|
+
principals: string[];
|
|
123
|
+
}, string>>;
|
|
124
|
+
principals: z.ZodArray<z.ZodString>;
|
|
125
|
+
lifetime: z.ZodDefault<z.ZodInt>;
|
|
126
|
+
}, z.core.$strip>;
|
|
93
127
|
export declare const createHostCertificateRequestEndpointSchema: (env: SshCaBindings) => {
|
|
94
128
|
security: {
|
|
95
129
|
oidcAuth: never[];
|
|
@@ -142,6 +176,12 @@ export declare const createHostCertificateRequestEndpointSchema: (env: SshCaBind
|
|
|
142
176
|
};
|
|
143
177
|
};
|
|
144
178
|
};
|
|
179
|
+
export declare const hostCertificateRenewEndpointBodySchema: (env: SshCaBindings) => z.ZodObject<{
|
|
180
|
+
certificate: z.ZodPipe<z.ZodPipe<z.ZodBase64, z.ZodTransform<Buffer<ArrayBuffer>, string>>, z.ZodTransform<import("sshpk").Certificate, Buffer<ArrayBuffer>>>;
|
|
181
|
+
public_key: z.ZodPipe<z.ZodPipe<z.ZodBase64, z.ZodTransform<Buffer<ArrayBuffer>, string>>, z.ZodTransform<import("sshpk").Key, Buffer<ArrayBuffer>>>;
|
|
182
|
+
proof: z.ZodPipe<z.ZodString, z.ZodTransform<import("../../proof").RenewalProofOfPossession, string>>;
|
|
183
|
+
lifetime: z.ZodDefault<z.ZodInt>;
|
|
184
|
+
}, z.core.$strip>;
|
|
145
185
|
export declare const createHostCertificateRenewEndpointSchema: (env: SshCaBindings) => {
|
|
146
186
|
request: {
|
|
147
187
|
body: {
|
|
@@ -177,6 +217,11 @@ export declare const createHostCertificateRenewEndpointSchema: (env: SshCaBindin
|
|
|
177
217
|
};
|
|
178
218
|
};
|
|
179
219
|
};
|
|
220
|
+
export declare const revokeCertificateEndpointBodySchema: (env: SshCaBindings) => z.ZodObject<{
|
|
221
|
+
serial: z.ZodBigInt;
|
|
222
|
+
public_key: z.ZodPipe<z.ZodPipe<z.ZodBase64, z.ZodTransform<Buffer<ArrayBuffer>, string>>, z.ZodTransform<import("sshpk").Key, Buffer<ArrayBuffer>>>;
|
|
223
|
+
proof: z.ZodPipe<z.ZodString, z.ZodTransform<import("../../proof").ProofOfPossession, string>>;
|
|
224
|
+
}, z.core.$strip>;
|
|
180
225
|
export declare const createRevokeCertificateEndpointSchema: (env: SshCaBindings) => {
|
|
181
226
|
request: {
|
|
182
227
|
params: z.ZodObject<{
|
|
@@ -216,3 +261,4 @@ export declare const createRevokeCertificateEndpointSchema: (env: SshCaBindings)
|
|
|
216
261
|
};
|
|
217
262
|
};
|
|
218
263
|
};
|
|
264
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/api/v3/schema.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAA;AACnB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAkDhD,eAAO,MAAM,yBAAyB,GAAI,KAAK,aAAa;;;WAO3D,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,KAAK,aAAa;;;WAOzD,CAAA;AAKD,eAAO,MAAM,kBAAkB,GAAI,KAAK,aAAa;;;;;iBAIpD,CAAA;AAKD,eAAO,MAAM,yBAAyB;;;;;;;;;;;CAYrC,CAAA;AAED,eAAO,MAAM,wCAAwC,GAAI,KAAK,aAAa;;;;;;;;;iBAiB1E,CAAA;AAED,eAAO,MAAM,0CAA0C,GAAI,KAAK,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqB3E,CAAA;AAEF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;CAkB7C,CAAA;AAEF,eAAO,MAAM,wCAAwC,GAAI,KAAK,aAAa;;;;;;;;;iBAgB1E,CAAA;AAED,eAAO,MAAM,0CAA0C,GAAI,KAAK,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqB3E,CAAA;AAEF,eAAO,MAAM,sCAAsC,GAAI,KAAK,aAAa;;;;;iBAgBxE,CAAA;AAED,eAAO,MAAM,wCAAwC,GAAI,KAAK,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmBzE,CAAA;AAEF,eAAO,MAAM,mCAAmC,GAAI,KAAK,aAAa;;;;iBAUrE,CAAA;AAED,eAAO,MAAM,qCAAqC,GAAI,KAAK,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBtE,CAAA"}
|
package/dist/api/v3/schema.js
CHANGED
|
@@ -20,22 +20,21 @@ const publicKey = openapiStringByte
|
|
|
20
20
|
description: "SSH public key to sign",
|
|
21
21
|
example: "ZWNkc2Etc2hhMi1uaXN0cDI1NiBBQUFBRTJWalpITmhMWE5vWVRJdGJtbHpkSEF5TlRZQUFBQUlibWx6ZEhBeU5UWUFBQUJCQkdNcFNKdHRmMEl0dE5DVmMyOFR6WEZSMUQweHZPM25wNjdWemVBUXNiZFpza3JEY1lqU2x3SjZIUERtVHBYYVUwbEVhWDlMNFloYy9jQ2YxTWU5RlRrPQo="
|
|
22
22
|
});
|
|
23
|
-
const createIdentityTokenSchema = (env) => (z.string()
|
|
23
|
+
export const createIdentityTokenSchema = (env) => (z.string()
|
|
24
24
|
.meta({
|
|
25
25
|
description: "Identity Token JWT from OIDC IdP",
|
|
26
26
|
example: "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwiZW1haWwiOiJ1c2VyQGV4YW1wbGUuY29tIiwiaWF0IjoxNzc1NzAzMDk1fQ.ri_neAWnhMNK3LzlsrBcQYymSM4yRjmNSZZSeZiXhrEqtEz6c3cXk0Esq765umGjpUsWcosL-OFrDJlyAjTDnhrd9oV08uc_CW0rQRsJIGEuRo3ryxkLdVu9mGoZWEUb9KwjGJrwxvr-0cPWx5jaDyKwJcqMvtV_bEITUD51sDB1Vm89QfYRO_pGJo2vrRzSvMjpUenRpwPay4lYIBxl41_4YpR9Rc6VrIZuYsjV2iqEZ4eBrygMA7zPR_hN7l7s95FddLOzj5NsK57VT4uLHwYohx2oqMzw3M-B9HsZIQin_9q61pZFQXepzJth0woXiZheU27llnfHX967PhNQyg"
|
|
27
27
|
})
|
|
28
28
|
.transform((val, ctx) => transformIdentityToken(env, val, ctx)));
|
|
29
|
-
const createAccessTokenSchema = (env) => (z.string()
|
|
29
|
+
export const createAccessTokenSchema = (env) => (z.string()
|
|
30
30
|
.meta({
|
|
31
31
|
description: "Access Token JWT from OIDC IdP",
|
|
32
|
-
example: "Bearer
|
|
32
|
+
example: "Bearer eyJ..."
|
|
33
33
|
})
|
|
34
|
-
.startsWith("Bearer ")
|
|
35
34
|
.transform((val, ctx) => transformAuthorizationHeader(env, val, ctx)));
|
|
36
35
|
const krl = openapiStringByte
|
|
37
36
|
.meta({ description: "Key Revocation List" });
|
|
38
|
-
const createHeaderSchema = (env) => (z.object({
|
|
37
|
+
export const createHeaderSchema = (env) => (z.object({
|
|
39
38
|
"Authorization": createAccessTokenSchema(env)
|
|
40
39
|
}));
|
|
41
40
|
const certificate = openapiStringByte
|
|
@@ -53,26 +52,27 @@ export const CaPublicKeyEndpointSchema = {
|
|
|
53
52
|
...InternalServerErrorException.schema(),
|
|
54
53
|
}
|
|
55
54
|
};
|
|
55
|
+
export const userCertificateRequestEndpointBodySchema = (env) => (z.object({
|
|
56
|
+
public_key: publicKey,
|
|
57
|
+
proof: proofOfPossession
|
|
58
|
+
.transform((val, ctx) => transformProofOfPossession(env, val, ctx)),
|
|
59
|
+
identity: createIdentityTokenSchema(env),
|
|
60
|
+
extensions: z.array(z.string())
|
|
61
|
+
.default(split(env.SSH_CERTIFICATE_EXTENSIONS))
|
|
62
|
+
.meta({ description: "Extensions to include in the issued SSH certificate" }),
|
|
63
|
+
lifetime: z.int()
|
|
64
|
+
.min(seconds("5 minutes"))
|
|
65
|
+
.max(seconds(env.SSH_CERTIFICATE_LIFETIME))
|
|
66
|
+
.default(seconds(env.SSH_CERTIFICATE_LIFETIME))
|
|
67
|
+
.meta({ description: "Lifetime of issued SSH certificate" }),
|
|
68
|
+
})
|
|
69
|
+
.superRefine((val, ctx) => refineCertificateRequest(env, val, ctx))
|
|
70
|
+
.openapi("User Certificate Request"));
|
|
56
71
|
export const createUserCertificateRequestEndpointSchema = (env) => ({
|
|
57
72
|
security: [{ oidcAuth: [] }],
|
|
58
73
|
request: {
|
|
59
74
|
headers: createHeaderSchema(env),
|
|
60
|
-
body: contentJson(
|
|
61
|
-
public_key: publicKey,
|
|
62
|
-
proof: proofOfPossession
|
|
63
|
-
.transform((val, ctx) => transformProofOfPossession(env, val, ctx)),
|
|
64
|
-
identity: createIdentityTokenSchema(env),
|
|
65
|
-
extensions: z.array(z.string())
|
|
66
|
-
.default(split(env.SSH_CERTIFICATE_EXTENSIONS))
|
|
67
|
-
.meta({ description: "Extensions to include in the issued SSH certificate" }),
|
|
68
|
-
lifetime: z.int()
|
|
69
|
-
.min(seconds("5 minutes"))
|
|
70
|
-
.max(seconds(env.SSH_CERTIFICATE_LIFETIME))
|
|
71
|
-
.default(seconds(env.SSH_CERTIFICATE_LIFETIME))
|
|
72
|
-
.meta({ description: "Lifetime of issued SSH certificate" }),
|
|
73
|
-
})
|
|
74
|
-
.superRefine((val, ctx) => refineCertificateRequest(env, val, ctx))
|
|
75
|
-
.openapi("User Certificate Request"))
|
|
75
|
+
body: contentJson(userCertificateRequestEndpointBodySchema(env)),
|
|
76
76
|
},
|
|
77
77
|
responses: {
|
|
78
78
|
"200": {
|
|
@@ -89,7 +89,7 @@ export const createUserCertificateRequestEndpointSchema = (env) => ({
|
|
|
89
89
|
...InternalServerErrorException.schema(),
|
|
90
90
|
}
|
|
91
91
|
});
|
|
92
|
-
export const createRevocationListEndpointSchema = (
|
|
92
|
+
export const createRevocationListEndpointSchema = () => ({
|
|
93
93
|
request: {
|
|
94
94
|
params: z.object({
|
|
95
95
|
certificateType: z.enum(["user", "host"])
|
|
@@ -107,25 +107,26 @@ export const createRevocationListEndpointSchema = (env) => ({
|
|
|
107
107
|
...InternalServerErrorException.schema(),
|
|
108
108
|
}
|
|
109
109
|
});
|
|
110
|
+
export const hostCertificateRequestEndpointBodySchema = (env) => (z.object({
|
|
111
|
+
public_key: publicKey,
|
|
112
|
+
proof: proofOfPossession
|
|
113
|
+
.transform((val, ctx) => transformProofOfPossession(env, val, ctx)),
|
|
114
|
+
identity: createIdentityTokenSchema(env),
|
|
115
|
+
principals: z.array(z.string()).min(1)
|
|
116
|
+
.meta({ description: "List of principals to include on the issued certificate" }),
|
|
117
|
+
lifetime: z.int()
|
|
118
|
+
.min(seconds("24 hours"))
|
|
119
|
+
.max(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
120
|
+
.default(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
121
|
+
.meta({ description: "Lifetime of issued Host SSH certificate" }),
|
|
122
|
+
})
|
|
123
|
+
.superRefine((val, ctx) => refineHostCertificateRequest(env, val, ctx))
|
|
124
|
+
.openapi("Host Certificate Request"));
|
|
110
125
|
export const createHostCertificateRequestEndpointSchema = (env) => ({
|
|
111
126
|
security: [{ oidcAuth: [] }],
|
|
112
127
|
request: {
|
|
113
128
|
headers: createHeaderSchema(env),
|
|
114
|
-
body: contentJson(
|
|
115
|
-
public_key: publicKey,
|
|
116
|
-
proof: proofOfPossession
|
|
117
|
-
.transform((val, ctx) => transformProofOfPossession(env, val, ctx)),
|
|
118
|
-
identity: createIdentityTokenSchema(env),
|
|
119
|
-
principals: z.array(z.string()).min(1)
|
|
120
|
-
.meta({ description: "List of principals to include on the issued certificate" }),
|
|
121
|
-
lifetime: z.int()
|
|
122
|
-
.min(seconds("24 hours"))
|
|
123
|
-
.max(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
124
|
-
.default(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
125
|
-
.meta({ description: "Lifetime of issued Host SSH certificate" }),
|
|
126
|
-
})
|
|
127
|
-
.superRefine((val, ctx) => refineHostCertificateRequest(env, val, ctx))
|
|
128
|
-
.openapi("Host Certificate Request"))
|
|
129
|
+
body: contentJson(hostCertificateRequestEndpointBodySchema(env))
|
|
129
130
|
},
|
|
130
131
|
responses: {
|
|
131
132
|
"200": {
|
|
@@ -142,23 +143,24 @@ export const createHostCertificateRequestEndpointSchema = (env) => ({
|
|
|
142
143
|
...InternalServerErrorException.schema(),
|
|
143
144
|
}
|
|
144
145
|
});
|
|
146
|
+
export const hostCertificateRenewEndpointBodySchema = (env) => (z.object({
|
|
147
|
+
certificate: openapiStringByte
|
|
148
|
+
.transform(transformCertificate)
|
|
149
|
+
.meta({ description: "SSH certificate to renew" }),
|
|
150
|
+
public_key: publicKey,
|
|
151
|
+
proof: proofOfPossession
|
|
152
|
+
.transform((val, ctx) => transformRenewalProofOfPossession(env, val, ctx)),
|
|
153
|
+
lifetime: z.int()
|
|
154
|
+
.min(seconds("24 hours"))
|
|
155
|
+
.max(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
156
|
+
.default(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
157
|
+
.meta({ description: "Lifetime of renewed Host SSH certificate" }),
|
|
158
|
+
})
|
|
159
|
+
.superRefine((val, ctx) => refineHostCertificateRenewal(env, isRevoked, val, ctx))
|
|
160
|
+
.openapi("Host Certificate Renew"));
|
|
145
161
|
export const createHostCertificateRenewEndpointSchema = (env) => ({
|
|
146
162
|
request: {
|
|
147
|
-
body: contentJson(
|
|
148
|
-
certificate: openapiStringByte
|
|
149
|
-
.transform(transformCertificate)
|
|
150
|
-
.meta({ description: "SSH certificate to renew" }),
|
|
151
|
-
public_key: publicKey,
|
|
152
|
-
proof: proofOfPossession
|
|
153
|
-
.transform((val, ctx) => transformRenewalProofOfPossession(env, val, ctx)),
|
|
154
|
-
lifetime: z.int()
|
|
155
|
-
.min(seconds("24 hours"))
|
|
156
|
-
.max(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
157
|
-
.default(seconds(env.SSH_HOST_CERTIFICATE_LIFETIME))
|
|
158
|
-
.meta({ description: "Lifetime of renewed Host SSH certificate" }),
|
|
159
|
-
})
|
|
160
|
-
.superRefine((val, ctx) => refineHostCertificateRenewal(env, isRevoked, val, ctx))
|
|
161
|
-
.openapi("Host Certificate Renew"))
|
|
163
|
+
body: contentJson(hostCertificateRenewEndpointBodySchema(env))
|
|
162
164
|
},
|
|
163
165
|
responses: {
|
|
164
166
|
"200": {
|
|
@@ -175,20 +177,21 @@ export const createHostCertificateRenewEndpointSchema = (env) => ({
|
|
|
175
177
|
...InternalServerErrorException.schema(),
|
|
176
178
|
}
|
|
177
179
|
});
|
|
180
|
+
export const revokeCertificateEndpointBodySchema = (env) => (z.object({
|
|
181
|
+
serial: z.bigint()
|
|
182
|
+
.meta({ description: "Serial number of certificate to revoke" }),
|
|
183
|
+
public_key: publicKey,
|
|
184
|
+
proof: proofOfPossession
|
|
185
|
+
.transform((val, ctx) => transformProofOfPossession(env, val, ctx)),
|
|
186
|
+
})
|
|
187
|
+
.openapi("Certificate Revocation")
|
|
188
|
+
.superRefine((val, ctx) => refineRevokeCertificate(env, val, ctx)));
|
|
178
189
|
export const createRevokeCertificateEndpointSchema = (env) => ({
|
|
179
190
|
request: {
|
|
180
191
|
params: z.object({
|
|
181
192
|
certificateType: z.enum(["user", "host"])
|
|
182
193
|
}),
|
|
183
|
-
body: contentJson(
|
|
184
|
-
serial: z.bigint()
|
|
185
|
-
.meta({ description: "Serial number of certificate to revoke" }),
|
|
186
|
-
public_key: publicKey,
|
|
187
|
-
proof: proofOfPossession
|
|
188
|
-
.transform((val, ctx) => transformProofOfPossession(env, val, ctx)),
|
|
189
|
-
})
|
|
190
|
-
.openapi("Certificate Revocation")
|
|
191
|
-
.superRefine((val, ctx) => refineRevokeCertificate(env, val, ctx)))
|
|
194
|
+
body: contentJson(revokeCertificateEndpointBodySchema(env))
|
|
192
195
|
},
|
|
193
196
|
responses: {
|
|
194
197
|
"200": {
|
|
@@ -206,3 +209,4 @@ export const createRevokeCertificateEndpointSchema = (env) => ({
|
|
|
206
209
|
...ConflictException.schema()
|
|
207
210
|
}
|
|
208
211
|
});
|
|
212
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/api/v3/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/certificate.d.ts
CHANGED
|
@@ -28,3 +28,4 @@ export declare class BadIssuerError extends Error {
|
|
|
28
28
|
}
|
|
29
29
|
export declare function createSignedHostCertificate(env: SshCaBindings, public_key: Key, options?: CreateHostCertificateOptions): Promise<Certificate>;
|
|
30
30
|
export declare const generateSerial: (serial?: bigint) => Buffer<ArrayBuffer>;
|
|
31
|
+
//# sourceMappingURL=certificate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"certificate.d.ts","sourceRoot":"","sources":["../src/certificate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAqB,QAAQ,EAAoD,GAAG,EAAmB,UAAU,EAAE,MAAM,OAAO,CAAA;AAGpJ,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAI5C,MAAM,MAAM,wBAAwB,GAAG;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB,CAAA;AAQD,qBAAa,gBAAiB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAO3B;AAED,MAAM,MAAM,0BAA0B,GAAG;IACxC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,wBAAwB,CAAA;AAE5B,eAAO,MAAM,mBAAmB,GAAI,KAAK,aAAa,EAAE,OAAO,MAAM,EAAE,KAAK,UAAU,EAAE,YAAY,GAAG,EAAE,UAAU,0BAA0B,KAAG,WAuF/I,CAAA;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,WAAW,CAAC,CAgB1J;AAED,MAAM,MAAM,4BAA4B,GAAG;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAA;CACrB,CAAA;AAOD,qBAAa,cAAe,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAM3B;AAED,wBAAsB,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,WAAW,CAAC,CAyCnJ;AAED,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,MAAM,CAAC,WAAW,CAUlE,CAAA"}
|
package/dist/certificate.js
CHANGED
|
@@ -15,9 +15,15 @@ export class CertificateError extends Error {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
export const generateCertificate = (env, email, key, public_key, options) => {
|
|
18
|
-
let { lifetime
|
|
18
|
+
let { lifetime } = options ?? {};
|
|
19
|
+
const { principals, extensions, serial } = options ?? {};
|
|
19
20
|
// add identities
|
|
20
|
-
const
|
|
21
|
+
const includeSelf = env.SSH_CERTIFICATE_INCLUDE_SELF === undefined
|
|
22
|
+
? false
|
|
23
|
+
: typeof env.SSH_CERTIFICATE_INCLUDE_SELF === "string"
|
|
24
|
+
? env.SSH_CERTIFICATE_INCLUDE_SELF === "true"
|
|
25
|
+
: env.SSH_CERTIFICATE_INCLUDE_SELF;
|
|
26
|
+
const identity = includeSelf
|
|
21
27
|
? [identityForUser(email.split("@")[0])]
|
|
22
28
|
: [];
|
|
23
29
|
if (principals !== undefined) {
|
|
@@ -25,10 +31,8 @@ export const generateCertificate = (env, email, key, public_key, options) => {
|
|
|
25
31
|
identity.push(identityForUser(p));
|
|
26
32
|
}
|
|
27
33
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
identity.push(identityForUser(p));
|
|
31
|
-
}
|
|
34
|
+
for (const p of split(env.SSH_CERTIFICATE_PRINCIPALS)) {
|
|
35
|
+
identity.push(identityForUser(p));
|
|
32
36
|
}
|
|
33
37
|
// lifetime is the smaller of what was provided in the options or the default
|
|
34
38
|
lifetime = lifetime !== undefined
|
|
@@ -152,3 +156,4 @@ export const generateSerial = (serial) => {
|
|
|
152
156
|
const randomBytes = crypto.getRandomValues(new Uint8Array(8));
|
|
153
157
|
return Buffer.from(randomBytes);
|
|
154
158
|
};
|
|
159
|
+
//# sourceMappingURL=certificate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"certificate.js","sourceRoot":"","sources":["../src/certificate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Certificate } from "sshpk";
|
|
2
|
-
import type { SshCaBindings } from "
|
|
2
|
+
import type { SshCaBindings } from "../types";
|
|
3
3
|
export declare enum CertificateType {
|
|
4
4
|
User = 0,
|
|
5
5
|
Host = 1
|
|
@@ -16,8 +16,9 @@ export type CertificateRecord = {
|
|
|
16
16
|
certificate_type: CertificateType;
|
|
17
17
|
public_key: string | null;
|
|
18
18
|
};
|
|
19
|
-
export
|
|
20
|
-
|
|
19
|
+
export type DatabaseSchema = {
|
|
20
|
+
certificates: CertificateRecord;
|
|
21
|
+
};
|
|
21
22
|
export declare const dbCleanup: (env: SshCaBindings) => Promise<void>;
|
|
22
23
|
export declare const recordCertificate: (env: SshCaBindings, certificate: Certificate, keyid: string, certificateType?: CertificateType) => Promise<void>;
|
|
23
24
|
export declare const isRevoked: (env: SshCaBindings, serial: bigint) => Promise<boolean>;
|
|
@@ -29,8 +30,7 @@ export declare enum RevocationStatus {
|
|
|
29
30
|
}
|
|
30
31
|
export declare const revocationStatus: (env: SshCaBindings, serial: bigint, publickey: string, certificateType: CertificateType) => Promise<RevocationStatus>;
|
|
31
32
|
export declare const getRevocationList: (env: SshCaBindings, certificateType: CertificateType) => Promise<string[]>;
|
|
32
|
-
type RevokedCertificate =
|
|
33
|
-
revoked_at: string;
|
|
34
|
-
};
|
|
33
|
+
type RevokedCertificate = Pick<CertificateRecord, "revoked_at">;
|
|
35
34
|
export declare const revokeCertificate: (env: SshCaBindings, serial: bigint) => Promise<RevokedCertificate[]>;
|
|
36
35
|
export {};
|
|
36
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAoB,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAI7C,oBAAY,eAAe;IAC1B,IAAI,IAAA;IACJ,IAAI,IAAA;CACJ;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,WAAW,EAAE,IAAI,CAAA;IACjB,YAAY,EAAE,IAAI,CAAA;IAClB,UAAU,EAAE,IAAI,GAAG,IAAI,CAAA;IACvB,gBAAgB,EAAE,eAAe,CAAA;IACjC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC5B,YAAY,EAAE,iBAAiB,CAAA;CAC/B,CAAA;AAqBD,eAAO,MAAM,SAAS,GAAU,KAAK,aAAa,kBAqBjD,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAU,KAAK,aAAa,EAAE,aAAa,WAAW,EAAE,OAAO,MAAM,EAAE,kBAAiB,eAAsC,kBA2B3J,CAAA;AAED,eAAO,MAAM,SAAS,GAAU,KAAK,aAAa,EAAE,QAAQ,MAAM,KAAG,OAAO,CAAC,OAAO,CAYnF,CAAA;AAED,oBAAY,gBAAgB;IAC3B,QAAQ,IAAA;IACR,OAAO,IAAA;IACP,SAAS,IAAA;IACT,WAAW,IAAA;CACX;AAED,eAAO,MAAM,gBAAgB,GAAU,KAAK,aAAa,EAAE,QAAQ,MAAM,EAAE,WAAW,MAAM,EAAE,iBAAiB,eAAe,KAAG,OAAO,CAAC,gBAAgB,CAwBxJ,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAU,KAAK,aAAa,EAAE,iBAAiB,eAAe,KAAG,OAAO,CAAC,MAAM,EAAE,CAoB9G,CAAA;AAED,KAAK,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAA;AAE/D,eAAO,MAAM,iBAAiB,GAAU,KAAK,aAAa,EAAE,QAAQ,MAAM,KAAG,OAAO,CAAC,kBAAkB,EAAE,CAuBxG,CAAA"}
|