@datarails-ai/dr-cli 1.6.139 → 1.6.141

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -300,6 +300,29 @@ interactively instead. An API-key file is different: see below.
300
300
  > the operator's own login expires. Use `--as <operator-email>` to pick the
301
301
  > operator when several are stored, or `--user-id <n>` to skip the lookup.
302
302
 
303
+ ### Tenant pin (one server, one account)
304
+
305
+ A launcher that opens each customer in its own session can confine `dr` to that
306
+ customer through the environment. With none of these set, `dr` behaves as usual.
307
+ A variable that is set but empty still counts as set, so leave unused ones unset.
308
+
309
+ ```
310
+ DR_PIN_SERVER=<key or URL> # required whenever any DR_PIN_* variable is set
311
+ DR_PIN_ACCOUNT=<email> # the login email; required unless org mode
312
+ DR_PIN_ORG_MODE=1 # server only, no account, read-only commands
313
+ ```
314
+
315
+ While a pin is set, `dr` refuses: a `--server` / `--account` that differs from
316
+ the pin (compared after canonicalising, so `-sX`, `--server=X` and the URL form
317
+ are covered); a missing `--server`, or a missing `--account` in customer mode;
318
+ `dr logout`, and `dr login-as` to anyone but the pinned account (or with
319
+ `--user-id`); a host override (`--app-space-host`, `DR_APP_SPACE_HOST`,
320
+ `--connectors-url`); in org mode, any command the scopes map does not prove
321
+ read-only, plus the few read-scoped commands with side effects
322
+ (`devices request-logs`, `desk smtp test`, `dashboards prepare`,
323
+ `storyboards prepare`). A pin that is set but malformed refuses every command
324
+ (`--help` and `--version` still print). A refusal exits 3, like a scope denial.
325
+
303
326
  ### API keys (headless and CI)
304
327
 
305
328
  A user-bound API key is a durable credential `dr` exchanges itself for a