@affinidi/cli 2.5.0 → 2.6.1

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.
@@ -36,18 +36,6 @@ class UpdatePolicies extends common_1.BaseCommand {
36
36
  file: zod_1.z.string().optional(),
37
37
  });
38
38
  const validatedFlags = flagsSchema.parse(promptFlags);
39
- const policiesDataSchema = zod_1.z.object({
40
- version: zod_1.z.string().max(validators_1.INPUT_LIMIT),
41
- statement: zod_1.z
42
- .object({
43
- principal: zod_1.z.string().max(validators_1.INPUT_LIMIT).array().length(1),
44
- action: zod_1.z.string().max(validators_1.INPUT_LIMIT).array().nonempty(),
45
- resource: zod_1.z.string().max(validators_1.INPUT_LIMIT).array().nonempty(),
46
- effect: zod_1.z.literal('Allow'),
47
- })
48
- .array()
49
- .nonempty(),
50
- });
51
39
  let policiesData = null;
52
40
  if (validatedFlags.file) {
53
41
  const rawData = await (0, promises_1.readFile)(validatedFlags.file, 'utf8');
@@ -64,8 +52,14 @@ class UpdatePolicies extends common_1.BaseCommand {
64
52
  }
65
53
  this.log(`Assigning a single policy statement to a principal. To assign multiple statements please use the ${chalk_1.default.inverse('--file')} flag instead.`);
66
54
  this.warn('\nThis will override the existing principal statements');
67
- const resourceFilters = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({ message: 'Enter the resource filters, separated by space' }), validators_1.INPUT_LIMIT);
68
- const actions = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({ message: 'Enter the allowed actions, separated by space' }), validators_1.INPUT_LIMIT);
55
+ const resourceFilters = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({
56
+ message: 'Enter the allowed resources, separated by spaces. Use * to allow access to all project resources',
57
+ default: '*',
58
+ }), validators_1.INPUT_LIMIT);
59
+ const actions = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({
60
+ message: 'Enter the allowed actions, separated by spaces. Use * to allow all actions',
61
+ default: '*',
62
+ }), validators_1.INPUT_LIMIT);
69
63
  const activeProject = await bff_service_1.bffService.getActiveProject();
70
64
  policiesData = {
71
65
  version: '2022-12-15',
@@ -81,7 +75,7 @@ class UpdatePolicies extends common_1.BaseCommand {
81
75
  ],
82
76
  };
83
77
  }
84
- const validatedPolicies = policiesDataSchema.parse(policiesData);
78
+ const validatedPolicies = validators_1.policiesDataSchema.parse(policiesData);
85
79
  this.log(`The following policies will be updated for principal ${chalk_1.default.inverse(validatedFlags['principal-id'])}:`);
86
80
  this.logJson(validatedPolicies);
87
81
  if (!flags['no-input']) {
@@ -1 +1 @@
1
- {"version":3,"file":"update-policies.js","sourceRoot":"","sources":["../../../src/commands/iam/update-policies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-policies.js","sourceRoot":"","sources":["../../../src/commands/iam/update-policies.ts"],"names":[],"mappings":";;;;AAAA,0CAAsC;AACtC,+CAA0D;AAC1D,sCAAuC;AACvC,mDAAiD;AACjD,0DAAyB;AACzB,6BAAuB;AACvB,yCAA0D;AAC1D,gEAAuE;AACvE,kDAA+D;AAC/D,wDAA8F;AAC9F,qEAAgE;AAChE,qDAAwD;AAGxD,MAAa,cAAe,SAAQ,oBAAkC;IAyB7D,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAClD,MAAM,WAAW,GAAG,MAAM,IAAA,kCAAwB,EAAC,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAA;QAC3E,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACrB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE;gBAClC,MAAM,IAAI,iBAAQ,CAAC,IAAA,0CAAyB,EAAC,gBAAgB,CAAC,CAAC,CAAA;aAChE;SACF;QACD,WAAW,CAAC,gBAAgB,MAA5B,WAAW,CAAC,gBAAgB,IAAM,MAAM,IAAA,gBAAM,EAAC;YAC7C,OAAO,EAAE,2BAA2B;YACpC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,uBAAc,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACrD,IAAI,EAAE,KAAK;gBACX,KAAK;aACN,CAAC,CAAC;SACJ,CAAC,EAAA;QACF,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC;YAC3B,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,CAAC,CAAC,IAAI,EAAE;YAClD,gBAAgB,EAAE,OAAC,CAAC,UAAU,CAAC,uBAAc,CAAC;YAC9C,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC5B,CAAC,CAAA;QACF,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAErD,IAAI,YAAY,GAAG,IAAI,CAAA;QACvB,IAAI,cAAc,CAAC,IAAI,EAAE;YACvB,MAAM,OAAO,GAAG,MAAM,IAAA,mBAAQ,EAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAC3D,IAAI;gBACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;aACnC;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,iBAAQ,CAAC,sCAAuC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAA;aACrF;SACF;aAAM;YACL,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;gBACrB,MAAM,IAAI,iBAAQ,CAAC,IAAA,0CAAyB,EAAC,MAAM,CAAC,CAAC,CAAA;aACtD;YACD,IAAI,CAAC,GAAG,CACN,oGAAoG,eAAK,CAAC,OAAO,CAC/G,QAAQ,CACT,gBAAgB,CAClB,CAAA;YACD,IAAI,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;YACnE,MAAM,eAAe,GAAG,IAAA,gCAAmB,EACzC,MAAM,IAAA,eAAK,EAAC;gBACV,OAAO,EAAE,kGAAkG;gBAC3G,OAAO,EAAE,GAAG;aACb,CAAC,EACF,wBAAW,CACZ,CAAA;YACD,MAAM,OAAO,GAAG,IAAA,gCAAmB,EACjC,MAAM,IAAA,eAAK,EAAC;gBACV,OAAO,EAAE,4EAA4E;gBACrF,OAAO,EAAE,GAAG;aACb,CAAC,EACF,wBAAW,CACZ,CAAA;YAED,MAAM,aAAa,GAAG,MAAM,wBAAU,CAAC,gBAAgB,EAAE,CAAA;YAEzD,YAAY,GAAG;gBACb,OAAO,EAAE,YAAY;gBACrB,SAAS,EAAE;oBACT;wBACE,SAAS,EAAE;4BACT,YAAY,aAAa,CAAC,EAAE,IAAI,cAAc,CAAC,gBAAgB,CAAC,IAAI,cAAc,CAAC,cAAc,CAAC,EAAE;yBACrG;wBACD,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;wBAC1B,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC;wBACpC,MAAM,EAAE,OAAO;qBAChB;iBACF;aACF,CAAA;SACF;QACD,MAAM,iBAAiB,GAAG,+BAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QAEhE,IAAI,CAAC,GAAG,CAAC,wDAAwD,eAAK,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAA;QAClH,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;QAE/B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YACtB,MAAM,eAAe,GAAG,MAAM,IAAA,iBAAO,EAAC;gBACpC,OAAO,EAAE,kBAAkB;aAC5B,CAAC,CAAA;YAEF,IAAI,CAAC,eAAe,EAAE;gBACpB,MAAM,IAAI,iBAAQ,CAAC,iBAAiB,CAAC,CAAA;aACtC;SACF;QACD,SAAE,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC9C,MAAM,GAAG,GAAG,MAAM,gBAAU,CAAC,cAAc,CACzC,cAAc,CAAC,cAAc,CAAC,EAC9B,cAAc,CAAC,gBAAgB,CAAC,EAChC,iBAAiB,CAClB,CAAA;QACD,SAAE,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;;AAxHH,wCAyHC;AAxHQ,sBAAO,GAAG,2EAA2E,CAAA;AACrF,0BAAW,GAAG;kBACL,eAAK,CAAC,OAAO,CAAC,iCAAiC,CAAC,gCAAgC,CAAA;AACzF,uBAAQ,GAAG;IAChB,+CAA+C;IAC/C,uGAAuG;CACxG,CAAA;AACM,oBAAK,GAAG;IACb,cAAc,EAAE,YAAK,CAAC,MAAM,CAAC;QAC3B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,2CAA2C,eAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,EAAE;KACtG,CAAC;IACF,gBAAgB,EAAE,YAAK,CAAC,MAAM,CAAC;QAC7B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,uBAAuB;QAChC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,uBAAc,CAAC;KACvC,CAAC;IACF,IAAI,EAAE,YAAK,CAAC,MAAM,CAAC;QACjB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,uDAAuD;KACjE,CAAC;CACH,CAAA"}
@@ -9,13 +9,13 @@ export declare class CreateToken extends BaseCommand<typeof CreateToken> {
9
9
  'public-key-file': import("@oclif/core/lib/interfaces/parser").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
10
10
  algorithm: import("@oclif/core/lib/interfaces/parser").OptionFlag<SupportedAlgorithms | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
11
11
  'with-permissions': import("@oclif/core/lib/interfaces/parser").BooleanFlag<boolean>;
12
+ 'auto-generate-key': import("@oclif/core/lib/interfaces/parser").BooleanFlag<boolean>;
12
13
  passphrase: import("@oclif/core/lib/interfaces/parser").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
14
  };
14
15
  run(): Promise<TokenDto>;
15
- private logToken;
16
16
  private validateFlags;
17
- private generateKeyPair;
18
17
  private createToken;
18
+ private generateKeyPair;
19
19
  private addPrincipal;
20
20
  private updatePolicies;
21
21
  }
@@ -3,85 +3,173 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CreateToken = void 0;
4
4
  const promises_1 = require("fs/promises");
5
5
  const node_crypto_1 = require("node:crypto");
6
+ const prompts_1 = require("@inquirer/prompts");
6
7
  const core_1 = require("@oclif/core");
7
8
  const uuid_1 = require("uuid");
8
9
  const zod_1 = require("zod");
9
10
  const common_1 = require("../../common");
10
- const prompts_1 = require("../../common/prompts");
11
+ const prompts_2 = require("../../common/prompts");
11
12
  const validators_1 = require("../../common/validators");
12
13
  const jwk_1 = require("../../helpers/jwk");
13
14
  const bff_service_1 = require("../../services/affinidi/bff-service");
14
15
  const iam_1 = require("../../services/affinidi/iam");
16
+ const flagsSchema = zod_1.z
17
+ .object({
18
+ name: zod_1.z.string().max(validators_1.INPUT_LIMIT),
19
+ algorithm: zod_1.z.nativeEnum(common_1.SupportedAlgorithms),
20
+ 'key-id': zod_1.z.string().max(validators_1.INPUT_LIMIT).optional(),
21
+ 'public-key-file': zod_1.z.string().max(validators_1.INPUT_LIMIT).optional(),
22
+ 'auto-generate-key': zod_1.z.boolean(),
23
+ passphrase: zod_1.z.string().max(validators_1.INPUT_LIMIT).optional(),
24
+ 'with-permissions': zod_1.z.boolean(),
25
+ resources: zod_1.z.string().max(validators_1.INPUT_LIMIT).optional().default('*'),
26
+ actions: zod_1.z.string().max(validators_1.INPUT_LIMIT).optional().default('*'),
27
+ })
28
+ .refine((data) => {
29
+ if (!data['auto-generate-key'] && !data['public-key-file']) {
30
+ return false;
31
+ }
32
+ return true;
33
+ }, {
34
+ message: 'public-key-file is required when auto-generate-key is false',
35
+ path: ['public-key-file'],
36
+ });
15
37
  class CreateToken extends common_1.BaseCommand {
16
38
  async run() {
17
39
  const { flags } = await this.parse(CreateToken);
18
- await this.validateFlags(flags);
40
+ const validatedFlags = await this.validateFlags(flags);
19
41
  core_1.ux.action.start('Creating Personal Access Token');
20
- const { token, publicKey, privateKey } = await this.createToken(flags);
42
+ let keypair, jwks;
43
+ const kid = validatedFlags['key-id'] ?? (0, uuid_1.v4)();
44
+ if (validatedFlags['auto-generate-key']) {
45
+ keypair = this.generateKeyPair(kid, validatedFlags.algorithm, validatedFlags.passphrase);
46
+ jwks = keypair.jwks;
47
+ }
48
+ else {
49
+ const publicKeyPEM = await (0, promises_1.readFile)(validatedFlags['public-key-file'], 'utf8');
50
+ const jwk = await (0, jwk_1.pemToJWK)(publicKeyPEM, validatedFlags.algorithm);
51
+ jwks = {
52
+ keys: [
53
+ {
54
+ kid,
55
+ alg: validatedFlags.algorithm,
56
+ use: 'sig',
57
+ kty: jwk.kty ?? (0, jwk_1.getKeyType)(validatedFlags.algorithm),
58
+ n: jwk.n,
59
+ e: jwk.e,
60
+ },
61
+ ],
62
+ };
63
+ }
64
+ const token = await this.createToken(validatedFlags.name, validatedFlags.algorithm, jwks, validatedFlags['key-id']);
65
+ core_1.ux.action.stop('Created successfully!');
21
66
  let projectId;
22
- if (flags['with-permissions']) {
67
+ if (validatedFlags['with-permissions']) {
68
+ core_1.ux.action.start('Adding token to active project');
23
69
  const promises = [this.addPrincipal(token.id), bff_service_1.bffService.getActiveProject()];
24
- const [, project] = await Promise.all(promises);
25
- projectId = project?.id;
26
- // NOTE: Should run after addPrincipal is completed
27
- await this.updatePolicies(token.id);
70
+ const [, activeProject] = await Promise.all(promises);
71
+ projectId = activeProject.id;
72
+ core_1.ux.action.stop('Added successfully!');
73
+ core_1.ux.action.start('Granting permissions to token');
74
+ const actions = validatedFlags.actions ? validatedFlags.actions.split(' ') : ['*'];
75
+ const resources = validatedFlags.actions ? validatedFlags.actions.split(' ') : ['*'];
76
+ await this.updatePolicies(token.id, projectId, actions, resources);
77
+ core_1.ux.action.stop('Granted successfully!');
28
78
  }
29
- core_1.ux.action.stop('Created successfully!');
30
- this.logToken(flags, token, publicKey, privateKey, projectId);
31
- return token;
32
- }
33
- logToken(flags, token, publicKey, privateKey, projectId) {
34
- if (this.jsonEnabled())
35
- return;
36
- if (!flags['with-permissions']) {
79
+ if (!this.jsonEnabled()) {
37
80
  this.logJson(token);
38
- return;
81
+ this.log('\nUse the projectId, tokenId, privateKey and passphrase (if provided) to use this token with Affinidi TDK');
82
+ this.logJson({
83
+ tokenId: token.id,
84
+ ...(validatedFlags['with-permissions'] && { projectId }),
85
+ ...(validatedFlags['auto-generate-key'] && {
86
+ privateKey: keypair?.privateKey,
87
+ ...(validatedFlags.passphrase && { passphrase: validatedFlags.passphrase }),
88
+ }),
89
+ });
90
+ if (validatedFlags['auto-generate-key']) {
91
+ this.warn(this.chalk.yellowBright.bold('\nPlease save the privateKey and passphrase (if provided) somewhere safe. You will not be able to view them again.\n'));
92
+ }
39
93
  }
40
- const isDev = process.env.AFFINIDI_CLI_ENVIRONMENT === 'dev';
41
- const out = {
42
- apiGatewayUrl: isDev ? 'https://apse1.dev.api.affinidi.io' : 'https://apse1.api.affinidi.io',
43
- tokenEndpoint: isDev
44
- ? 'https://apse1.dev.auth.developer.affinidi.io/auth/oauth2/token'
45
- : 'https://apse1.auth.developer.affinidi.io/auth/oauth2/token',
46
- keyId: flags['key-id'],
47
- tokenId: token.id,
48
- passphrase: flags.passphrase,
49
- privateKey,
50
- publicKey,
51
- projectId,
52
- };
53
- this.logJson(out);
54
- this.warn(this.chalk.red.bold('These are your PAT variables for Affinidi TDK.\n❗Please save publicKey and privateKey somewhere safe.\nYou will not be able to view those again.'));
94
+ return token;
55
95
  }
56
96
  async validateFlags(flags) {
57
- let promptFlags;
58
- if (flags['with-permissions']) {
59
- promptFlags = await (0, prompts_1.promptRequiredParameters)(['name', 'passphrase'], flags);
97
+ let promptFlags = await (0, prompts_2.promptRequiredParameters)(['name'], flags);
98
+ if (!promptFlags['public-key-file'] && !promptFlags['no-input']) {
99
+ promptFlags['auto-generate-key'] ?? (promptFlags['auto-generate-key'] = await (0, prompts_1.confirm)({
100
+ message: 'Generate a new keypair for the token?',
101
+ }));
60
102
  }
61
103
  else {
62
- promptFlags = await (0, prompts_1.promptRequiredParameters)(['name', 'public-key-file'], flags);
104
+ promptFlags['auto-generate-key'] = !!promptFlags['auto-generate-key'];
105
+ }
106
+ if (promptFlags['auto-generate-key'] && !promptFlags['no-input']) {
107
+ promptFlags.passphrase ?? (promptFlags.passphrase = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({
108
+ message: 'Enter a passphrase to encrypt the private key. Leave it empty for no encryption',
109
+ }), validators_1.INPUT_LIMIT));
110
+ }
111
+ if (!promptFlags['auto-generate-key']) {
112
+ promptFlags = await (0, prompts_2.promptRequiredParameters)(['public-key-file'], promptFlags);
63
113
  }
64
- if (!flags['key-id']) {
65
- flags['key-id'] = (0, uuid_1.v4)();
114
+ if (!promptFlags['no-input']) {
115
+ promptFlags['with-permissions'] ?? (promptFlags['with-permissions'] = await (0, prompts_1.confirm)({
116
+ message: 'Add token to active project and grant permissions?',
117
+ }));
66
118
  }
67
- const schema = zod_1.z.object({
68
- name: zod_1.z.string().max(validators_1.INPUT_LIMIT).min(8),
69
- algorithm: zod_1.z.nativeEnum(common_1.SupportedAlgorithms),
70
- 'key-id': zod_1.z.string().max(validators_1.INPUT_LIMIT),
71
- ...(flags['with-permissions'] && { passphrase: zod_1.z.string().max(validators_1.INPUT_LIMIT).min(8) }),
72
- ...(!flags['with-permissions'] && { 'public-key-file': zod_1.z.string().max(validators_1.INPUT_LIMIT) }),
119
+ else {
120
+ promptFlags['with-permissions'] = !!promptFlags['with-permissions'];
121
+ }
122
+ if (!promptFlags['no-input'] && promptFlags['with-permissions']) {
123
+ promptFlags.resources = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({
124
+ message: 'Enter the allowed resources, separated by spaces. Use * to allow access to all project resources',
125
+ default: '*',
126
+ }), validators_1.INPUT_LIMIT);
127
+ promptFlags.actions = (0, validators_1.validateInputLength)(await (0, prompts_1.input)({
128
+ message: 'Enter the allowed actions, separated by spaces. Use * to allow all actions',
129
+ default: '*',
130
+ }), validators_1.INPUT_LIMIT);
131
+ }
132
+ return flagsSchema.parse(promptFlags);
133
+ }
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
+ },
73
144
  });
74
- schema.parse(promptFlags);
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;
75
160
  }
76
- generateKeyPair(passphrase, keyId, algorithm) {
161
+ generateKeyPair(keyId, algorithm, passphrase) {
77
162
  const { publicKey, privateKey } = (0, node_crypto_1.generateKeyPairSync)('rsa', { modulusLength: 4096 });
78
163
  const publicKeyPem = publicKey.export({ format: 'pem', type: 'spki' });
79
- const privateKeyPem = privateKey.export({
164
+ const exportOptions = {
80
165
  format: 'pem',
81
166
  type: 'pkcs8',
82
- cipher: 'aes-256-cbc',
83
- passphrase,
84
- });
167
+ };
168
+ if (passphrase) {
169
+ exportOptions.cipher = 'aes-256-cbc';
170
+ exportOptions.passphrase = passphrase;
171
+ }
172
+ const privateKeyPem = privateKey.export(exportOptions);
85
173
  const publicKeyJwk = publicKey.export({ format: 'jwk' });
86
174
  const jwks = {
87
175
  keys: [
@@ -95,62 +183,39 @@ class CreateToken extends common_1.BaseCommand {
95
183
  };
96
184
  return { publicKey: publicKeyPem, privateKey: privateKeyPem, jwks };
97
185
  }
98
- async createToken(flags) {
99
- let jwks;
100
- let keypair;
101
- const algorithm = flags.algorithm;
102
- if (flags['with-permissions']) {
103
- keypair = this.generateKeyPair(flags.passphrase, flags['key-id'], algorithm);
104
- jwks = keypair.jwks;
105
- }
106
- else {
107
- const publicKeyPEM = await (0, promises_1.readFile)(flags['public-key-file'], 'utf8');
108
- const jwk = await (0, jwk_1.pemToJWK)(publicKeyPEM, algorithm);
109
- jwks = {
110
- keys: [
111
- {
112
- kid: flags['key-id'],
113
- alg: algorithm,
114
- use: 'sig',
115
- kty: jwk.kty ?? (0, jwk_1.getKeyType)(algorithm),
116
- n: jwk.n,
117
- e: jwk.e,
118
- },
119
- ],
120
- };
121
- }
122
- const token = await iam_1.iamService.createToken({
123
- name: flags.name,
124
- authenticationMethod: {
125
- type: 'PRIVATE_KEY',
126
- signingAlgorithm: algorithm,
127
- publicKeyInfo: {
128
- jwks,
129
- },
130
- },
131
- });
132
- return { token, publicKey: keypair?.publicKey, privateKey: keypair?.privateKey };
133
- }
134
186
  async addPrincipal(tokenId) {
135
187
  await iam_1.iamService.addPrincipalToProject({
136
188
  principalId: tokenId,
137
189
  principalType: 'token',
138
190
  });
139
191
  }
140
- async updatePolicies(tokenId) {
141
- const policies = await iam_1.iamService.getPolicies(tokenId, 'token');
142
- policies.statement[0].action[0] = '*';
143
- policies.statement[0].resource[0] = '*';
144
- await iam_1.iamService.updatePolicies(tokenId, 'token', policies);
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;
145
207
  }
146
208
  }
147
209
  exports.CreateToken = CreateToken;
148
210
  CreateToken.summary = 'Creates a Personal Access Token (PAT)';
149
211
  CreateToken.examples = [
150
- '<%= config.bin %> <%= command.id %> -n MyNewToken -w -p top-secret',
151
- '<%= config.bin %> <%= command.id %> --name MyNewToken --with-permissions --passphrase top-secret',
152
- '<%= config.bin %> <%= command.id %> -n MyNewToken -k MyKeyID -f publicKey.pem',
153
- '<%= config.bin %> <%= command.id %> --name "My new token" --key-id MyKeyID --public-key-file publicKey.pem --algorithm RS256',
212
+ '<%= config.bin %> <%= command.id %>',
213
+ '<%= config.bin %> <%= command.id %> --name "My new token"',
214
+ '<%= config.bin %> <%= command.id %> -n MyNewToken --with-permissions',
215
+ '<%= config.bin %> <%= command.id %> -n MyNewToken --auto-generate-key',
216
+ '<%= config.bin %> <%= command.id %> -n MyNewToken --auto-generate-key --passphrase "MySecretPassphrase" --with-permissions',
217
+ '<%= config.bin %> <%= command.id %> -n MyNewToken --public-key-file publicKey.pem --key-id MyKeyID --algorithm RS256 --with-permissions',
218
+ '<%= config.bin %> <%= command.id %> -n MyNewToken -g -w',
154
219
  ];
155
220
  CreateToken.flags = {
156
221
  name: core_1.Flags.string({
@@ -164,7 +229,6 @@ CreateToken.flags = {
164
229
  'public-key-file': core_1.Flags.string({
165
230
  char: 'f',
166
231
  summary: 'Location of the public key PEM file',
167
- required: false,
168
232
  }),
169
233
  algorithm: core_1.Flags.custom({
170
234
  char: 'a',
@@ -174,13 +238,17 @@ CreateToken.flags = {
174
238
  })(),
175
239
  'with-permissions': core_1.Flags.boolean({
176
240
  char: 'w',
177
- default: false,
178
- summary: 'Create ready-to-use PAT with auto-generated private public key pair and set its access policies',
241
+ summary: 'Set token policies to perform any action on the active project',
242
+ }),
243
+ 'auto-generate-key': core_1.Flags.boolean({
244
+ char: 'g',
245
+ summary: 'Auto-generate private-public key pair',
246
+ exclusive: ['public-key-file'],
179
247
  }),
180
248
  passphrase: core_1.Flags.string({
181
249
  char: 'p',
182
250
  summary: 'Passphrase for generation of private public key pair',
183
- required: false,
251
+ dependsOn: ['auto-generate-key'],
184
252
  }),
185
253
  };
186
254
  //# sourceMappingURL=create-token.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-token.js","sourceRoot":"","sources":["../../../src/commands/token/create-token.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-token.js","sourceRoot":"","sources":["../../../src/commands/token/create-token.ts"],"names":[],"mappings":";;;AACA,0CAAsC;AACtC,6CAAiD;AACjD,+CAAkD;AAClD,sCAAuC;AACvC,+BAAmC;AACnC,6BAAuB;AACvB,yCAA+D;AAC/D,kDAA+D;AAC/D,wDAA8F;AAC9F,2CAAwD;AACxD,qEAAgE;AAChE,qDAAwD;AAGxD,MAAM,WAAW,GAAG,OAAC;KAClB,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,CAAC;IACjC,SAAS,EAAE,OAAC,CAAC,UAAU,CAAC,4BAAmB,CAAC;IAC5C,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,CAAC,CAAC,QAAQ,EAAE;IAChD,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,CAAC,CAAC,QAAQ,EAAE;IACzD,mBAAmB,EAAE,OAAC,CAAC,OAAO,EAAE;IAChC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,CAAC,CAAC,QAAQ,EAAE;IAClD,kBAAkB,EAAE,OAAC,CAAC,OAAO,EAAE;IAC/B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IAC9D,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,wBAAW,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;QAC1D,OAAO,KAAK,CAAA;KACb;IACD,OAAO,IAAI,CAAA;AACb,CAAC,EACD;IACE,OAAO,EAAE,6DAA6D;IACtE,IAAI,EAAE,CAAC,iBAAiB,CAAC;CAC1B,CACF,CAAA;AAEH,MAAa,WAAY,SAAQ,oBAA+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,SAAE,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACjD,IAAI,OAAO,EAAE,IAAI,CAAA;QACjB,MAAM,GAAG,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAA,SAAM,GAAE,CAAA;QAChD,IAAI,cAAc,CAAC,mBAAmB,CAAC,EAAE;YACvC,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;YACxF,IAAI,GAAG,OAAO,CAAC,IAAwB,CAAA;SACxC;aAAM;YACL,MAAM,YAAY,GAAG,MAAM,IAAA,mBAAQ,EAAC,cAAc,CAAC,iBAAiB,CAAW,EAAE,MAAM,CAAC,CAAA;YACxF,MAAM,GAAG,GAAG,MAAM,IAAA,cAAQ,EAAC,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,IAAA,gBAAU,EAAC,cAAc,CAAC,SAAS,CAAC;wBACpD,CAAC,EAAE,GAAG,CAAC,CAAC;wBACR,CAAC,EAAE,GAAG,CAAC,CAAC;qBACT;iBACF;aACF,CAAA;SACF;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAA;QAEnH,SAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,SAAS,CAAA;QACb,IAAI,cAAc,CAAC,kBAAkB,CAAC,EAAE;YACtC,SAAE,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;YACjD,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,wBAAU,CAAC,gBAAgB,EAAE,CAAC,CAAA;YAC7E,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACrD,SAAS,GAAG,aAAc,CAAC,EAAE,CAAA;YAC7B,SAAE,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;YAErC,SAAE,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,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAA;YAClE,SAAE,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;SACxC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACvB,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;gBACvC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAC1B,sHAAsH,CACvH,CACF,CAAA;aACF;SACF;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,KAA2B;QACrD,IAAI,WAAW,GAAG,MAAM,IAAA,kCAAwB,EAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;QAEjE,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;YAC/D,WAAW,CAAC,mBAAmB,MAA/B,WAAW,CAAC,mBAAmB,IAAM,MAAM,IAAA,iBAAO,EAAC;gBACjD,OAAO,EAAE,uCAAuC;aACjD,CAAC,EAAA;SACH;aAAM;YACL,WAAW,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAA;SACtE;QAED,IAAI,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;YAChE,WAAW,CAAC,UAAU,KAAtB,WAAW,CAAC,UAAU,GAAK,IAAA,gCAAmB,EAC5C,MAAM,IAAA,eAAK,EAAC;gBACV,OAAO,EAAE,iFAAiF;aAC3F,CAAC,EACF,wBAAW,CACZ,EAAA;SACF;QACD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE;YACrC,WAAW,GAAG,MAAM,IAAA,kCAAwB,EAAC,CAAC,iBAAiB,CAAC,EAAE,WAAW,CAAC,CAAA;SAC/E;QAED,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;YAC5B,WAAW,CAAC,kBAAkB,MAA9B,WAAW,CAAC,kBAAkB,IAAM,MAAM,IAAA,iBAAO,EAAC;gBAChD,OAAO,EAAE,oDAAoD;aAC9D,CAAC,EAAA;SACH;aAAM;YACL,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;SACpE;QAED,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,kBAAkB,CAAC,EAAE;YAC/D,WAAW,CAAC,SAAS,GAAG,IAAA,gCAAmB,EACzC,MAAM,IAAA,eAAK,EAAC;gBACV,OAAO,EAAE,kGAAkG;gBAC3G,OAAO,EAAE,GAAG;aACb,CAAC,EACF,wBAAW,CACZ,CAAA;YACD,WAAW,CAAC,OAAO,GAAG,IAAA,gCAAmB,EACvC,MAAM,IAAA,eAAK,EAAC;gBACV,OAAO,EAAE,4EAA4E;gBACrF,OAAO,EAAE,GAAG;aACb,CAAC,EACF,wBAAW,CACZ,CAAA;SACF;QAED,OAAO,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACvC,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,SAA8B,EAAE,IAAsB,EAAE,KAAc;QAC5G,IAAI,KAAK,GAAG,MAAM,gBAAU,CAAC,WAAW,CAAC;YACvC,IAAI;YACJ,oBAAoB,EAAE;gBACpB,IAAI,EAAE,aAAa;gBACnB,gBAAgB,EAAE,SAAS;gBAC3B,aAAa,EAAE;oBACb,IAAI;iBACL;aACF;SACF,CAAC,CAAA;QACF,wHAAwH;QACxH,IAAI,CAAC,KAAK,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAA;YAC3B,KAAK,GAAG,MAAM,gBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE;gBAC7C,IAAI;gBACJ,oBAAoB,EAAE;oBACpB,IAAI,EAAE,aAAa;oBACnB,gBAAgB,EAAE,SAAS;oBAC3B,aAAa,EAAE;wBACb,IAAI;qBACL;iBACF;aACF,CAAC,CAAA;SACH;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,eAAe,CAAC,KAAa,EAAE,SAAiB,EAAE,UAAmB;QAC3E,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,iCAAmB,EAAC,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;QAErF,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QACtE,MAAM,aAAa,GAA4B;YAC7C,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,OAAO;SACd,CAAA;QACD,IAAI,UAAU,EAAE;YACd,aAAa,CAAC,MAAM,GAAG,aAAa,CAAA;YACpC,aAAa,CAAC,UAAU,GAAG,UAAU,CAAA;SACtC;QACD,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QACtD,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QAExD,MAAM,IAAI,GAAG;YACX,IAAI,EAAE;gBACJ;oBACE,GAAG,EAAE,KAAK;oBACV,GAAG,EAAE,KAAK;oBACV,GAAG,EAAE,SAAS;oBACd,GAAG,YAAY;iBAChB;aACF;SACF,CAAA;QAED,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,CAAA;IACrE,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAe;QACxC,MAAM,gBAAU,CAAC,qBAAqB,CAAC;YACrC,WAAW,EAAE,OAAO;YACpB,aAAa,EAAE,OAAO;SACvB,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAAe,EAAE,eAAuB,EAAE,OAAiB,EAAE,SAAmB;QAC3G,MAAM,YAAY,GAAG;YACnB,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE;gBACT;oBACE,SAAS,EAAE,CAAC,YAAY,eAAe,UAAU,OAAO,EAAE,CAAC;oBAC3D,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,OAAO;iBAChB;aACF;SACF,CAAA;QACD,MAAM,iBAAiB,GAAG,+BAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,MAAM,gBAAU,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAA;QACnF,OAAO,MAAM,CAAA;IACf,CAAC;;AArPH,kCAsPC;AArPQ,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,YAAK,CAAC,MAAM,CAAC;QACjB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,0DAA0D;KACpE,CAAC;IACF,QAAQ,EAAE,YAAK,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,6BAA6B;KACvC,CAAC;IACF,iBAAiB,EAAE,YAAK,CAAC,MAAM,CAAC;QAC9B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,qCAAqC;KAC/C,CAAC;IACF,SAAS,EAAE,YAAK,CAAC,MAAM,CAAsB;QAC3C,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,wDAAwD;QACjE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,4BAAmB,CAAC;QAC3C,OAAO,EAAE,4BAAmB,CAAC,KAAK;KACnC,CAAC,EAAE;IACJ,kBAAkB,EAAE,YAAK,CAAC,OAAO,CAAC;QAChC,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,gEAAgE;KAC1E,CAAC;IACF,mBAAmB,EAAE,YAAK,CAAC,OAAO,CAAC;QACjC,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,uCAAuC;QAChD,SAAS,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CAAC;IACF,UAAU,EAAE,YAAK,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,sDAAsD;QAC/D,SAAS,EAAE,CAAC,mBAAmB,CAAC;KACjC,CAAC;CACH,CAAA"}
@@ -1,5 +1,51 @@
1
+ import z from 'zod';
1
2
  export declare const INPUT_LIMIT = 2000;
2
3
  export declare const TOKEN_LIMIT = 5000;
3
4
  export declare const PRESENTATION_DEFINITION_LIMIT = 5000;
4
5
  export declare function validateInputLength(text: string, maxLength: number): string;
5
6
  export declare function split(text: string, delimiter: string): string[];
7
+ export declare const policiesDataSchema: z.ZodObject<{
8
+ version: z.ZodString;
9
+ statement: z.ZodArray<z.ZodObject<{
10
+ principal: z.ZodArray<z.ZodString, "many">;
11
+ action: z.ZodArray<z.ZodString, "atleastone">;
12
+ resource: z.ZodArray<z.ZodString, "atleastone">;
13
+ effect: z.ZodLiteral<"Allow">;
14
+ }, "strip", z.ZodTypeAny, {
15
+ effect: "Allow";
16
+ principal: string[];
17
+ action: [string, ...string[]];
18
+ resource: [string, ...string[]];
19
+ }, {
20
+ effect: "Allow";
21
+ principal: string[];
22
+ action: [string, ...string[]];
23
+ resource: [string, ...string[]];
24
+ }>, "atleastone">;
25
+ }, "strip", z.ZodTypeAny, {
26
+ version: string;
27
+ statement: [{
28
+ effect: "Allow";
29
+ principal: string[];
30
+ action: [string, ...string[]];
31
+ resource: [string, ...string[]];
32
+ }, ...{
33
+ effect: "Allow";
34
+ principal: string[];
35
+ action: [string, ...string[]];
36
+ resource: [string, ...string[]];
37
+ }[]];
38
+ }, {
39
+ version: string;
40
+ statement: [{
41
+ effect: "Allow";
42
+ principal: string[];
43
+ action: [string, ...string[]];
44
+ resource: [string, ...string[]];
45
+ }, ...{
46
+ effect: "Allow";
47
+ principal: string[];
48
+ action: [string, ...string[]];
49
+ resource: [string, ...string[]];
50
+ }[]];
51
+ }>;
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.split = exports.validateInputLength = exports.PRESENTATION_DEFINITION_LIMIT = exports.TOKEN_LIMIT = exports.INPUT_LIMIT = void 0;
3
+ exports.policiesDataSchema = exports.split = exports.validateInputLength = exports.PRESENTATION_DEFINITION_LIMIT = exports.TOKEN_LIMIT = exports.INPUT_LIMIT = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const errors_1 = require("@oclif/core/lib/errors");
6
+ const zod_1 = tslib_1.__importDefault(require("zod"));
5
7
  exports.INPUT_LIMIT = 2000;
6
8
  exports.TOKEN_LIMIT = 5000;
7
9
  exports.PRESENTATION_DEFINITION_LIMIT = 5000;
@@ -16,4 +18,16 @@ function split(text, delimiter) {
16
18
  return text.split(delimiter).filter((item) => item.length > 0);
17
19
  }
18
20
  exports.split = split;
21
+ exports.policiesDataSchema = zod_1.default.object({
22
+ version: zod_1.default.string().max(exports.INPUT_LIMIT),
23
+ statement: zod_1.default
24
+ .object({
25
+ principal: zod_1.default.string().max(exports.INPUT_LIMIT).array().length(1),
26
+ action: zod_1.default.string().max(exports.INPUT_LIMIT).array().nonempty(),
27
+ resource: zod_1.default.string().max(exports.INPUT_LIMIT).array().nonempty(),
28
+ effect: zod_1.default.literal('Allow'),
29
+ })
30
+ .array()
31
+ .nonempty(),
32
+ });
19
33
  //# sourceMappingURL=validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/common/validators.ts"],"names":[],"mappings":";;;AAAA,mDAAiD;AAEpC,QAAA,WAAW,GAAG,IAAI,CAAA;AAClB,QAAA,WAAW,GAAG,IAAI,CAAA;AAClB,QAAA,6BAA6B,GAAG,IAAI,CAAA;AAEjD,SAAgB,mBAAmB,CAAC,IAAY,EAAE,SAAiB;IACjE,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;QAC3B,MAAM,IAAI,iBAAQ,CAAC,+BAA+B,SAAS,eAAe,CAAC,CAAA;KAC5E;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAND,kDAMC;AAED,SAAgB,KAAK,CAAC,IAAY,EAAE,SAAiB;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAChE,CAAC;AAFD,sBAEC"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/common/validators.ts"],"names":[],"mappings":";;;;AAAA,mDAAiD;AACjD,sDAAmB;AAEN,QAAA,WAAW,GAAG,IAAI,CAAA;AAClB,QAAA,WAAW,GAAG,IAAI,CAAA;AAClB,QAAA,6BAA6B,GAAG,IAAI,CAAA;AAEjD,SAAgB,mBAAmB,CAAC,IAAY,EAAE,SAAiB;IACjE,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;QAC3B,MAAM,IAAI,iBAAQ,CAAC,+BAA+B,SAAS,eAAe,CAAC,CAAA;KAC5E;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAND,kDAMC;AAED,SAAgB,KAAK,CAAC,IAAY,EAAE,SAAiB;IACnD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAChE,CAAC;AAFD,sBAEC;AAEY,QAAA,kBAAkB,GAAG,aAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,mBAAW,CAAC;IACpC,SAAS,EAAE,aAAC;SACT,MAAM,CAAC;QACN,SAAS,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,mBAAW,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACxD,MAAM,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,mBAAW,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;QACtD,QAAQ,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,mBAAW,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;QACxD,MAAM,EAAE,aAAC,CAAC,OAAO,CAAC,OAAO,CAAC;KAC3B,CAAC;SACD,KAAK,EAAE;SACP,QAAQ,EAAE;CACd,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@affinidi/cli",
3
- "version": "2.5.0",
3
+ "version": "2.6.1",
4
4
  "description": "Affinidi CLI",
5
5
  "author": "affinidi.com",
6
6
  "license": "Apache-2.0",