@zincapp/znvault-cli 4.0.0 → 4.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/dist/commands/advisor.js +7 -4
  2. package/dist/commands/advisor.js.map +1 -1
  3. package/dist/commands/apikey/conditions.d.ts.map +1 -1
  4. package/dist/commands/apikey/conditions.js +4 -3
  5. package/dist/commands/apikey/conditions.js.map +1 -1
  6. package/dist/commands/apikey/create.d.ts.map +1 -1
  7. package/dist/commands/apikey/create.js +4 -2
  8. package/dist/commands/apikey/create.js.map +1 -1
  9. package/dist/commands/apikey/delete.d.ts.map +1 -1
  10. package/dist/commands/apikey/delete.js +4 -2
  11. package/dist/commands/apikey/delete.js.map +1 -1
  12. package/dist/commands/apikey/enable-disable.d.ts.map +1 -1
  13. package/dist/commands/apikey/enable-disable.js +7 -4
  14. package/dist/commands/apikey/enable-disable.js.map +1 -1
  15. package/dist/commands/apikey/helpers.d.ts +16 -0
  16. package/dist/commands/apikey/helpers.d.ts.map +1 -1
  17. package/dist/commands/apikey/helpers.js +9 -0
  18. package/dist/commands/apikey/helpers.js.map +1 -1
  19. package/dist/commands/apikey/list.d.ts.map +1 -1
  20. package/dist/commands/apikey/list.js +4 -3
  21. package/dist/commands/apikey/list.js.map +1 -1
  22. package/dist/commands/apikey/managed/bind.d.ts.map +1 -1
  23. package/dist/commands/apikey/managed/bind.js +4 -3
  24. package/dist/commands/apikey/managed/bind.js.map +1 -1
  25. package/dist/commands/apikey/managed/conditions.d.ts.map +1 -1
  26. package/dist/commands/apikey/managed/conditions.js +5 -4
  27. package/dist/commands/apikey/managed/conditions.js.map +1 -1
  28. package/dist/commands/apikey/managed/config.d.ts.map +1 -1
  29. package/dist/commands/apikey/managed/config.js +4 -3
  30. package/dist/commands/apikey/managed/config.js.map +1 -1
  31. package/dist/commands/apikey/managed/create.d.ts.map +1 -1
  32. package/dist/commands/apikey/managed/create.js +4 -1
  33. package/dist/commands/apikey/managed/create.js.map +1 -1
  34. package/dist/commands/apikey/managed/delete.d.ts.map +1 -1
  35. package/dist/commands/apikey/managed/delete.js +4 -2
  36. package/dist/commands/apikey/managed/delete.js.map +1 -1
  37. package/dist/commands/apikey/managed/get.d.ts.map +1 -1
  38. package/dist/commands/apikey/managed/get.js +4 -2
  39. package/dist/commands/apikey/managed/get.js.map +1 -1
  40. package/dist/commands/apikey/managed/list.d.ts.map +1 -1
  41. package/dist/commands/apikey/managed/list.js +4 -2
  42. package/dist/commands/apikey/managed/list.js.map +1 -1
  43. package/dist/commands/apikey/managed/permissions.d.ts.map +1 -1
  44. package/dist/commands/apikey/managed/permissions.js +5 -3
  45. package/dist/commands/apikey/managed/permissions.js.map +1 -1
  46. package/dist/commands/apikey/managed/rotate.d.ts.map +1 -1
  47. package/dist/commands/apikey/managed/rotate.js +4 -3
  48. package/dist/commands/apikey/managed/rotate.js.map +1 -1
  49. package/dist/commands/apikey/permissions.d.ts.map +1 -1
  50. package/dist/commands/apikey/permissions.js +5 -3
  51. package/dist/commands/apikey/permissions.js.map +1 -1
  52. package/dist/commands/apikey/policies.d.ts.map +1 -1
  53. package/dist/commands/apikey/policies.js +10 -7
  54. package/dist/commands/apikey/policies.js.map +1 -1
  55. package/dist/commands/apikey/rotate.d.ts.map +1 -1
  56. package/dist/commands/apikey/rotate.js +4 -3
  57. package/dist/commands/apikey/rotate.js.map +1 -1
  58. package/dist/commands/apikey/show.d.ts.map +1 -1
  59. package/dist/commands/apikey/show.js +5 -4
  60. package/dist/commands/apikey/show.js.map +1 -1
  61. package/dist/commands/audit.d.ts.map +1 -1
  62. package/dist/commands/audit.js +10 -3
  63. package/dist/commands/audit.js.map +1 -1
  64. package/dist/commands/cluster.d.ts.map +1 -1
  65. package/dist/commands/cluster.js +31 -14
  66. package/dist/commands/cluster.js.map +1 -1
  67. package/dist/commands/group.js +15 -3
  68. package/dist/commands/group.js.map +1 -1
  69. package/dist/commands/health.d.ts.map +1 -1
  70. package/dist/commands/health.js +6 -5
  71. package/dist/commands/health.js.map +1 -1
  72. package/dist/commands/kms/crud.d.ts +1 -1
  73. package/dist/commands/kms/crud.d.ts.map +1 -1
  74. package/dist/commands/kms/crud.js +6 -6
  75. package/dist/commands/kms/crud.js.map +1 -1
  76. package/dist/commands/kms/index.d.ts.map +1 -1
  77. package/dist/commands/kms/index.js +5 -2
  78. package/dist/commands/kms/index.js.map +1 -1
  79. package/dist/commands/kms/lifecycle.d.ts +1 -1
  80. package/dist/commands/kms/lifecycle.d.ts.map +1 -1
  81. package/dist/commands/kms/lifecycle.js +7 -7
  82. package/dist/commands/kms/lifecycle.js.map +1 -1
  83. package/dist/commands/kms/routing.d.ts +5 -0
  84. package/dist/commands/kms/routing.d.ts.map +1 -1
  85. package/dist/commands/kms/routing.js +41 -5
  86. package/dist/commands/kms/routing.js.map +1 -1
  87. package/dist/commands/policy/attachments.d.ts +9 -5
  88. package/dist/commands/policy/attachments.d.ts.map +1 -1
  89. package/dist/commands/policy/attachments.js +16 -13
  90. package/dist/commands/policy/attachments.js.map +1 -1
  91. package/dist/commands/policy/crud.d.ts +6 -5
  92. package/dist/commands/policy/crud.d.ts.map +1 -1
  93. package/dist/commands/policy/crud.js +16 -11
  94. package/dist/commands/policy/crud.js.map +1 -1
  95. package/dist/commands/policy/helpers.d.ts +16 -0
  96. package/dist/commands/policy/helpers.d.ts.map +1 -1
  97. package/dist/commands/policy/helpers.js +9 -0
  98. package/dist/commands/policy/helpers.js.map +1 -1
  99. package/dist/commands/policy/io.d.ts +3 -2
  100. package/dist/commands/policy/io.d.ts.map +1 -1
  101. package/dist/commands/policy/io.js +7 -5
  102. package/dist/commands/policy/io.js.map +1 -1
  103. package/dist/commands/policy/list.d.ts +6 -2
  104. package/dist/commands/policy/list.d.ts.map +1 -1
  105. package/dist/commands/policy/list.js +7 -6
  106. package/dist/commands/policy/list.js.map +1 -1
  107. package/dist/commands/quarantine.js +23 -9
  108. package/dist/commands/quarantine.js.map +1 -1
  109. package/dist/commands/role.d.ts.map +1 -1
  110. package/dist/commands/role.js +36 -15
  111. package/dist/commands/role.js.map +1 -1
  112. package/dist/commands/sso/crud.d.ts +1 -1
  113. package/dist/commands/sso/crud.d.ts.map +1 -1
  114. package/dist/commands/sso/crud.js +16 -16
  115. package/dist/commands/sso/crud.js.map +1 -1
  116. package/dist/commands/sso/helpers.d.ts +7 -1
  117. package/dist/commands/sso/helpers.d.ts.map +1 -1
  118. package/dist/commands/sso/helpers.js +32 -1
  119. package/dist/commands/sso/helpers.js.map +1 -1
  120. package/dist/commands/sso/index.d.ts.map +1 -1
  121. package/dist/commands/sso/index.js +6 -1
  122. package/dist/commands/sso/index.js.map +1 -1
  123. package/dist/commands/user.js +11 -5
  124. package/dist/commands/user.js.map +1 -1
  125. package/dist/lib/cli-update.d.ts +18 -1
  126. package/dist/lib/cli-update.d.ts.map +1 -1
  127. package/dist/lib/cli-update.js +39 -3
  128. package/dist/lib/cli-update.js.map +1 -1
  129. package/dist/lib/client/apikeys.d.ts +21 -13
  130. package/dist/lib/client/apikeys.d.ts.map +1 -1
  131. package/dist/lib/client/apikeys.js +30 -26
  132. package/dist/lib/client/apikeys.js.map +1 -1
  133. package/dist/lib/client/audit.d.ts +54 -1
  134. package/dist/lib/client/audit.d.ts.map +1 -1
  135. package/dist/lib/client/audit.js +83 -9
  136. package/dist/lib/client/audit.js.map +1 -1
  137. package/dist/lib/client/index.d.ts +37 -36
  138. package/dist/lib/client/index.d.ts.map +1 -1
  139. package/dist/lib/client/index.js +37 -36
  140. package/dist/lib/client/index.js.map +1 -1
  141. package/dist/lib/client/managed-keys.d.ts +10 -7
  142. package/dist/lib/client/managed-keys.d.ts.map +1 -1
  143. package/dist/lib/client/managed-keys.js +16 -16
  144. package/dist/lib/client/managed-keys.js.map +1 -1
  145. package/dist/lib/client/policies.d.ts +14 -10
  146. package/dist/lib/client/policies.d.ts.map +1 -1
  147. package/dist/lib/client/policies.js +22 -22
  148. package/dist/lib/client/policies.js.map +1 -1
  149. package/dist/lib/client/quarantine.d.ts +25 -9
  150. package/dist/lib/client/quarantine.d.ts.map +1 -1
  151. package/dist/lib/client/quarantine.js +44 -27
  152. package/dist/lib/client/quarantine.js.map +1 -1
  153. package/dist/lib/client/users.d.ts +30 -3
  154. package/dist/lib/client/users.d.ts.map +1 -1
  155. package/dist/lib/client/users.js +39 -15
  156. package/dist/lib/client/users.js.map +1 -1
  157. package/dist/lib/command-context.d.ts +15 -0
  158. package/dist/lib/command-context.d.ts.map +1 -1
  159. package/dist/lib/command-context.js +9 -0
  160. package/dist/lib/command-context.js.map +1 -1
  161. package/dist/lib/db/health.d.ts.map +1 -1
  162. package/dist/lib/db/health.js +13 -4
  163. package/dist/lib/db/health.js.map +1 -1
  164. package/dist/lib/mode.d.ts +18 -4
  165. package/dist/lib/mode.d.ts.map +1 -1
  166. package/dist/lib/mode.js +13 -6
  167. package/dist/lib/mode.js.map +1 -1
  168. package/dist/tui/hooks/useApi.d.ts +14 -7
  169. package/dist/tui/hooks/useApi.d.ts.map +1 -1
  170. package/dist/tui/hooks/useApi.js.map +1 -1
  171. package/dist/tui/screens/Dashboard.d.ts.map +1 -1
  172. package/dist/tui/screens/Dashboard.js +2 -3
  173. package/dist/tui/screens/Dashboard.js.map +1 -1
  174. package/dist/types/index.d.ts +59 -12
  175. package/dist/types/index.d.ts.map +1 -1
  176. package/package.json +1 -1
@@ -9,6 +9,7 @@ export function registerUserCommands(parent, opts) {
9
9
  withRegisterContext(ctx, () => { registerUserCommandsInner(parent, ctx); });
10
10
  }
11
11
  function registerUserCommandsInner(parent, ctx) {
12
+ const asSuperadmin = ctx === 'superadmin';
12
13
  const user = parent
13
14
  .command('user')
14
15
  .description('User management commands');
@@ -28,6 +29,7 @@ function registerUserCommandsInner(parent, ctx) {
28
29
  tenantId: options.tenant,
29
30
  role: options.role,
30
31
  status: options.status,
32
+ asSuperadmin,
31
33
  });
32
34
  spinner.stop();
33
35
  if (options.json) {
@@ -82,6 +84,7 @@ function registerUserCommandsInner(parent, ctx) {
82
84
  email: options.email,
83
85
  tenantId: options.tenant,
84
86
  role: options.role,
87
+ asSuperadmin,
85
88
  });
86
89
  spinner.succeed('User created successfully');
87
90
  if (options.json) {
@@ -113,7 +116,7 @@ function registerUserCommandsInner(parent, ctx) {
113
116
  .action(async (id, options) => {
114
117
  const spinner = output.spinner('Fetching user...').start();
115
118
  try {
116
- const result = await mode.getUser(id);
119
+ const result = await mode.getUser(id, { asSuperadmin });
117
120
  spinner.stop();
118
121
  if (!result) {
119
122
  output.error(`User '${id}' not found`);
@@ -179,7 +182,7 @@ function registerUserCommandsInner(parent, ctx) {
179
182
  }
180
183
  const spinner = output.spinner('Updating user...').start();
181
184
  try {
182
- const result = await client.updateUser(id, updates);
185
+ const result = await client.updateUser(id, updates, { asSuperadmin });
183
186
  spinner.succeed('User updated successfully');
184
187
  if (options.json) {
185
188
  output.json(result);
@@ -220,7 +223,7 @@ function registerUserCommandsInner(parent, ctx) {
220
223
  }
221
224
  const spinner = output.spinner('Deleting user...').start();
222
225
  try {
223
- await client.deleteUser(id);
226
+ await client.deleteUser(id, { asSuperadmin });
224
227
  spinner.succeed(`User '${id}' deleted successfully`);
225
228
  }
226
229
  catch (err) {
@@ -261,7 +264,7 @@ function registerUserCommandsInner(parent, ctx) {
261
264
  }
262
265
  else {
263
266
  // API mode
264
- const result = await client.unlockUser(id);
267
+ const result = await client.unlockUser(id, { asSuperadmin });
265
268
  spinner.succeed('User unlocked successfully');
266
269
  if (options.json) {
267
270
  output.json({ success: true, id, ...result });
@@ -311,8 +314,11 @@ function registerUserCommandsInner(parent, ctx) {
311
314
  else {
312
315
  // API mode — superadmins must use /v1/superadmin/users/:id/reset-password
313
316
  // because the tenant route is JWT-tenant-scoped after v1.41.2.
317
+ // We prefer the explicit registration context over the dynamic
318
+ // auth-context check so that a tenant admin who happens to share
319
+ // a session with another role flag stays on the tenant surface.
314
320
  const result = await client.resetUserPassword(id, password, {
315
- asSuperadmin: isSuperadmin(),
321
+ asSuperadmin: asSuperadmin || isSuperadmin(),
316
322
  });
317
323
  spinner.succeed('Password reset successfully');
318
324
  if (options.json) {
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,26 @@ export declare function performUpdate(options?: {
28
28
  error?: string;
29
29
  }>;
30
30
  /**
31
- * Display update notification using Ink TUI
31
+ * Display update notification using Ink TUI.
32
+ *
33
+ * Always renders to stderr. The CLI is frequently invoked from contexts that
34
+ * capture or evaluate stdout (shell completion via `source <(znvault completion
35
+ * zsh)`, `$(znvault profile list)`, pipes, etc.). Writing the update banner to
36
+ * stdout in those contexts has the shell interpret the box-drawing characters
37
+ * as commands, producing 'command not found' errors at terminal startup. Stderr
38
+ * keeps the banner visible to the user without polluting captured output.
32
39
  */
33
40
  export declare function showUpdateNotification(latestVersion: string, currentVersion: string): void;
41
+ /**
42
+ * True when the CLI is being invoked from a context that captures stdout,
43
+ * making it unsafe to write the update banner at all (even to stderr, since
44
+ * users of these contexts don't expect any side-effect output).
45
+ *
46
+ * Detected by inspecting argv before Commander parses it.
47
+ *
48
+ * Exported for testing.
49
+ */
50
+ export declare function isStdoutCapturedContext(): boolean;
34
51
  /**
35
52
  * Run update check in background (non-blocking)
36
53
  * Shows notification if update is available
@@ -1 +1 @@
1
- {"version":3,"file":"cli-update.d.ts","sourceRoot":"","sources":["../../src/lib/cli-update.ts"],"names":[],"mappings":"AACA;;;;GAIG;AA6EH;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CA0B1C;AAyCD;;;GAGG;AACH,wBAAsB,cAAc,CAAC,UAAU,UAAQ,GAAG,OAAO,CAAC;IAChE,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CA4CD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACb,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyCrD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAY1F;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAqB/C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CASvC"}
1
+ {"version":3,"file":"cli-update.d.ts","sourceRoot":"","sources":["../../src/lib/cli-update.ts"],"names":[],"mappings":"AACA;;;;GAIG;AA6EH;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CA0B1C;AAyCD;;;GAGG;AACH,wBAAsB,cAAc,CAAC,UAAU,UAAQ,GAAG,OAAO,CAAC;IAChE,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CA4CD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACb,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyCrD;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAY1F;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAWjD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CA4B/C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CASvC"}
@@ -207,18 +207,48 @@ export async function performUpdate(options = {}) {
207
207
  }
208
208
  }
209
209
  /**
210
- * Display update notification using Ink TUI
210
+ * Display update notification using Ink TUI.
211
+ *
212
+ * Always renders to stderr. The CLI is frequently invoked from contexts that
213
+ * capture or evaluate stdout (shell completion via `source <(znvault completion
214
+ * zsh)`, `$(znvault profile list)`, pipes, etc.). Writing the update banner to
215
+ * stdout in those contexts has the shell interpret the box-drawing characters
216
+ * as commands, producing 'command not found' errors at terminal startup. Stderr
217
+ * keeps the banner visible to the user without polluting captured output.
211
218
  */
212
219
  export function showUpdateNotification(latestVersion, currentVersion) {
213
- // Use Ink to render the update banner
214
220
  const { unmount } = render(React.createElement(UpdateBanner, {
215
221
  currentVersion,
216
222
  latestVersion,
217
223
  packageName: PACKAGE_NAME,
218
- }));
224
+ }), { stdout: process.stderr });
219
225
  // Unmount immediately after rendering (static output)
220
226
  unmount();
221
227
  }
228
+ /**
229
+ * True when the CLI is being invoked from a context that captures stdout,
230
+ * making it unsafe to write the update banner at all (even to stderr, since
231
+ * users of these contexts don't expect any side-effect output).
232
+ *
233
+ * Detected by inspecting argv before Commander parses it.
234
+ *
235
+ * Exported for testing.
236
+ */
237
+ export function isStdoutCapturedContext() {
238
+ const argv = process.argv.slice(2);
239
+ // `znvault completion bash` / `znvault completion zsh` — output is sourced
240
+ // into the shell. Any extra bytes become 'command not found' errors.
241
+ if (argv[0] === 'completion')
242
+ return true;
243
+ // `znvault profile list --plain` is called by our own zsh completion script
244
+ // inside `$(…)`. Any banner ends up in the completion result.
245
+ if (argv[0] === 'profile' && argv.includes('--plain'))
246
+ return true;
247
+ // Non-TTY stdout is a strong signal of piping or capture. Stay quiet.
248
+ if (!process.stdout.isTTY)
249
+ return true;
250
+ return false;
251
+ }
222
252
  /**
223
253
  * Run update check in background (non-blocking)
224
254
  * Shows notification if update is available
@@ -228,6 +258,12 @@ export function runBackgroundUpdateCheck() {
228
258
  if (process.env.CI || process.env.ZNVAULT_NO_UPDATE_CHECK || isQuietMode()) {
229
259
  return;
230
260
  }
261
+ // Don't run when the invocation's stdout is captured or evaluated. This
262
+ // prevents the banner (or any background side-effect output) from leaking
263
+ // into shell completion scripts, command substitutions, and pipes.
264
+ if (isStdoutCapturedContext()) {
265
+ return;
266
+ }
231
267
  // Run check asynchronously without blocking
232
268
  void (async () => {
233
269
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-update.js","sourceRoot":"","sources":["../../src/lib/cli-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-update.js","sourceRoot":"","sources":["../../src/lib/cli-update.ts"],"names":[],"mappings":"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"}
@@ -2,14 +2,21 @@
2
2
  * API Key management client
3
3
  *
4
4
  * Routing policy:
5
- * - When `tenantId` is supplied, the caller is acting as a superadmin and
5
+ * - When `tenantId` is supplied OR the caller passes `asSuperadmin: true`,
6
6
  * we target `/v1/superadmin/api-keys/*` (the cross-tenant surface).
7
- * - When `tenantId` is omitted, the caller is a tenant principal and we
8
- * target `/auth/api-keys/*` (tenant derived from JWT).
7
+ * - Otherwise, we target `/auth/api-keys/*` (tenant principal; tenant
8
+ * derived from JWT).
9
+ *
10
+ * The explicit `asSuperadmin` flag is required for `znvault superadmin
11
+ * apikey list` (no `--tenant`): the tenant surface rejects pure superadmin
12
+ * principals with "Superadmins must use /v1/superadmin/* routes".
9
13
  */
10
14
  import { HttpClient } from './http.js';
11
15
  import type { APIKey, CreateAPIKeyResponse, ListAPIKeysResponse, RotateAPIKeyResponse, APIKeySelfResponse, APIKeyPolicyAttachment } from '../../types/index.js';
12
16
  import type { MessageResponse } from './types.js';
17
+ export interface ApiKeyScope {
18
+ asSuperadmin?: boolean;
19
+ }
13
20
  export declare class ApiKeysClient extends HttpClient {
14
21
  create(data: {
15
22
  name: string;
@@ -19,19 +26,20 @@ export declare class ApiKeysClient extends HttpClient {
19
26
  tenantId?: string;
20
27
  ipAllowlist?: string[];
21
28
  conditions?: Record<string, unknown>;
29
+ asSuperadmin?: boolean;
22
30
  }): Promise<CreateAPIKeyResponse>;
23
- list(tenantId?: string): Promise<ListAPIKeysResponse>;
24
- getById(id: string, tenantId?: string): Promise<APIKey>;
25
- deleteById(id: string, tenantId?: string): Promise<void>;
26
- rotate(id: string, name?: string, tenantId?: string): Promise<RotateAPIKeyResponse>;
27
- updatePermissions(id: string, permissions: string[], tenantId?: string): Promise<APIKey>;
28
- updateConditions(id: string, conditions: Record<string, unknown>, tenantId?: string): Promise<APIKey>;
29
- setEnabled(id: string, enabled: boolean, tenantId?: string): Promise<APIKey>;
30
- getPolicies(id: string, tenantId?: string): Promise<{
31
+ list(tenantId?: string, opts?: ApiKeyScope): Promise<ListAPIKeysResponse>;
32
+ getById(id: string, tenantId?: string, opts?: ApiKeyScope): Promise<APIKey>;
33
+ deleteById(id: string, tenantId?: string, opts?: ApiKeyScope): Promise<void>;
34
+ rotate(id: string, name?: string, tenantId?: string, opts?: ApiKeyScope): Promise<RotateAPIKeyResponse>;
35
+ updatePermissions(id: string, permissions: string[], tenantId?: string, opts?: ApiKeyScope): Promise<APIKey>;
36
+ updateConditions(id: string, conditions: Record<string, unknown>, tenantId?: string, opts?: ApiKeyScope): Promise<APIKey>;
37
+ setEnabled(id: string, enabled: boolean, tenantId?: string, opts?: ApiKeyScope): Promise<APIKey>;
38
+ getPolicies(id: string, tenantId?: string, opts?: ApiKeyScope): Promise<{
31
39
  policies: APIKeyPolicyAttachment[];
32
40
  }>;
33
- attachPolicy(keyId: string, policyId: string, tenantId?: string): Promise<MessageResponse>;
34
- detachPolicy(keyId: string, policyId: string, tenantId?: string): Promise<MessageResponse>;
41
+ attachPolicy(keyId: string, policyId: string, tenantId?: string, opts?: ApiKeyScope): Promise<MessageResponse>;
42
+ detachPolicy(keyId: string, policyId: string, tenantId?: string, opts?: ApiKeyScope): Promise<MessageResponse>;
35
43
  getSelf(): Promise<APIKeySelfResponse>;
36
44
  rotateSelf(name?: string): Promise<RotateAPIKeyResponse & {
37
45
  expiresInDays: number;
@@ -1 +1 @@
1
- {"version":3,"file":"apikeys.d.ts","sourceRoot":"","sources":["../../../src/lib/client/apikeys.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EACV,MAAM,EACN,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AASlD,qBAAa,aAAc,SAAQ,UAAU;IACrC,MAAM,CAAC,IAAI,EAAE;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAgB3B,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAQrD,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQvD,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IASnF,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUxF,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUrG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAU5E,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,sBAAsB,EAAE,CAAA;KAAE,CAAC;IAQ3F,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAQ1F,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAQ1F,OAAO,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAOtC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;CAO3F"}
1
+ {"version":3,"file":"apikeys.d.ts","sourceRoot":"","sources":["../../../src/lib/client/apikeys.ts"],"names":[],"mappings":"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"}
@@ -3,22 +3,26 @@
3
3
  * API Key management client
4
4
  *
5
5
  * Routing policy:
6
- * - When `tenantId` is supplied, the caller is acting as a superadmin and
6
+ * - When `tenantId` is supplied OR the caller passes `asSuperadmin: true`,
7
7
  * we target `/v1/superadmin/api-keys/*` (the cross-tenant surface).
8
- * - When `tenantId` is omitted, the caller is a tenant principal and we
9
- * target `/auth/api-keys/*` (tenant derived from JWT).
8
+ * - Otherwise, we target `/auth/api-keys/*` (tenant principal; tenant
9
+ * derived from JWT).
10
+ *
11
+ * The explicit `asSuperadmin` flag is required for `znvault superadmin
12
+ * apikey list` (no `--tenant`): the tenant surface rejects pure superadmin
13
+ * principals with "Superadmins must use /v1/superadmin/* routes".
10
14
  */
11
15
  import { HttpClient } from './http.js';
12
16
  const TENANT_BASE = '/auth/api-keys';
13
17
  const ADMIN_BASE = '/v1/superadmin/api-keys';
14
- function basePath(tenantId) {
15
- return tenantId ? ADMIN_BASE : TENANT_BASE;
18
+ function basePath(tenantId, asSuperadmin) {
19
+ return tenantId || asSuperadmin ? ADMIN_BASE : TENANT_BASE;
16
20
  }
17
21
  export class ApiKeysClient extends HttpClient {
18
22
  async create(data) {
19
23
  return this.request({
20
24
  method: 'POST',
21
- path: basePath(data.tenantId),
25
+ path: basePath(data.tenantId, data.asSuperadmin),
22
26
  query: data.tenantId ? { tenantId: data.tenantId } : undefined,
23
27
  body: {
24
28
  name: data.name,
@@ -30,80 +34,80 @@ export class ApiKeysClient extends HttpClient {
30
34
  },
31
35
  });
32
36
  }
33
- async list(tenantId) {
37
+ async list(tenantId, opts) {
34
38
  return this.request({
35
39
  method: 'GET',
36
- path: basePath(tenantId),
40
+ path: basePath(tenantId, opts?.asSuperadmin),
37
41
  query: tenantId ? { tenantId } : undefined,
38
42
  });
39
43
  }
40
- async getById(id, tenantId) {
44
+ async getById(id, tenantId, opts) {
41
45
  return this.request({
42
46
  method: 'GET',
43
- path: `${basePath(tenantId)}/${id}`,
47
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}`,
44
48
  query: tenantId ? { tenantId } : undefined,
45
49
  });
46
50
  }
47
- async deleteById(id, tenantId) {
51
+ async deleteById(id, tenantId, opts) {
48
52
  await this.request({
49
53
  method: 'DELETE',
50
- path: `${basePath(tenantId)}/${id}`,
54
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}`,
51
55
  query: tenantId ? { tenantId } : undefined,
52
56
  });
53
57
  }
54
- async rotate(id, name, tenantId) {
58
+ async rotate(id, name, tenantId, opts) {
55
59
  return this.request({
56
60
  method: 'POST',
57
- path: `${basePath(tenantId)}/${id}/rotate`,
61
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}/rotate`,
58
62
  query: tenantId ? { tenantId } : undefined,
59
63
  body: name ? { name } : {},
60
64
  });
61
65
  }
62
- async updatePermissions(id, permissions, tenantId) {
66
+ async updatePermissions(id, permissions, tenantId, opts) {
63
67
  const response = await this.request({
64
68
  method: 'PATCH',
65
- path: `${basePath(tenantId)}/${id}/permissions`,
69
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}/permissions`,
66
70
  query: tenantId ? { tenantId } : undefined,
67
71
  body: { permissions },
68
72
  });
69
73
  return response.apiKey;
70
74
  }
71
- async updateConditions(id, conditions, tenantId) {
75
+ async updateConditions(id, conditions, tenantId, opts) {
72
76
  const response = await this.request({
73
77
  method: 'PATCH',
74
- path: `${basePath(tenantId)}/${id}/conditions`,
78
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}/conditions`,
75
79
  query: tenantId ? { tenantId } : undefined,
76
80
  body: { conditions },
77
81
  });
78
82
  return response.apiKey;
79
83
  }
80
- async setEnabled(id, enabled, tenantId) {
84
+ async setEnabled(id, enabled, tenantId, opts) {
81
85
  const response = await this.request({
82
86
  method: 'PATCH',
83
- path: `${basePath(tenantId)}/${id}/enabled`,
87
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}/enabled`,
84
88
  query: tenantId ? { tenantId } : undefined,
85
89
  body: { enabled },
86
90
  });
87
91
  return response.apiKey;
88
92
  }
89
- async getPolicies(id, tenantId) {
93
+ async getPolicies(id, tenantId, opts) {
90
94
  return this.request({
91
95
  method: 'GET',
92
- path: `${basePath(tenantId)}/${id}/policies`,
96
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${id}/policies`,
93
97
  query: tenantId ? { tenantId } : undefined,
94
98
  });
95
99
  }
96
- async attachPolicy(keyId, policyId, tenantId) {
100
+ async attachPolicy(keyId, policyId, tenantId, opts) {
97
101
  return this.request({
98
102
  method: 'POST',
99
- path: `${basePath(tenantId)}/${keyId}/policies/${policyId}`,
103
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${keyId}/policies/${policyId}`,
100
104
  query: tenantId ? { tenantId } : undefined,
101
105
  });
102
106
  }
103
- async detachPolicy(keyId, policyId, tenantId) {
107
+ async detachPolicy(keyId, policyId, tenantId, opts) {
104
108
  return this.request({
105
109
  method: 'DELETE',
106
- path: `${basePath(tenantId)}/${keyId}/policies/${policyId}`,
110
+ path: `${basePath(tenantId, opts?.asSuperadmin)}/${keyId}/policies/${policyId}`,
107
111
  query: tenantId ? { tenantId } : undefined,
108
112
  });
109
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"apikeys.js","sourceRoot":"","sources":["../../../src/lib/client/apikeys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apikeys.js","sourceRoot":"","sources":["../../../src/lib/client/apikeys.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,31 @@
1
1
  /**
2
2
  * Audit log client
3
+ *
4
+ * Routing:
5
+ * - `asSuperadmin: true` → `/v1/superadmin/audit*` (cross-tenant; required
6
+ * when the caller is a superadmin under `znvault superadmin audit`).
7
+ * - otherwise → `/v1/audit*` (tenant-scoped; tenant derived from JWT).
8
+ *
9
+ * Superadmins MUST use the `/v1/superadmin/*` surface; the tenant-scoped
10
+ * surface rejects superadmin principals with
11
+ * "Superadmins must use /v1/superadmin/* routes".
12
+ *
13
+ * Note: the tenant and superadmin namespaces use different query schemas:
14
+ * - tenant `/v1/audit`: snake_case (`client_cn`, `start_date`, `end_date`)
15
+ * - admin `/v1/superadmin/audit`: camelCase (`username`, `startDate`,
16
+ * `endDate`); also supports `tenantId` filter.
17
+ * The admin namespace exposes only `GET /v1/superadmin/audit` (list) and
18
+ * `GET /v1/superadmin/audit/stats`. There is no superadmin /verify or
19
+ * /export endpoint — so for those operations the client routes through the
20
+ * superadmin list path with an optional `tenantId` filter when in admin
21
+ * mode, and through the tenant `/v1/audit/verify` & `/v1/audit/export`
22
+ * routes otherwise.
3
23
  */
4
24
  import { HttpClient } from './http.js';
5
25
  import type { AuditEntry, AuditVerifyResult } from '../../types/index.js';
26
+ export interface AuditScopeOptions {
27
+ asSuperadmin?: boolean;
28
+ }
6
29
  export declare class AuditClient extends HttpClient {
7
30
  list(options?: {
8
31
  user?: string;
@@ -10,12 +33,42 @@ export declare class AuditClient extends HttpClient {
10
33
  startDate?: string;
11
34
  endDate?: string;
12
35
  limit?: number;
36
+ tenantId?: string;
37
+ asSuperadmin?: boolean;
13
38
  }): Promise<AuditEntry[]>;
14
- verifyChain(): Promise<AuditVerifyResult>;
39
+ /**
40
+ * Verify the HMAC chain integrity of audit logs.
41
+ *
42
+ * Only the tenant-scoped surface exposes `/v1/audit/verify`. When called
43
+ * with `asSuperadmin: true`, the request still targets `/v1/audit/verify`
44
+ * which will reject a pure superadmin principal — surface that error to
45
+ * the caller rather than silently no-op.
46
+ */
47
+ verifyChain(_opts?: AuditScopeOptions): Promise<AuditVerifyResult>;
48
+ /**
49
+ * Export audit logs.
50
+ *
51
+ * - In tenant mode, hits `/v1/audit/export` (CSV/JSON download).
52
+ * - In superadmin mode, the server only exposes `/v1/superadmin/audit`
53
+ * (list) — there is no dedicated export endpoint. We hit the list
54
+ * endpoint with a high `limit` so the caller can still serialize the
55
+ * resulting JSON to disk. CSV is not supported in admin mode.
56
+ */
15
57
  export(options?: {
16
58
  format?: 'json' | 'csv';
17
59
  startDate?: string;
18
60
  endDate?: string;
61
+ tenantId?: string;
62
+ asSuperadmin?: boolean;
19
63
  }): Promise<string>;
64
+ /**
65
+ * Audit statistics summary.
66
+ *
67
+ * Available on both tenant (`/v1/audit/stats`) and admin
68
+ * (`/v1/superadmin/audit/stats`) surfaces.
69
+ */
70
+ getStats(opts?: AuditScopeOptions & {
71
+ tenantId?: string;
72
+ }): Promise<unknown>;
20
73
  }
21
74
  //# sourceMappingURL=audit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../src/lib/client/audit.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAE9B,qBAAa,WAAY,SAAQ,UAAU;IACnC,IAAI,CAAC,OAAO,CAAC,EAAE;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAenB,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAOzC,MAAM,CAAC,OAAO,CAAC,EAAE;QACrB,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,MAAM,CAAC;CAYpB"}
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../src/lib/client/audit.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,qBAAa,WAAY,SAAQ,UAAU;IACnC,IAAI,CAAC,OAAO,CAAC,EAAE;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IA0BzB;;;;;;;OAOG;IACG,WAAW,CAAC,KAAK,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAOxE;;;;;;;;OAQG;IACG,MAAM,CAAC,OAAO,CAAC,EAAE;QACrB,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BnB;;;;;OAKG;IACG,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAOnF"}