@affinidi/cli 2.6.1 → 2.8.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.
- package/README.md +2 -2
- package/bin/dev.cmd +1 -1
- package/bin/dev.js +5 -0
- package/bin/run.js +5 -0
- package/dist/commands/generate/app.d.ts +7 -7
- package/dist/commands/generate/app.js +123 -81
- package/dist/commands/generate/app.js.map +1 -1
- package/dist/commands/iam/add-principal.d.ts +3 -3
- package/dist/commands/iam/add-principal.js +27 -31
- package/dist/commands/iam/add-principal.js.map +1 -1
- package/dist/commands/iam/get-policies.d.ts +4 -4
- package/dist/commands/iam/get-policies.js +27 -31
- package/dist/commands/iam/get-policies.js.map +1 -1
- package/dist/commands/iam/list-principals.d.ts +2 -2
- package/dist/commands/iam/list-principals.js +9 -14
- package/dist/commands/iam/list-principals.js.map +1 -1
- package/dist/commands/iam/remove-principal.d.ts +4 -3
- package/dist/commands/iam/remove-principal.js +27 -31
- package/dist/commands/iam/remove-principal.js.map +1 -1
- package/dist/commands/iam/update-policies.d.ts +5 -5
- package/dist/commands/iam/update-policies.js +44 -48
- package/dist/commands/iam/update-policies.js.map +1 -1
- package/dist/commands/login/add-user-to-group.d.ts +4 -4
- package/dist/commands/login/add-user-to-group.js +16 -21
- package/dist/commands/login/add-user-to-group.js.map +1 -1
- package/dist/commands/login/create-config.d.ts +11 -10
- package/dist/commands/login/create-config.js +46 -50
- package/dist/commands/login/create-config.js.map +1 -1
- package/dist/commands/login/create-group.d.ts +3 -3
- package/dist/commands/login/create-group.js +15 -20
- package/dist/commands/login/create-group.js.map +1 -1
- package/dist/commands/login/delete-config.d.ts +2 -2
- package/dist/commands/login/delete-config.js +14 -19
- package/dist/commands/login/delete-config.js.map +1 -1
- package/dist/commands/login/delete-group.d.ts +2 -2
- package/dist/commands/login/delete-group.js +14 -19
- package/dist/commands/login/delete-group.js.map +1 -1
- package/dist/commands/login/export-configs.d.ts +3 -3
- package/dist/commands/login/export-configs.js +21 -27
- package/dist/commands/login/export-configs.js.map +1 -1
- package/dist/commands/login/export-groups.d.ts +3 -3
- package/dist/commands/login/export-groups.js +21 -27
- package/dist/commands/login/export-groups.js.map +1 -1
- package/dist/commands/login/get-config.d.ts +3 -3
- package/dist/commands/login/get-config.js +14 -19
- package/dist/commands/login/get-config.js.map +1 -1
- package/dist/commands/login/get-group.d.ts +3 -3
- package/dist/commands/login/get-group.js +14 -19
- package/dist/commands/login/get-group.js.map +1 -1
- package/dist/commands/login/import-configs.d.ts +3 -3
- package/dist/commands/login/import-configs.js +33 -37
- package/dist/commands/login/import-configs.js.map +1 -1
- package/dist/commands/login/import-groups.d.ts +3 -3
- package/dist/commands/login/import-groups.js +21 -26
- package/dist/commands/login/import-groups.js.map +1 -1
- package/dist/commands/login/list-configs.d.ts +2 -2
- package/dist/commands/login/list-configs.js +7 -11
- package/dist/commands/login/list-configs.js.map +1 -1
- package/dist/commands/login/list-groups.d.ts +2 -2
- package/dist/commands/login/list-groups.js +7 -11
- package/dist/commands/login/list-groups.js.map +1 -1
- package/dist/commands/login/list-users-in-group.d.ts +5 -5
- package/dist/commands/login/list-users-in-group.js +24 -29
- package/dist/commands/login/list-users-in-group.js.map +1 -1
- package/dist/commands/login/remove-user-from-group.d.ts +3 -3
- package/dist/commands/login/remove-user-from-group.js +16 -21
- package/dist/commands/login/remove-user-from-group.js.map +1 -1
- package/dist/commands/login/update-config.d.ts +10 -10
- package/dist/commands/login/update-config.js +40 -45
- package/dist/commands/login/update-config.js.map +1 -1
- package/dist/commands/project/create-project.d.ts +4 -4
- package/dist/commands/project/create-project.js +16 -21
- package/dist/commands/project/create-project.js.map +1 -1
- package/dist/commands/project/get-active-project.d.ts +2 -2
- package/dist/commands/project/get-active-project.js +7 -11
- package/dist/commands/project/get-active-project.js.map +1 -1
- package/dist/commands/project/list-projects.d.ts +2 -2
- package/dist/commands/project/list-projects.js +7 -11
- package/dist/commands/project/list-projects.js.map +1 -1
- package/dist/commands/project/select-project.d.ts +3 -3
- package/dist/commands/project/select-project.js +20 -25
- package/dist/commands/project/select-project.js.map +1 -1
- package/dist/commands/project/update-project.d.ts +5 -5
- package/dist/commands/project/update-project.js +18 -23
- package/dist/commands/project/update-project.js.map +1 -1
- package/dist/commands/start.d.ts +1 -1
- package/dist/commands/start.js +13 -18
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/stop.d.ts +1 -1
- package/dist/commands/stop.js +13 -18
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/token/create-token.d.ts +10 -13
- package/dist/commands/token/create-token.js +56 -134
- package/dist/commands/token/create-token.js.map +1 -1
- package/dist/commands/token/delete-token.d.ts +2 -2
- package/dist/commands/token/delete-token.js +13 -17
- package/dist/commands/token/delete-token.js.map +1 -1
- package/dist/commands/token/get-token.d.ts +3 -3
- package/dist/commands/token/get-token.js +13 -17
- package/dist/commands/token/get-token.js.map +1 -1
- package/dist/commands/token/list-tokens.d.ts +2 -2
- package/dist/commands/token/list-tokens.js +7 -11
- package/dist/commands/token/list-tokens.js.map +1 -1
- package/dist/commands/token/update-token.d.ts +8 -7
- package/dist/commands/token/update-token.js +30 -33
- package/dist/commands/token/update-token.js.map +1 -1
- package/dist/commands/whoami.d.ts +1 -1
- package/dist/commands/whoami.js +7 -11
- package/dist/commands/whoami.js.map +1 -1
- package/dist/common/base-command.d.ts +1 -12
- package/dist/common/base-command.js +13 -17
- package/dist/common/base-command.js.map +1 -1
- package/dist/common/constants.js +12 -15
- package/dist/common/constants.js.map +1 -1
- package/dist/common/error-messages.js +1 -5
- package/dist/common/error-messages.js.map +1 -1
- package/dist/common/prompts.js +7 -11
- package/dist/common/prompts.js.map +1 -1
- package/dist/common/validators.js +15 -21
- package/dist/common/validators.js.map +1 -1
- package/dist/helpers/app.d.ts +38 -2
- package/dist/helpers/app.js +21 -28
- package/dist/helpers/app.js.map +1 -1
- package/dist/helpers/degit.js +6 -11
- package/dist/helpers/degit.js.map +1 -1
- package/dist/helpers/jwk.d.ts +1 -1
- package/dist/helpers/jwk.js +16 -24
- package/dist/helpers/jwk.js.map +1 -1
- package/dist/helpers/token.d.ts +29 -0
- package/dist/helpers/token.js +78 -0
- package/dist/helpers/token.js.map +1 -0
- package/dist/index.js +1 -5
- package/dist/index.js.map +1 -1
- package/dist/services/affinidi/auth/auth-result-page.js +1 -5
- package/dist/services/affinidi/auth/auth-result-page.js.map +1 -1
- package/dist/services/affinidi/auth/bff-auth-provider.d.ts +1 -1
- package/dist/services/affinidi/auth/bff-auth-provider.js +25 -30
- package/dist/services/affinidi/auth/bff-auth-provider.js.map +1 -1
- package/dist/services/affinidi/auth/types.d.ts +1 -1
- package/dist/services/affinidi/auth/types.js +1 -2
- package/dist/services/affinidi/bff-service.d.ts +5 -5
- package/dist/services/affinidi/bff-service.js +56 -61
- package/dist/services/affinidi/bff-service.js.map +1 -1
- package/dist/services/affinidi/bff-service.types.js +1 -2
- package/dist/services/affinidi/errors.js +21 -26
- package/dist/services/affinidi/errors.js.map +1 -1
- package/dist/services/affinidi/iam/iam.api.d.ts +21 -21
- package/dist/services/affinidi/iam/iam.api.js +6 -12
- package/dist/services/affinidi/iam/iam.api.js.map +1 -1
- package/dist/services/affinidi/iam/{index.d.ts → service.d.ts} +4 -4
- package/dist/services/affinidi/iam/{index.js → service.js} +36 -40
- package/dist/services/affinidi/iam/service.js.map +1 -0
- package/dist/services/affinidi/logger/console-logger-adapter.d.ts +1 -1
- package/dist/services/affinidi/logger/console-logger-adapter.js +1 -5
- package/dist/services/affinidi/logger/console-logger-adapter.js.map +1 -1
- package/dist/services/affinidi/logger/logger-adapter.js +1 -2
- package/dist/services/affinidi/vp-adapter/{index.d.ts → service.d.ts} +2 -2
- package/dist/services/affinidi/vp-adapter/{index.js → service.js} +38 -41
- package/dist/services/affinidi/vp-adapter/service.js.map +1 -0
- package/dist/services/affinidi/vp-adapter/vp-adapter.api.d.ts +43 -43
- package/dist/services/affinidi/vp-adapter/vp-adapter.api.js +8 -14
- package/dist/services/affinidi/vp-adapter/vp-adapter.api.js.map +1 -1
- package/dist/services/credentials-vault.d.ts +0 -1
- package/dist/services/credentials-vault.js +15 -21
- package/dist/services/credentials-vault.js.map +1 -1
- package/dist/services/env-config.d.ts +1 -1
- package/dist/services/env-config.js +6 -10
- package/dist/services/env-config.js.map +1 -1
- package/dist/services/generator/auth0.d.ts +1 -1
- package/dist/services/generator/auth0.js +3 -8
- package/dist/services/generator/auth0.js.map +1 -1
- package/dist/services/generator/env-configurer.d.ts +12 -1
- package/dist/services/generator/env-configurer.js +15 -14
- package/dist/services/generator/env-configurer.js.map +1 -1
- package/package.json +40 -43
- package/theme.json +26 -0
- package/bin/dev +0 -17
- package/bin/run +0 -5
- package/dist/common/index.d.ts +0 -2
- package/dist/common/index.js +0 -8
- package/dist/common/index.js.map +0 -1
- package/dist/services/affinidi/iam/index.js.map +0 -1
- package/dist/services/affinidi/logger/index.d.ts +0 -2
- package/dist/services/affinidi/logger/index.js +0 -6
- package/dist/services/affinidi/logger/index.js.map +0 -1
- package/dist/services/affinidi/vp-adapter/index.js.map +0 -1
|
@@ -1,29 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const
|
|
14
|
-
const bff_service_1 = require("../../services/affinidi/bff-service");
|
|
15
|
-
const iam_1 = require("../../services/affinidi/iam");
|
|
16
|
-
const flagsSchema = zod_1.z
|
|
1
|
+
import { readFile } from 'fs/promises';
|
|
2
|
+
import { confirm, input } from '@inquirer/prompts';
|
|
3
|
+
import { Flags, ux } from '@oclif/core';
|
|
4
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
5
|
+
import { z } from 'zod';
|
|
6
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
7
|
+
import { promptRequiredParameters } from '../../common/prompts.js';
|
|
8
|
+
import { INPUT_LIMIT, validateInputLength } from '../../common/validators.js';
|
|
9
|
+
import { getKeyType, pemToJWK } from '../../helpers/jwk.js';
|
|
10
|
+
import { bffService } from '../../services/affinidi/bff-service.js';
|
|
11
|
+
import { SupportedAlgorithms } from '../../common/constants.js';
|
|
12
|
+
import { addPrincipal, createToken, generateKeyPair, updatePolicies } from '../../helpers/token.js';
|
|
13
|
+
const flagsSchema = z
|
|
17
14
|
.object({
|
|
18
|
-
name:
|
|
19
|
-
algorithm:
|
|
20
|
-
'key-id':
|
|
21
|
-
'public-key-file':
|
|
22
|
-
'auto-generate-key':
|
|
23
|
-
passphrase:
|
|
24
|
-
'with-permissions':
|
|
25
|
-
resources:
|
|
26
|
-
actions:
|
|
15
|
+
name: z.string().max(INPUT_LIMIT),
|
|
16
|
+
algorithm: z.nativeEnum(SupportedAlgorithms),
|
|
17
|
+
'key-id': z.string().max(INPUT_LIMIT).optional(),
|
|
18
|
+
'public-key-file': z.string().max(INPUT_LIMIT).optional(),
|
|
19
|
+
'auto-generate-key': z.boolean(),
|
|
20
|
+
passphrase: z.string().max(INPUT_LIMIT).optional(),
|
|
21
|
+
'with-permissions': z.boolean(),
|
|
22
|
+
resources: z.string().max(INPUT_LIMIT).optional().default('*'),
|
|
23
|
+
actions: z.string().max(INPUT_LIMIT).optional().default('*'),
|
|
27
24
|
})
|
|
28
25
|
.refine((data) => {
|
|
29
26
|
if (!data['auto-generate-key'] && !data['public-key-file']) {
|
|
@@ -34,47 +31,47 @@ const flagsSchema = zod_1.z
|
|
|
34
31
|
message: 'public-key-file is required when auto-generate-key is false',
|
|
35
32
|
path: ['public-key-file'],
|
|
36
33
|
});
|
|
37
|
-
class CreateToken extends
|
|
34
|
+
export class CreateToken extends BaseCommand {
|
|
38
35
|
async run() {
|
|
39
36
|
const { flags } = await this.parse(CreateToken);
|
|
40
37
|
const validatedFlags = await this.validateFlags(flags);
|
|
41
|
-
|
|
38
|
+
ux.action.start('Creating Personal Access Token');
|
|
42
39
|
let keypair, jwks;
|
|
43
|
-
const kid = validatedFlags['key-id'] ?? (
|
|
40
|
+
const kid = validatedFlags['key-id'] ?? uuidv4();
|
|
44
41
|
if (validatedFlags['auto-generate-key']) {
|
|
45
|
-
keypair =
|
|
42
|
+
keypair = generateKeyPair(kid, validatedFlags.algorithm, validatedFlags.passphrase);
|
|
46
43
|
jwks = keypair.jwks;
|
|
47
44
|
}
|
|
48
45
|
else {
|
|
49
|
-
const publicKeyPEM = await
|
|
50
|
-
const jwk = await
|
|
46
|
+
const publicKeyPEM = await readFile(validatedFlags['public-key-file'], 'utf8');
|
|
47
|
+
const jwk = await pemToJWK(publicKeyPEM, validatedFlags.algorithm);
|
|
51
48
|
jwks = {
|
|
52
49
|
keys: [
|
|
53
50
|
{
|
|
54
51
|
kid,
|
|
55
52
|
alg: validatedFlags.algorithm,
|
|
56
53
|
use: 'sig',
|
|
57
|
-
kty: jwk.kty ??
|
|
54
|
+
kty: jwk.kty ?? getKeyType(validatedFlags.algorithm),
|
|
58
55
|
n: jwk.n,
|
|
59
56
|
e: jwk.e,
|
|
60
57
|
},
|
|
61
58
|
],
|
|
62
59
|
};
|
|
63
60
|
}
|
|
64
|
-
const token = await
|
|
65
|
-
|
|
61
|
+
const token = await createToken(validatedFlags.name, validatedFlags.algorithm, jwks, validatedFlags['key-id']);
|
|
62
|
+
ux.action.stop('Created successfully!');
|
|
66
63
|
let projectId;
|
|
67
64
|
if (validatedFlags['with-permissions']) {
|
|
68
|
-
|
|
69
|
-
const promises = [
|
|
65
|
+
ux.action.start('Adding token to active project');
|
|
66
|
+
const promises = [addPrincipal(token.id), bffService.getActiveProject()];
|
|
70
67
|
const [, activeProject] = await Promise.all(promises);
|
|
71
68
|
projectId = activeProject.id;
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
ux.action.stop('Added successfully!');
|
|
70
|
+
ux.action.start('Granting permissions to token');
|
|
74
71
|
const actions = validatedFlags.actions ? validatedFlags.actions.split(' ') : ['*'];
|
|
75
72
|
const resources = validatedFlags.actions ? validatedFlags.actions.split(' ') : ['*'];
|
|
76
|
-
await
|
|
77
|
-
|
|
73
|
+
await updatePolicies(token.id, projectId, actions, resources);
|
|
74
|
+
ux.action.stop('Granted successfully!');
|
|
78
75
|
}
|
|
79
76
|
if (!this.jsonEnabled()) {
|
|
80
77
|
this.logJson(token);
|
|
@@ -94,9 +91,9 @@ class CreateToken extends common_1.BaseCommand {
|
|
|
94
91
|
return token;
|
|
95
92
|
}
|
|
96
93
|
async validateFlags(flags) {
|
|
97
|
-
let promptFlags = await
|
|
94
|
+
let promptFlags = await promptRequiredParameters(['name'], flags);
|
|
98
95
|
if (!promptFlags['public-key-file'] && !promptFlags['no-input']) {
|
|
99
|
-
promptFlags['auto-generate-key'] ?? (promptFlags['auto-generate-key'] = await
|
|
96
|
+
promptFlags['auto-generate-key'] ?? (promptFlags['auto-generate-key'] = await confirm({
|
|
100
97
|
message: 'Generate a new keypair for the token?',
|
|
101
98
|
}));
|
|
102
99
|
}
|
|
@@ -104,15 +101,15 @@ class CreateToken extends common_1.BaseCommand {
|
|
|
104
101
|
promptFlags['auto-generate-key'] = !!promptFlags['auto-generate-key'];
|
|
105
102
|
}
|
|
106
103
|
if (promptFlags['auto-generate-key'] && !promptFlags['no-input']) {
|
|
107
|
-
promptFlags.passphrase ?? (promptFlags.passphrase =
|
|
104
|
+
promptFlags.passphrase ?? (promptFlags.passphrase = validateInputLength(await input({
|
|
108
105
|
message: 'Enter a passphrase to encrypt the private key. Leave it empty for no encryption',
|
|
109
|
-
}),
|
|
106
|
+
}), INPUT_LIMIT));
|
|
110
107
|
}
|
|
111
108
|
if (!promptFlags['auto-generate-key']) {
|
|
112
|
-
promptFlags = await
|
|
109
|
+
promptFlags = await promptRequiredParameters(['public-key-file'], promptFlags);
|
|
113
110
|
}
|
|
114
111
|
if (!promptFlags['no-input']) {
|
|
115
|
-
promptFlags['with-permissions'] ?? (promptFlags['with-permissions'] = await
|
|
112
|
+
promptFlags['with-permissions'] ?? (promptFlags['with-permissions'] = await confirm({
|
|
116
113
|
message: 'Add token to active project and grant permissions?',
|
|
117
114
|
}));
|
|
118
115
|
}
|
|
@@ -120,93 +117,18 @@ class CreateToken extends common_1.BaseCommand {
|
|
|
120
117
|
promptFlags['with-permissions'] = !!promptFlags['with-permissions'];
|
|
121
118
|
}
|
|
122
119
|
if (!promptFlags['no-input'] && promptFlags['with-permissions']) {
|
|
123
|
-
promptFlags.resources =
|
|
120
|
+
promptFlags.resources = validateInputLength(await input({
|
|
124
121
|
message: 'Enter the allowed resources, separated by spaces. Use * to allow access to all project resources',
|
|
125
122
|
default: '*',
|
|
126
|
-
}),
|
|
127
|
-
promptFlags.actions =
|
|
123
|
+
}), INPUT_LIMIT);
|
|
124
|
+
promptFlags.actions = validateInputLength(await input({
|
|
128
125
|
message: 'Enter the allowed actions, separated by spaces. Use * to allow all actions',
|
|
129
126
|
default: '*',
|
|
130
|
-
}),
|
|
127
|
+
}), INPUT_LIMIT);
|
|
131
128
|
}
|
|
132
129
|
return flagsSchema.parse(promptFlags);
|
|
133
130
|
}
|
|
134
|
-
async createToken(name, algorithm, jwks, keyId) {
|
|
135
|
-
let token = await iam_1.iamService.createToken({
|
|
136
|
-
name,
|
|
137
|
-
authenticationMethod: {
|
|
138
|
-
type: 'PRIVATE_KEY',
|
|
139
|
-
signingAlgorithm: algorithm,
|
|
140
|
-
publicKeyInfo: {
|
|
141
|
-
jwks,
|
|
142
|
-
},
|
|
143
|
-
},
|
|
144
|
-
});
|
|
145
|
-
// If keyId was not provided it means that a randomly generated uuid was assigned and we should change it to the tokenId
|
|
146
|
-
if (!keyId) {
|
|
147
|
-
jwks.keys[0].kid = token.id;
|
|
148
|
-
token = await iam_1.iamService.updateToken(token.id, {
|
|
149
|
-
name,
|
|
150
|
-
authenticationMethod: {
|
|
151
|
-
type: 'PRIVATE_KEY',
|
|
152
|
-
signingAlgorithm: algorithm,
|
|
153
|
-
publicKeyInfo: {
|
|
154
|
-
jwks,
|
|
155
|
-
},
|
|
156
|
-
},
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
return token;
|
|
160
|
-
}
|
|
161
|
-
generateKeyPair(keyId, algorithm, passphrase) {
|
|
162
|
-
const { publicKey, privateKey } = (0, node_crypto_1.generateKeyPairSync)('rsa', { modulusLength: 4096 });
|
|
163
|
-
const publicKeyPem = publicKey.export({ format: 'pem', type: 'spki' });
|
|
164
|
-
const exportOptions = {
|
|
165
|
-
format: 'pem',
|
|
166
|
-
type: 'pkcs8',
|
|
167
|
-
};
|
|
168
|
-
if (passphrase) {
|
|
169
|
-
exportOptions.cipher = 'aes-256-cbc';
|
|
170
|
-
exportOptions.passphrase = passphrase;
|
|
171
|
-
}
|
|
172
|
-
const privateKeyPem = privateKey.export(exportOptions);
|
|
173
|
-
const publicKeyJwk = publicKey.export({ format: 'jwk' });
|
|
174
|
-
const jwks = {
|
|
175
|
-
keys: [
|
|
176
|
-
{
|
|
177
|
-
use: 'sig',
|
|
178
|
-
kid: keyId,
|
|
179
|
-
alg: algorithm,
|
|
180
|
-
...publicKeyJwk,
|
|
181
|
-
},
|
|
182
|
-
],
|
|
183
|
-
};
|
|
184
|
-
return { publicKey: publicKeyPem, privateKey: privateKeyPem, jwks };
|
|
185
|
-
}
|
|
186
|
-
async addPrincipal(tokenId) {
|
|
187
|
-
await iam_1.iamService.addPrincipalToProject({
|
|
188
|
-
principalId: tokenId,
|
|
189
|
-
principalType: 'token',
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
async updatePolicies(tokenId, activeProjectId, actions, resources) {
|
|
193
|
-
const policiesData = {
|
|
194
|
-
version: '2022-12-15',
|
|
195
|
-
statement: [
|
|
196
|
-
{
|
|
197
|
-
principal: [`ari:iam::${activeProjectId}:token/${tokenId}`],
|
|
198
|
-
action: actions,
|
|
199
|
-
resource: resources,
|
|
200
|
-
effect: 'Allow',
|
|
201
|
-
},
|
|
202
|
-
],
|
|
203
|
-
};
|
|
204
|
-
const validatedPolicies = validators_1.policiesDataSchema.parse(policiesData);
|
|
205
|
-
const result = await iam_1.iamService.updatePolicies(tokenId, 'token', validatedPolicies);
|
|
206
|
-
return result;
|
|
207
|
-
}
|
|
208
131
|
}
|
|
209
|
-
exports.CreateToken = CreateToken;
|
|
210
132
|
CreateToken.summary = 'Creates a Personal Access Token (PAT)';
|
|
211
133
|
CreateToken.examples = [
|
|
212
134
|
'<%= config.bin %> <%= command.id %>',
|
|
@@ -218,34 +140,34 @@ CreateToken.examples = [
|
|
|
218
140
|
'<%= config.bin %> <%= command.id %> -n MyNewToken -g -w',
|
|
219
141
|
];
|
|
220
142
|
CreateToken.flags = {
|
|
221
|
-
name:
|
|
143
|
+
name: Flags.string({
|
|
222
144
|
char: 'n',
|
|
223
145
|
summary: 'Name of the Personal Access Token, at least 8 chars long',
|
|
224
146
|
}),
|
|
225
|
-
'key-id':
|
|
147
|
+
'key-id': Flags.string({
|
|
226
148
|
char: 'k',
|
|
227
149
|
summary: 'Identifier of the key (kid)',
|
|
228
150
|
}),
|
|
229
|
-
'public-key-file':
|
|
151
|
+
'public-key-file': Flags.string({
|
|
230
152
|
char: 'f',
|
|
231
153
|
summary: 'Location of the public key PEM file',
|
|
232
154
|
}),
|
|
233
|
-
algorithm:
|
|
155
|
+
algorithm: Flags.custom({
|
|
234
156
|
char: 'a',
|
|
235
157
|
summary: 'The specific cryptographic algorithm used with the key',
|
|
236
|
-
options: Object.values(
|
|
237
|
-
default:
|
|
158
|
+
options: Object.values(SupportedAlgorithms),
|
|
159
|
+
default: SupportedAlgorithms.RS256,
|
|
238
160
|
})(),
|
|
239
|
-
'with-permissions':
|
|
161
|
+
'with-permissions': Flags.boolean({
|
|
240
162
|
char: 'w',
|
|
241
163
|
summary: 'Set token policies to perform any action on the active project',
|
|
242
164
|
}),
|
|
243
|
-
'auto-generate-key':
|
|
165
|
+
'auto-generate-key': Flags.boolean({
|
|
244
166
|
char: 'g',
|
|
245
167
|
summary: 'Auto-generate private-public key pair',
|
|
246
168
|
exclusive: ['public-key-file'],
|
|
247
169
|
}),
|
|
248
|
-
passphrase:
|
|
170
|
+
passphrase: Flags.string({
|
|
249
171
|
char: 'p',
|
|
250
172
|
summary: 'Passphrase for generation of private public key pair',
|
|
251
173
|
dependsOn: ['auto-generate-key'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-token.js","sourceRoot":"","sources":["../../../src/commands/token/create-token.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-token.js","sourceRoot":"","sources":["../../../src/commands/token/create-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEnG,MAAM,WAAW,GAAG,CAAC;KAClB,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC;IACjC,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;IAChD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;IACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;IAClD,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;CAC7D,CAAC;KACD,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,EACD;IACE,OAAO,EAAE,6DAA6D;IACtE,IAAI,EAAE,CAAC,iBAAiB,CAAC;CAC1B,CACF,CAAA;AAEH,MAAM,OAAO,WAAY,SAAQ,WAA+B;IA8CvD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAC/C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAEtD,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACjD,IAAI,OAAO,EAAE,IAAI,CAAA;QACjB,MAAM,GAAG,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAA;QAChD,IAAI,cAAc,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACxC,OAAO,GAAG,eAAe,CAAC,GAAG,EAAE,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;YACnF,IAAI,GAAG,OAAO,CAAC,IAAwB,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAW,EAAE,MAAM,CAAC,CAAA;YACxF,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;YAClE,IAAI,GAAG;gBACL,IAAI,EAAE;oBACJ;wBACE,GAAG;wBACH,GAAG,EAAE,cAAc,CAAC,SAAS;wBAC7B,GAAG,EAAE,KAAK;wBACV,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC;wBACpD,CAAC,EAAE,GAAG,CAAC,CAAC;wBACR,CAAC,EAAE,GAAG,CAAC,CAAC;qBACT;iBACF;aACF,CAAA;QACH,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAA;QAE9G,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,SAAS,CAAA;QACb,IAAI,cAAc,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACvC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;YACjD,MAAM,QAAQ,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAA;YACxE,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACrD,SAAS,GAAG,aAAc,CAAC,EAAE,CAAA;YAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;YAErC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;YAChD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YAClF,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACpF,MAAM,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAA;YAC7D,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QACzC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACnB,IAAI,CAAC,GAAG,CACN,2GAA2G,CAC5G,CAAA;YACD,IAAI,CAAC,OAAO,CAAC;gBACX,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;gBACxD,GAAG,CAAC,cAAc,CAAC,mBAAmB,CAAC,IAAI;oBACzC,UAAU,EAAE,OAAO,EAAE,UAAoB;oBACzC,GAAG,CAAC,cAAc,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,UAAU,EAAE,CAAC;iBAC5E,CAAC;aACH,CAAC,CAAA;YACF,IAAI,cAAc,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAC1B,sHAAsH,CACvH,CACF,CAAA;YACH,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,KAA2B;QACrD,IAAI,WAAW,GAAG,MAAM,wBAAwB,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;QAEjE,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAChE,WAAW,CAAC,mBAAmB,MAA/B,WAAW,CAAC,mBAAmB,IAAM,MAAM,OAAO,CAAC;gBACjD,OAAO,EAAE,uCAAuC;aACjD,CAAC,EAAA;QACJ,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAA;QACvE,CAAC;QAED,IAAI,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YACjE,WAAW,CAAC,UAAU,KAAtB,WAAW,CAAC,UAAU,GAAK,mBAAmB,CAC5C,MAAM,KAAK,CAAC;gBACV,OAAO,EAAE,iFAAiF;aAC3F,CAAC,EACF,WAAW,CACZ,EAAA;QACH,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACtC,WAAW,GAAG,MAAM,wBAAwB,CAAC,CAAC,iBAAiB,CAAC,EAAE,WAAW,CAAC,CAAA;QAChF,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,WAAW,CAAC,kBAAkB,MAA9B,WAAW,CAAC,kBAAkB,IAAM,MAAM,OAAO,CAAC;gBAChD,OAAO,EAAE,oDAAoD;aAC9D,CAAC,EAAA;QACJ,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAChE,WAAW,CAAC,SAAS,GAAG,mBAAmB,CACzC,MAAM,KAAK,CAAC;gBACV,OAAO,EAAE,kGAAkG;gBAC3G,OAAO,EAAE,GAAG;aACb,CAAC,EACF,WAAW,CACZ,CAAA;YACD,WAAW,CAAC,OAAO,GAAG,mBAAmB,CACvC,MAAM,KAAK,CAAC;gBACV,OAAO,EAAE,4EAA4E;gBACrF,OAAO,EAAE,GAAG;aACb,CAAC,EACF,WAAW,CACZ,CAAA;QACH,CAAC;QAED,OAAO,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACvC,CAAC;;AAnKM,mBAAO,GAAG,uCAAuC,CAAA;AACjD,oBAAQ,GAAG;IAChB,qCAAqC;IACrC,2DAA2D;IAC3D,sEAAsE;IACtE,uEAAuE;IACvE,4HAA4H;IAC5H,yIAAyI;IACzI,yDAAyD;CAC1D,CAAA;AACM,iBAAK,GAAG;IACb,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;QACjB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,0DAA0D;KACpE,CAAC;IACF,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,6BAA6B;KACvC,CAAC;IACF,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC;QAC9B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,qCAAqC;KAC/C,CAAC;IACF,SAAS,EAAE,KAAK,CAAC,MAAM,CAAsB;QAC3C,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,wDAAwD;QACjE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAC3C,OAAO,EAAE,mBAAmB,CAAC,KAAK;KACnC,CAAC,EAAE;IACJ,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC;QAChC,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,gEAAgE;KAC1E,CAAC;IACF,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC;QACjC,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,uCAAuC;QAChD,SAAS,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CAAC;IACF,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,sDAAsD;QAC/D,SAAS,EAAE,CAAC,mBAAmB,CAAC;KACjC,CAAC;CACH,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BaseCommand } from '../../common';
|
|
1
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
2
2
|
export declare class DeleteToken extends BaseCommand<typeof DeleteToken> {
|
|
3
3
|
static summary: string;
|
|
4
4
|
static examples: string[];
|
|
5
5
|
static flags: {
|
|
6
|
-
'token-id': import("@oclif/core/
|
|
6
|
+
'token-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
7
|
};
|
|
8
8
|
run(): Promise<{
|
|
9
9
|
id: string;
|
|
@@ -1,34 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const validators_1 = require("../../common/validators");
|
|
9
|
-
const iam_1 = require("../../services/affinidi/iam");
|
|
10
|
-
class DeleteToken extends common_1.BaseCommand {
|
|
1
|
+
import { ux, Flags } from '@oclif/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
4
|
+
import { promptRequiredParameters } from '../../common/prompts.js';
|
|
5
|
+
import { INPUT_LIMIT } from '../../common/validators.js';
|
|
6
|
+
import { iamService } from '../../services/affinidi/iam/service.js';
|
|
7
|
+
export class DeleteToken extends BaseCommand {
|
|
11
8
|
async run() {
|
|
12
9
|
const { flags } = await this.parse(DeleteToken);
|
|
13
|
-
const promptFlags = await
|
|
14
|
-
const schema =
|
|
10
|
+
const promptFlags = await promptRequiredParameters(['token-id'], flags);
|
|
11
|
+
const schema = z.string().max(INPUT_LIMIT).uuid();
|
|
15
12
|
const tokenId = schema.parse(promptFlags['token-id']);
|
|
16
|
-
|
|
17
|
-
await
|
|
18
|
-
|
|
13
|
+
ux.action.start('Deleting Personal Access Token');
|
|
14
|
+
await iamService.deleteToken(tokenId);
|
|
15
|
+
ux.action.stop('Deleted successfully!');
|
|
19
16
|
if (!this.jsonEnabled())
|
|
20
17
|
this.logJson({ id: tokenId });
|
|
21
18
|
return { id: tokenId };
|
|
22
19
|
}
|
|
23
20
|
}
|
|
24
|
-
exports.DeleteToken = DeleteToken;
|
|
25
21
|
DeleteToken.summary = 'Deletes a Personal Access Token (PAT)';
|
|
26
22
|
DeleteToken.examples = [
|
|
27
23
|
'<%= config.bin %> <%= command.id %> -i <uuid>',
|
|
28
24
|
'<%= config.bin %> <%= command.id %> --token-id <uuid>',
|
|
29
25
|
];
|
|
30
26
|
DeleteToken.flags = {
|
|
31
|
-
'token-id':
|
|
27
|
+
'token-id': Flags.string({
|
|
32
28
|
char: 'i',
|
|
33
29
|
description: 'ID of the Personal Access Token',
|
|
34
30
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-token.js","sourceRoot":"","sources":["../../../src/commands/token/delete-token.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"delete-token.js","sourceRoot":"","sources":["../../../src/commands/token/delete-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAEnE,MAAM,OAAO,WAAY,SAAQ,WAA+B;IAavD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAC/C,MAAM,WAAW,GAAG,MAAM,wBAAwB,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAA;QAEvE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAA;QACjD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAA;QAErD,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACjD,MAAM,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QACrC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QACtD,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IACxB,CAAC;;AAzBM,mBAAO,GAAG,uCAAuC,CAAA;AACjD,oBAAQ,GAAG;IAChB,+CAA+C;IAC/C,uDAAuD;CACxD,CAAA;AACM,iBAAK,GAAG;IACb,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,GAAG;QACT,WAAW,EAAE,iCAAiC;KAC/C,CAAC;CACH,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { BaseCommand } from '../../common';
|
|
2
|
-
import { TokenDto } from '../../services/affinidi/iam/iam.api';
|
|
1
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
2
|
+
import { TokenDto } from '../../services/affinidi/iam/iam.api.js';
|
|
3
3
|
export declare class GetToken extends BaseCommand<typeof GetToken> {
|
|
4
4
|
static summary: string;
|
|
5
5
|
static examples: string[];
|
|
6
6
|
static flags: {
|
|
7
|
-
'token-id': import("@oclif/core/
|
|
7
|
+
'token-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
};
|
|
9
9
|
run(): Promise<TokenDto>;
|
|
10
10
|
}
|
|
@@ -1,34 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const validators_1 = require("../../common/validators");
|
|
9
|
-
const iam_1 = require("../../services/affinidi/iam");
|
|
10
|
-
class GetToken extends common_1.BaseCommand {
|
|
1
|
+
import { ux, Flags } from '@oclif/core';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
4
|
+
import { promptRequiredParameters } from '../../common/prompts.js';
|
|
5
|
+
import { INPUT_LIMIT } from '../../common/validators.js';
|
|
6
|
+
import { iamService } from '../../services/affinidi/iam/service.js';
|
|
7
|
+
export class GetToken extends BaseCommand {
|
|
11
8
|
async run() {
|
|
12
9
|
const { flags } = await this.parse(GetToken);
|
|
13
|
-
const promptFlags = await
|
|
14
|
-
const schema =
|
|
10
|
+
const promptFlags = await promptRequiredParameters(['token-id'], flags);
|
|
11
|
+
const schema = z.string().max(INPUT_LIMIT).uuid();
|
|
15
12
|
const tokenId = schema.parse(promptFlags['token-id']);
|
|
16
|
-
|
|
17
|
-
const out = await
|
|
18
|
-
|
|
13
|
+
ux.action.start('Fetching Personal Access Token details');
|
|
14
|
+
const out = await iamService.getToken(tokenId);
|
|
15
|
+
ux.action.stop('Fetched successfully!');
|
|
19
16
|
if (!this.jsonEnabled())
|
|
20
17
|
this.logJson(out);
|
|
21
18
|
return out;
|
|
22
19
|
}
|
|
23
20
|
}
|
|
24
|
-
exports.GetToken = GetToken;
|
|
25
21
|
GetToken.summary = 'Gets the details of a Personal Access Token (PAT)';
|
|
26
22
|
GetToken.examples = [
|
|
27
23
|
'<%= config.bin %> <%= command.id %> -i <uuid>',
|
|
28
24
|
'<%= config.bin %> <%= command.id %> --token-id <uuid>',
|
|
29
25
|
];
|
|
30
26
|
GetToken.flags = {
|
|
31
|
-
'token-id':
|
|
27
|
+
'token-id': Flags.string({
|
|
32
28
|
char: 'i',
|
|
33
29
|
summary: 'ID of the Personal Access Token',
|
|
34
30
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-token.js","sourceRoot":"","sources":["../../../src/commands/token/get-token.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-token.js","sourceRoot":"","sources":["../../../src/commands/token/get-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAGnE,MAAM,OAAO,QAAS,SAAQ,WAA4B;IAajD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC5C,MAAM,WAAW,GAAG,MAAM,wBAAwB,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAA;QAEvE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAA;QACjD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAA;QAErD,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACzD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC9C,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1C,OAAO,GAAG,CAAA;IACZ,CAAC;;AAzBM,gBAAO,GAAG,mDAAmD,CAAA;AAC7D,iBAAQ,GAAG;IAChB,+CAA+C;IAC/C,uDAAuD;CACxD,CAAA;AACM,cAAK,GAAG;IACb,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,iCAAiC;KAC3C,CAAC;CACH,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BaseCommand } from '../../common';
|
|
2
|
-
import { TokenDto } from '../../services/affinidi/iam/iam.api';
|
|
1
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
2
|
+
import { TokenDto } from '../../services/affinidi/iam/iam.api.js';
|
|
3
3
|
export declare class ListTokens extends BaseCommand<typeof ListTokens> {
|
|
4
4
|
static summary: string;
|
|
5
5
|
static examples: string[];
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const common_1 = require("../../common");
|
|
6
|
-
const iam_1 = require("../../services/affinidi/iam");
|
|
7
|
-
class ListTokens extends common_1.BaseCommand {
|
|
1
|
+
import { ux } from '@oclif/core';
|
|
2
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
3
|
+
import { iamService } from '../../services/affinidi/iam/service.js';
|
|
4
|
+
export class ListTokens extends BaseCommand {
|
|
8
5
|
async run() {
|
|
9
|
-
|
|
10
|
-
const out = await
|
|
11
|
-
|
|
6
|
+
ux.action.start('Fetching list of Personal Access Tokens');
|
|
7
|
+
const out = await iamService.listM2MKeys();
|
|
8
|
+
ux.action.stop('Fetched successfully!');
|
|
12
9
|
if (!this.jsonEnabled())
|
|
13
10
|
this.logJson(out.tokens);
|
|
14
11
|
return out.tokens;
|
|
15
12
|
}
|
|
16
13
|
}
|
|
17
|
-
exports.ListTokens = ListTokens;
|
|
18
14
|
ListTokens.summary = 'Lists your Personal Access Tokens (PATs)';
|
|
19
15
|
ListTokens.examples = ['<%= config.bin %> <%= command.id %>'];
|
|
20
16
|
//# sourceMappingURL=list-tokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-tokens.js","sourceRoot":"","sources":["../../../src/commands/token/list-tokens.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-tokens.js","sourceRoot":"","sources":["../../../src/commands/token/list-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAA;AAGnE,MAAM,OAAO,UAAW,SAAQ,WAA8B;IAIrD,KAAK,CAAC,GAAG;QACd,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;QAC1D,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAA;QAC1C,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACjD,OAAO,GAAG,CAAC,MAAM,CAAA;IACnB,CAAC;;AAVM,kBAAO,GAAG,0CAA0C,CAAA;AACpD,mBAAQ,GAAG,CAAC,qCAAqC,CAAC,CAAA"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { BaseCommand
|
|
2
|
-
import { TokenDto } from '../../services/affinidi/iam/iam.api';
|
|
1
|
+
import { BaseCommand } from '../../common/base-command.js';
|
|
2
|
+
import { TokenDto } from '../../services/affinidi/iam/iam.api.js';
|
|
3
|
+
import { SupportedAlgorithms } from '../../common/constants.js';
|
|
3
4
|
export declare class UpdateToken extends BaseCommand<typeof UpdateToken> {
|
|
4
5
|
static summary: string;
|
|
5
6
|
static examples: string[];
|
|
6
7
|
static flags: {
|
|
7
|
-
'token-id': import("@oclif/core/
|
|
8
|
-
name: import("@oclif/core/
|
|
9
|
-
'key-id': import("@oclif/core/
|
|
10
|
-
'public-key-file': import("@oclif/core/
|
|
11
|
-
algorithm: import("@oclif/core/
|
|
8
|
+
'token-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
'key-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
'public-key-file': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
algorithm: import("@oclif/core/interfaces").OptionFlag<SupportedAlgorithms, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
};
|
|
13
14
|
run(): Promise<TokenDto>;
|
|
14
15
|
}
|