@zincapp/znvault-cli 2.16.5 → 2.18.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/dist/commands/apikey/conditions.d.ts +6 -0
- package/dist/commands/apikey/conditions.d.ts.map +1 -0
- package/dist/commands/apikey/conditions.js +57 -0
- package/dist/commands/apikey/conditions.js.map +1 -0
- package/dist/commands/apikey/create.d.ts +6 -0
- package/dist/commands/apikey/create.d.ts.map +1 -0
- package/dist/commands/apikey/create.js +106 -0
- package/dist/commands/apikey/create.js.map +1 -0
- package/dist/commands/apikey/delete.d.ts +6 -0
- package/dist/commands/apikey/delete.d.ts.map +1 -0
- package/dist/commands/apikey/delete.js +29 -0
- package/dist/commands/apikey/delete.js.map +1 -0
- package/dist/commands/apikey/enable-disable.d.ts +6 -0
- package/dist/commands/apikey/enable-disable.d.ts.map +1 -0
- package/dist/commands/apikey/enable-disable.js +44 -0
- package/dist/commands/apikey/enable-disable.js.map +1 -0
- package/dist/commands/apikey/helpers.d.ts +23 -0
- package/dist/commands/apikey/helpers.d.ts.map +1 -0
- package/dist/commands/apikey/helpers.js +135 -0
- package/dist/commands/apikey/helpers.js.map +1 -0
- package/dist/commands/apikey/index.d.ts +10 -0
- package/dist/commands/apikey/index.d.ts.map +1 -0
- package/dist/commands/apikey/index.js +33 -0
- package/dist/commands/apikey/index.js.map +1 -0
- package/dist/commands/apikey/list.d.ts +6 -0
- package/dist/commands/apikey/list.d.ts.map +1 -0
- package/dist/commands/apikey/list.js +74 -0
- package/dist/commands/apikey/list.js.map +1 -0
- package/dist/commands/apikey/managed/bind.d.ts +6 -0
- package/dist/commands/apikey/managed/bind.d.ts.map +1 -0
- package/dist/commands/apikey/managed/bind.js +52 -0
- package/dist/commands/apikey/managed/bind.js.map +1 -0
- package/dist/commands/apikey/managed/conditions.d.ts +6 -0
- package/dist/commands/apikey/managed/conditions.d.ts.map +1 -0
- package/dist/commands/apikey/managed/conditions.js +62 -0
- package/dist/commands/apikey/managed/conditions.js.map +1 -0
- package/dist/commands/apikey/managed/config.d.ts +6 -0
- package/dist/commands/apikey/managed/config.d.ts.map +1 -0
- package/dist/commands/apikey/managed/config.js +52 -0
- package/dist/commands/apikey/managed/config.js.map +1 -0
- package/dist/commands/apikey/managed/create.d.ts +6 -0
- package/dist/commands/apikey/managed/create.d.ts.map +1 -0
- package/dist/commands/apikey/managed/create.js +82 -0
- package/dist/commands/apikey/managed/create.js.map +1 -0
- package/dist/commands/apikey/managed/delete.d.ts +6 -0
- package/dist/commands/apikey/managed/delete.d.ts.map +1 -0
- package/dist/commands/apikey/managed/delete.js +29 -0
- package/dist/commands/apikey/managed/delete.js.map +1 -0
- package/dist/commands/apikey/managed/get.d.ts +6 -0
- package/dist/commands/apikey/managed/get.d.ts.map +1 -0
- package/dist/commands/apikey/managed/get.js +31 -0
- package/dist/commands/apikey/managed/get.js.map +1 -0
- package/dist/commands/apikey/managed/helpers.d.ts +5 -0
- package/dist/commands/apikey/managed/helpers.d.ts.map +1 -0
- package/dist/commands/apikey/managed/helpers.js +70 -0
- package/dist/commands/apikey/managed/helpers.js.map +1 -0
- package/dist/commands/apikey/managed/index.d.ts +7 -0
- package/dist/commands/apikey/managed/index.d.ts.map +1 -0
- package/dist/commands/apikey/managed/index.js +27 -0
- package/dist/commands/apikey/managed/index.js.map +1 -0
- package/dist/commands/apikey/managed/list.d.ts +6 -0
- package/dist/commands/apikey/managed/list.d.ts.map +1 -0
- package/dist/commands/apikey/managed/list.js +58 -0
- package/dist/commands/apikey/managed/list.js.map +1 -0
- package/dist/commands/apikey/managed/permissions.d.ts +6 -0
- package/dist/commands/apikey/managed/permissions.d.ts.map +1 -0
- package/dist/commands/apikey/managed/permissions.js +73 -0
- package/dist/commands/apikey/managed/permissions.js.map +1 -0
- package/dist/commands/apikey/managed/rotate.d.ts +6 -0
- package/dist/commands/apikey/managed/rotate.d.ts.map +1 -0
- package/dist/commands/apikey/managed/rotate.js +29 -0
- package/dist/commands/apikey/managed/rotate.js.map +1 -0
- package/dist/commands/apikey/managed/types.d.ts +62 -0
- package/dist/commands/apikey/managed/types.d.ts.map +1 -0
- package/dist/commands/apikey/managed/types.js +3 -0
- package/dist/commands/apikey/managed/types.js.map +1 -0
- package/dist/commands/apikey/permissions.d.ts +6 -0
- package/dist/commands/apikey/permissions.d.ts.map +1 -0
- package/dist/commands/apikey/permissions.js +70 -0
- package/dist/commands/apikey/permissions.js.map +1 -0
- package/dist/commands/apikey/policies.d.ts +6 -0
- package/dist/commands/apikey/policies.d.ts.map +1 -0
- package/dist/commands/apikey/policies.js +82 -0
- package/dist/commands/apikey/policies.js.map +1 -0
- package/dist/commands/apikey/rotate.d.ts +6 -0
- package/dist/commands/apikey/rotate.d.ts.map +1 -0
- package/dist/commands/apikey/rotate.js +42 -0
- package/dist/commands/apikey/rotate.js.map +1 -0
- package/dist/commands/apikey/self.d.ts +6 -0
- package/dist/commands/apikey/self.d.ts.map +1 -0
- package/dist/commands/apikey/self.js +96 -0
- package/dist/commands/apikey/self.js.map +1 -0
- package/dist/commands/apikey/show.d.ts +6 -0
- package/dist/commands/apikey/show.d.ts.map +1 -0
- package/dist/commands/apikey/show.js +79 -0
- package/dist/commands/apikey/show.js.map +1 -0
- package/dist/commands/apikey/types.d.ts +83 -0
- package/dist/commands/apikey/types.d.ts.map +1 -0
- package/dist/commands/apikey/types.js +3 -0
- package/dist/commands/apikey/types.js.map +1 -0
- package/dist/commands/apikey.d.ts +8 -2
- package/dist/commands/apikey.d.ts.map +1 -1
- package/dist/commands/apikey.js +9 -1296
- package/dist/commands/apikey.js.map +1 -1
- package/dist/commands/audit.d.ts.map +1 -1
- package/dist/commands/audit.js +7 -1
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +31 -10
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/cert.d.ts.map +1 -1
- package/dist/commands/cert.js +25 -1
- package/dist/commands/cert.js.map +1 -1
- package/dist/commands/cluster.d.ts.map +1 -1
- package/dist/commands/cluster.js +46 -17
- package/dist/commands/cluster.js.map +1 -1
- package/dist/commands/device.d.ts.map +1 -1
- package/dist/commands/device.js +8 -5
- package/dist/commands/device.js.map +1 -1
- package/dist/commands/dynamic-secrets.d.ts.map +1 -1
- package/dist/commands/dynamic-secrets.js +12 -0
- package/dist/commands/dynamic-secrets.js.map +1 -1
- package/dist/commands/emergency.d.ts.map +1 -1
- package/dist/commands/emergency.js +37 -1
- package/dist/commands/emergency.js.map +1 -1
- package/dist/commands/kms.d.ts.map +1 -1
- package/dist/commands/kms.js +19 -4
- package/dist/commands/kms.js.map +1 -1
- package/dist/commands/lockdown.d.ts.map +1 -1
- package/dist/commands/lockdown.js +10 -0
- package/dist/commands/lockdown.js.map +1 -1
- package/dist/commands/notification.d.ts.map +1 -1
- package/dist/commands/notification.js +51 -15
- package/dist/commands/notification.js.map +1 -1
- package/dist/commands/plugin.d.ts.map +1 -1
- package/dist/commands/plugin.js +97 -12
- package/dist/commands/plugin.js.map +1 -1
- package/dist/commands/policy.d.ts.map +1 -1
- package/dist/commands/policy.js +148 -35
- package/dist/commands/policy.js.map +1 -1
- package/dist/commands/role.d.ts.map +1 -1
- package/dist/commands/role.js +11 -1
- package/dist/commands/role.js.map +1 -1
- package/dist/commands/secret/copy.d.ts +6 -0
- package/dist/commands/secret/copy.d.ts.map +1 -0
- package/dist/commands/secret/copy.js +43 -0
- package/dist/commands/secret/copy.js.map +1 -0
- package/dist/commands/secret/create.d.ts +6 -0
- package/dist/commands/secret/create.d.ts.map +1 -0
- package/dist/commands/secret/create.js +297 -0
- package/dist/commands/secret/create.js.map +1 -0
- package/dist/commands/secret/decrypt.d.ts +6 -0
- package/dist/commands/secret/decrypt.d.ts.map +1 -0
- package/dist/commands/secret/decrypt.js +104 -0
- package/dist/commands/secret/decrypt.js.map +1 -0
- package/dist/commands/secret/delete.d.ts +6 -0
- package/dist/commands/secret/delete.d.ts.map +1 -0
- package/dist/commands/secret/delete.js +60 -0
- package/dist/commands/secret/delete.js.map +1 -0
- package/dist/commands/secret/get.d.ts +6 -0
- package/dist/commands/secret/get.d.ts.map +1 -0
- package/dist/commands/secret/get.js +60 -0
- package/dist/commands/secret/get.js.map +1 -0
- package/dist/commands/secret/helpers.d.ts +11 -0
- package/dist/commands/secret/helpers.d.ts.map +1 -0
- package/dist/commands/secret/helpers.js +59 -0
- package/dist/commands/secret/helpers.js.map +1 -0
- package/dist/commands/secret/history.d.ts +6 -0
- package/dist/commands/secret/history.d.ts.map +1 -0
- package/dist/commands/secret/history.js +52 -0
- package/dist/commands/secret/history.js.map +1 -0
- package/dist/commands/secret/index.d.ts +12 -0
- package/dist/commands/secret/index.d.ts.map +1 -0
- package/dist/commands/secret/index.js +49 -0
- package/dist/commands/secret/index.js.map +1 -0
- package/dist/commands/secret/list.d.ts +6 -0
- package/dist/commands/secret/list.d.ts.map +1 -0
- package/dist/commands/secret/list.js +72 -0
- package/dist/commands/secret/list.js.map +1 -0
- package/dist/commands/secret/pem-analysis.d.ts +32 -0
- package/dist/commands/secret/pem-analysis.d.ts.map +1 -0
- package/dist/commands/secret/pem-analysis.js +190 -0
- package/dist/commands/secret/pem-analysis.js.map +1 -0
- package/dist/commands/secret/resolve.d.ts +17 -0
- package/dist/commands/secret/resolve.d.ts.map +1 -0
- package/dist/commands/secret/resolve.js +36 -0
- package/dist/commands/secret/resolve.js.map +1 -0
- package/dist/commands/secret/rotate.d.ts +6 -0
- package/dist/commands/secret/rotate.d.ts.map +1 -0
- package/dist/commands/secret/rotate.js +72 -0
- package/dist/commands/secret/rotate.js.map +1 -0
- package/dist/commands/secret/types.d.ts +123 -0
- package/dist/commands/secret/types.d.ts.map +1 -0
- package/dist/commands/secret/types.js +3 -0
- package/dist/commands/secret/types.js.map +1 -0
- package/dist/commands/secret/update.d.ts +6 -0
- package/dist/commands/secret/update.d.ts.map +1 -0
- package/dist/commands/secret/update.js +124 -0
- package/dist/commands/secret/update.js.map +1 -0
- package/dist/commands/secret.d.ts +8 -2
- package/dist/commands/secret.d.ts.map +1 -1
- package/dist/commands/secret.js +6 -1131
- package/dist/commands/secret.js.map +1 -1
- package/dist/commands/self-update.d.ts.map +1 -1
- package/dist/commands/self-update.js +51 -5
- package/dist/commands/self-update.js.map +1 -1
- package/dist/commands/superadmin.d.ts.map +1 -1
- package/dist/commands/superadmin.js +23 -7
- package/dist/commands/superadmin.js.map +1 -1
- package/dist/commands/tenant.d.ts.map +1 -1
- package/dist/commands/tenant.js +4 -0
- package/dist/commands/tenant.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +13 -0
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/user.d.ts.map +1 -1
- package/dist/commands/user.js +35 -8
- package/dist/commands/user.js.map +1 -1
- package/dist/index.js +48 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/client/apikeys.d.ts +34 -0
- package/dist/lib/client/apikeys.d.ts.map +1 -0
- package/dist/lib/client/apikeys.js +113 -0
- package/dist/lib/client/apikeys.js.map +1 -0
- package/dist/lib/client/audit.d.ts +21 -0
- package/dist/lib/client/audit.d.ts.map +1 -0
- package/dist/lib/client/audit.js +40 -0
- package/dist/lib/client/audit.js.map +1 -0
- package/dist/lib/client/health.d.ts +30 -0
- package/dist/lib/client/health.d.ts.map +1 -0
- package/dist/lib/client/health.js +55 -0
- package/dist/lib/client/health.js.map +1 -0
- package/dist/lib/client/http.d.ts +50 -0
- package/dist/lib/client/http.d.ts.map +1 -0
- package/dist/lib/client/http.js +333 -0
- package/dist/lib/client/http.js.map +1 -0
- package/dist/lib/client/index.d.ts +156 -0
- package/dist/lib/client/index.d.ts.map +1 -0
- package/dist/lib/client/index.js +172 -0
- package/dist/lib/client/index.js.map +1 -0
- package/dist/lib/client/lockdown.d.ts +23 -0
- package/dist/lib/client/lockdown.d.ts.map +1 -0
- package/dist/lib/client/lockdown.js +48 -0
- package/dist/lib/client/lockdown.js.map +1 -0
- package/dist/lib/client/managed-keys.d.ts +18 -0
- package/dist/lib/client/managed-keys.d.ts.map +1 -0
- package/dist/lib/client/managed-keys.js +190 -0
- package/dist/lib/client/managed-keys.js.map +1 -0
- package/dist/lib/client/policies.d.ts +35 -0
- package/dist/lib/client/policies.d.ts.map +1 -0
- package/dist/lib/client/policies.js +131 -0
- package/dist/lib/client/policies.js.map +1 -0
- package/dist/lib/client/tenants.d.ts +29 -0
- package/dist/lib/client/tenants.d.ts.map +1 -0
- package/dist/lib/client/tenants.js +56 -0
- package/dist/lib/client/tenants.js.map +1 -0
- package/dist/lib/client/types.d.ts +45 -0
- package/dist/lib/client/types.d.ts.map +1 -0
- package/dist/lib/client/types.js +3 -0
- package/dist/lib/client/types.js.map +1 -0
- package/dist/lib/client/users.d.ts +44 -0
- package/dist/lib/client/users.d.ts.map +1 -0
- package/dist/lib/client/users.js +116 -0
- package/dist/lib/client/users.js.map +1 -0
- package/dist/lib/client.d.ts +11 -246
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +10 -999
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/command-error-handler.d.ts +99 -0
- package/dist/lib/command-error-handler.d.ts.map +1 -0
- package/dist/lib/command-error-handler.js +108 -0
- package/dist/lib/command-error-handler.js.map +1 -0
- package/dist/lib/config/apikey.d.ts +29 -0
- package/dist/lib/config/apikey.d.ts.map +1 -0
- package/dist/lib/config/apikey.js +58 -0
- package/dist/lib/config/apikey.js.map +1 -0
- package/dist/lib/config/cache.d.ts +47 -0
- package/dist/lib/config/cache.d.ts.map +1 -0
- package/dist/lib/config/cache.js +84 -0
- package/dist/lib/config/cache.js.map +1 -0
- package/dist/lib/config/credentials.d.ts +33 -0
- package/dist/lib/config/credentials.d.ts.map +1 -0
- package/dist/lib/config/credentials.js +70 -0
- package/dist/lib/config/credentials.js.map +1 -0
- package/dist/lib/config/getters.d.ts +28 -0
- package/dist/lib/config/getters.d.ts.map +1 -0
- package/dist/lib/config/getters.js +65 -0
- package/dist/lib/config/getters.js.map +1 -0
- package/dist/lib/config/index.d.ts +17 -0
- package/dist/lib/config/index.d.ts.map +1 -0
- package/dist/lib/config/index.js +21 -0
- package/dist/lib/config/index.js.map +1 -0
- package/dist/lib/config/migration.d.ts +10 -0
- package/dist/lib/config/migration.d.ts.map +1 -0
- package/dist/lib/config/migration.js +59 -0
- package/dist/lib/config/migration.js.map +1 -0
- package/dist/lib/config/plugins.d.ts +25 -0
- package/dist/lib/config/plugins.d.ts.map +1 -0
- package/dist/lib/config/plugins.js +58 -0
- package/dist/lib/config/plugins.js.map +1 -0
- package/dist/lib/config/profile.d.ts +42 -0
- package/dist/lib/config/profile.d.ts.map +1 -0
- package/dist/lib/config/profile.js +154 -0
- package/dist/lib/config/profile.js.map +1 -0
- package/dist/lib/config/store.d.ts +23 -0
- package/dist/lib/config/store.d.ts.map +1 -0
- package/dist/lib/config/store.js +41 -0
- package/dist/lib/config/store.js.map +1 -0
- package/dist/lib/config/types.d.ts +44 -0
- package/dist/lib/config/types.d.ts.map +1 -0
- package/dist/lib/config/types.js +8 -0
- package/dist/lib/config/types.js.map +1 -0
- package/dist/lib/config/validation.d.ts +38 -0
- package/dist/lib/config/validation.d.ts.map +1 -0
- package/dist/lib/config/validation.js +146 -0
- package/dist/lib/config/validation.js.map +1 -0
- package/dist/lib/config.d.ts +5 -158
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +26 -424
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/constants.d.ts +65 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +90 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/db.d.ts +4 -0
- package/dist/lib/db.d.ts.map +1 -1
- package/dist/lib/db.js +77 -46
- package/dist/lib/db.js.map +1 -1
- package/dist/lib/format-helpers.d.ts +63 -0
- package/dist/lib/format-helpers.d.ts.map +1 -0
- package/dist/lib/format-helpers.js +219 -0
- package/dist/lib/format-helpers.js.map +1 -0
- package/dist/lib/validation-helpers.d.ts +132 -0
- package/dist/lib/validation-helpers.d.ts.map +1 -0
- package/dist/lib/validation-helpers.js +319 -0
- package/dist/lib/validation-helpers.js.map +1 -0
- package/dist/lib/visual.d.ts +22 -0
- package/dist/lib/visual.d.ts.map +1 -1
- package/dist/lib/visual.js +83 -0
- package/dist/lib/visual.js.map +1 -1
- package/dist/services/signature-verifier.d.ts.map +1 -1
- package/dist/services/signature-verifier.js +11 -4
- package/dist/services/signature-verifier.js.map +1 -1
- package/dist/services/update-installer.d.ts +7 -0
- package/dist/services/update-installer.d.ts.map +1 -1
- package/dist/services/update-installer.js +58 -19
- package/dist/services/update-installer.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// Path: src/commands/apikey/self.ts
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { client } from '../../lib/client.js';
|
|
4
|
+
import * as output from '../../lib/output.js';
|
|
5
|
+
import { formatDate, displayConditions } from './helpers.js';
|
|
6
|
+
export function registerSelfCommands(apiKeyCmd) {
|
|
7
|
+
// Self-info (when using API key auth)
|
|
8
|
+
apiKeyCmd
|
|
9
|
+
.command('self')
|
|
10
|
+
.description('Show info about the currently used API key')
|
|
11
|
+
.option('--json', 'Output as JSON')
|
|
12
|
+
.action(async (options) => {
|
|
13
|
+
const spinner = ora('Fetching API key info...').start();
|
|
14
|
+
try {
|
|
15
|
+
const result = await client.getApiKeySelf();
|
|
16
|
+
spinner.stop();
|
|
17
|
+
if (options.json) {
|
|
18
|
+
output.json(result);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const statusIcon = result.apiKey.enabled ? '\x1b[32m●\x1b[0m Active' : '\x1b[31m○\x1b[0m Disabled';
|
|
22
|
+
output.keyValue({
|
|
23
|
+
'Key ID': result.apiKey.id,
|
|
24
|
+
'Name': result.apiKey.name,
|
|
25
|
+
'Prefix': result.apiKey.prefix,
|
|
26
|
+
'Status': statusIcon,
|
|
27
|
+
'Tenant': result.apiKey.tenant_id,
|
|
28
|
+
'Description': result.apiKey.description ?? 'None',
|
|
29
|
+
'Expires': formatDate(result.apiKey.expires_at),
|
|
30
|
+
'Days Until Expiry': result.expiresInDays,
|
|
31
|
+
'Expiring Soon': result.isExpiringSoon ? 'Yes (!)' : 'No',
|
|
32
|
+
'Last Used': result.apiKey.last_used ? formatDate(result.apiKey.last_used) : 'Never',
|
|
33
|
+
'Rotation Count': result.apiKey.rotation_count,
|
|
34
|
+
'Last Rotation': result.apiKey.last_rotation ? formatDate(result.apiKey.last_rotation) : 'Never',
|
|
35
|
+
});
|
|
36
|
+
if (result.apiKey.permissions.length > 0) {
|
|
37
|
+
console.log('\nPermissions:');
|
|
38
|
+
for (const perm of result.apiKey.permissions) {
|
|
39
|
+
console.log(` - ${perm}`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// Display conditions if any
|
|
43
|
+
const apiKeyConditions = result.apiKey.conditions;
|
|
44
|
+
if (apiKeyConditions && Object.keys(apiKeyConditions).length > 0) {
|
|
45
|
+
console.log('\nConditions:');
|
|
46
|
+
displayConditions(apiKeyConditions);
|
|
47
|
+
}
|
|
48
|
+
if (result.isExpiringSoon) {
|
|
49
|
+
console.log('\n⚠️ This key is expiring soon! Run "znvault apikey self-rotate" to rotate it.');
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
spinner.fail('Failed to fetch API key info');
|
|
54
|
+
output.error(err instanceof Error ? err.message : String(err));
|
|
55
|
+
console.log('\nNote: This command only works when authenticated via API key (X-API-Key header).');
|
|
56
|
+
process.exit(1);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
// Self-rotate (when using API key auth)
|
|
60
|
+
apiKeyCmd
|
|
61
|
+
.command('self-rotate')
|
|
62
|
+
.description('Rotate the currently used API key')
|
|
63
|
+
.option('-n, --name <name>', 'New name for the rotated key')
|
|
64
|
+
.option('--json', 'Output as JSON')
|
|
65
|
+
.action(async (options) => {
|
|
66
|
+
const spinner = ora('Rotating API key...').start();
|
|
67
|
+
try {
|
|
68
|
+
const result = await client.rotateApiKeySelf(options.name);
|
|
69
|
+
spinner.succeed('API key rotated');
|
|
70
|
+
if (options.json) {
|
|
71
|
+
output.json(result);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
console.log('\n⚠️ IMPORTANT: Save this new key now - it will not be shown again!');
|
|
75
|
+
console.log('The old key has been invalidated.\n');
|
|
76
|
+
console.log('────────────────────────────────────────────────────────────────');
|
|
77
|
+
console.log(`New API Key: ${result.key}`);
|
|
78
|
+
console.log('────────────────────────────────────────────────────────────────\n');
|
|
79
|
+
output.keyValue({
|
|
80
|
+
'New Key ID': result.apiKey.id,
|
|
81
|
+
'Name': result.apiKey.name,
|
|
82
|
+
'Prefix': result.apiKey.prefix,
|
|
83
|
+
'Expires': formatDate(result.apiKey.expires_at),
|
|
84
|
+
'Days Until Expiry': result.expiresInDays,
|
|
85
|
+
'Rotation Count': result.apiKey.rotation_count,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
spinner.fail('Failed to rotate API key');
|
|
90
|
+
output.error(err instanceof Error ? err.message : String(err));
|
|
91
|
+
console.log('\nNote: This command only works when authenticated via API key (X-API-Key header).');
|
|
92
|
+
process.exit(1);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=self.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self.js","sourceRoot":"","sources":["../../../src/commands/apikey/self.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../../src/commands/apikey/show.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI,CA8E5D"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
// Path: src/commands/apikey/show.ts
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { client } from '../../lib/client.js';
|
|
4
|
+
import * as output from '../../lib/output.js';
|
|
5
|
+
import { formatDate, getDaysUntilExpiry, displayConditions } from './helpers.js';
|
|
6
|
+
export function registerShowCommand(apiKeyCmd) {
|
|
7
|
+
apiKeyCmd
|
|
8
|
+
.command('show <id>')
|
|
9
|
+
.description('Show API key details')
|
|
10
|
+
.option('-t, --tenant <id>', 'Tenant ID')
|
|
11
|
+
.option('--json', 'Output as JSON')
|
|
12
|
+
.action(async (id, options) => {
|
|
13
|
+
const spinner = ora('Fetching API key...').start();
|
|
14
|
+
try {
|
|
15
|
+
// First try to get by ID directly
|
|
16
|
+
let key;
|
|
17
|
+
try {
|
|
18
|
+
key = await client.getApiKey(id, options.tenant);
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
// Fall back to list and search
|
|
22
|
+
const result = await client.listApiKeys(options.tenant);
|
|
23
|
+
key = result.items.find(k => k.id === id || k.prefix === id || k.name === id);
|
|
24
|
+
}
|
|
25
|
+
if (!key) {
|
|
26
|
+
spinner.fail('API key not found');
|
|
27
|
+
output.error(`No API key found matching: ${id}`);
|
|
28
|
+
process.exit(1);
|
|
29
|
+
}
|
|
30
|
+
spinner.stop();
|
|
31
|
+
if (options.json) {
|
|
32
|
+
output.json(key);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const daysLeft = getDaysUntilExpiry(key.expires_at);
|
|
36
|
+
const statusIcon = key.enabled ? '\x1b[32m●\x1b[0m Active' : '\x1b[31m○\x1b[0m Disabled';
|
|
37
|
+
output.keyValue({
|
|
38
|
+
'Key ID': key.id,
|
|
39
|
+
'Name': key.name,
|
|
40
|
+
'Prefix': key.prefix,
|
|
41
|
+
'Status': statusIcon,
|
|
42
|
+
'Tenant': key.tenant_id,
|
|
43
|
+
'Description': key.description ?? 'None',
|
|
44
|
+
'Created By': key.created_by_username ?? key.created_by ?? 'Unknown',
|
|
45
|
+
'Created': formatDate(key.created_at),
|
|
46
|
+
'Expires': formatDate(key.expires_at),
|
|
47
|
+
'Days Until Expiry': daysLeft,
|
|
48
|
+
'Last Used': key.last_used ? formatDate(key.last_used) : 'Never',
|
|
49
|
+
'Rotation Count': key.rotation_count,
|
|
50
|
+
'Last Rotation': key.last_rotation ? formatDate(key.last_rotation) : 'Never',
|
|
51
|
+
'IP Allowlist': key.ip_allowlist?.join(', ') ?? 'None (any IP)',
|
|
52
|
+
});
|
|
53
|
+
if (key.permissions.length > 0) {
|
|
54
|
+
console.log('\nPermissions:');
|
|
55
|
+
for (const perm of key.permissions) {
|
|
56
|
+
console.log(` - ${perm}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// Display conditions if any
|
|
60
|
+
const keyConditions = key.conditions;
|
|
61
|
+
if (keyConditions && Object.keys(keyConditions).length > 0) {
|
|
62
|
+
console.log('\nConditions:');
|
|
63
|
+
displayConditions(keyConditions);
|
|
64
|
+
}
|
|
65
|
+
if (!key.enabled) {
|
|
66
|
+
console.log('\n⚠️ This key is disabled and cannot be used for authentication.');
|
|
67
|
+
}
|
|
68
|
+
else if (daysLeft <= 7) {
|
|
69
|
+
console.log('\n⚠️ This key is expiring soon! Consider rotating it.');
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
catch (err) {
|
|
73
|
+
spinner.fail('Failed to fetch API key');
|
|
74
|
+
output.error(err instanceof Error ? err.message : String(err));
|
|
75
|
+
process.exit(1);
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=show.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../../src/commands/apikey/show.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for API key commands
|
|
3
|
+
*/
|
|
4
|
+
export interface ListOptions {
|
|
5
|
+
tenant?: string;
|
|
6
|
+
json?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface CreateOptions {
|
|
9
|
+
expires: string;
|
|
10
|
+
permissions?: string;
|
|
11
|
+
description?: string;
|
|
12
|
+
ip?: string;
|
|
13
|
+
timeRange?: string;
|
|
14
|
+
methods?: string;
|
|
15
|
+
resources?: string;
|
|
16
|
+
aliases?: string;
|
|
17
|
+
tags?: string;
|
|
18
|
+
tenant?: string;
|
|
19
|
+
json?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface ShowOptions {
|
|
22
|
+
tenant?: string;
|
|
23
|
+
json?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface DeleteOptions {
|
|
26
|
+
tenant?: string;
|
|
27
|
+
force?: boolean;
|
|
28
|
+
}
|
|
29
|
+
export interface RotateOptions {
|
|
30
|
+
name?: string;
|
|
31
|
+
tenant?: string;
|
|
32
|
+
json?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface EnableDisableOptions {
|
|
35
|
+
tenant?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface UpdatePermissionsOptions {
|
|
38
|
+
set?: string;
|
|
39
|
+
add?: string;
|
|
40
|
+
remove?: string;
|
|
41
|
+
tenant?: string;
|
|
42
|
+
json?: boolean;
|
|
43
|
+
}
|
|
44
|
+
export interface UpdateConditionsOptions {
|
|
45
|
+
ip?: string;
|
|
46
|
+
timeRange?: string;
|
|
47
|
+
methods?: string;
|
|
48
|
+
resources?: string;
|
|
49
|
+
aliases?: string;
|
|
50
|
+
tags?: string;
|
|
51
|
+
clearAll?: boolean;
|
|
52
|
+
tenant?: string;
|
|
53
|
+
json?: boolean;
|
|
54
|
+
}
|
|
55
|
+
export interface ListPoliciesOptions {
|
|
56
|
+
tenant?: string;
|
|
57
|
+
json?: boolean;
|
|
58
|
+
}
|
|
59
|
+
export interface AttachDetachPolicyOptions {
|
|
60
|
+
tenant?: string;
|
|
61
|
+
}
|
|
62
|
+
export interface SelfOptions {
|
|
63
|
+
json?: boolean;
|
|
64
|
+
}
|
|
65
|
+
export interface SelfRotateOptions {
|
|
66
|
+
name?: string;
|
|
67
|
+
json?: boolean;
|
|
68
|
+
}
|
|
69
|
+
export interface TimeRangeCondition {
|
|
70
|
+
start: string;
|
|
71
|
+
end: string;
|
|
72
|
+
timezone?: string;
|
|
73
|
+
}
|
|
74
|
+
export interface ApiKeyConditions {
|
|
75
|
+
ip?: string[];
|
|
76
|
+
timeRange?: TimeRangeCondition;
|
|
77
|
+
methods?: string[];
|
|
78
|
+
resources?: Record<string, string[]>;
|
|
79
|
+
aliases?: string[];
|
|
80
|
+
resourceTags?: Record<string, string>;
|
|
81
|
+
[key: string]: unknown;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/apikey/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/apikey/types.ts"],"names":[],"mappings":"AAAA,qCAAqC"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* API key commands - backward compatibility re-export
|
|
3
|
+
*
|
|
4
|
+
* This file maintains backward compatibility by re-exporting from the
|
|
5
|
+
* modularized apikey/ directory structure.
|
|
6
|
+
*/
|
|
7
|
+
export { registerApiKeyCommands } from './apikey/index.js';
|
|
8
|
+
export * from './apikey/types.js';
|
|
3
9
|
//# sourceMappingURL=apikey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apikey.d.ts","sourceRoot":"","sources":["../../src/commands/apikey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apikey.d.ts","sourceRoot":"","sources":["../../src/commands/apikey.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,cAAc,mBAAmB,CAAC"}
|