ZSU (ObjectScript)
構文
ZSU:pc role
引数
引数 | 説明 |
---|---|
pc | オプション — 後置条件式 |
role | オプション — 引用符で囲まれた文字列。エスカレーション先のロール。 |
説明
ZSU role は、$ROLES を指定されたエスカレーション・ロールに一時的に置き換えます。このコマンドは、%SYSTEM.Security.EscalateLogin()Opens in a new tab と同等です。
ユーザの新しいロールに、現在のネームスペースにアクセスする権限がない場合、エスカレーション後に別のネームスペースに切り替えるよう求めるプロンプトが表示されます。
既定では、このコマンドを実行する場合、エスカレーションの試行時と、エスカレーション後に非アクティブ状態が一定期間続くと、再認証が必要になります。再認証の頻度の構成の詳細は、"エスカレーション・ロールの構成" を参照してください。
引数
pc
オプション — オプションの後置条件式。InterSystems IRIS は、後置条件式が True (0 以外の数値に評価される) の場合にコマンドを実行します。InterSystems IRIS は、後置条件式が False (0 に評価される) の場合はコマンドを実行しません。詳細は、"コマンド後置条件式" を参照してください。
role
オプション — エスカレーション先のロール。指定されていない場合、ZSU の動作はユーザが持つエスカレーション・ロールの数によって異なります。
-
ユーザがエスカレーション・ロールを持っていない場合、ZSU はエラーを返します。
-
ユーザが 1 つのエスカレーション・ロールのみを持つ場合、ZSU は自動的にそのロールを選択します。
-
ユーザが複数のエスカレーション・ロールを持つ場合、ZSU はユーザにロールを選択するよう求めます。
例
以下の例で、ユーザ Alice はロール %Manager にエスカレートし、quit でロール・エスカレーションを終了します。
USER>zsu "%Manager"
Escalated Login for User: Alice (Role: %Manager)
Password: **********
USER (%Manager)# quit
その後、Alice は USER ネームスペースへのアクセス権限がないロール %Operator にエスカレートします。エスカレーション後、Alice は %SYS ネームスペースに切り替えます。
USER>zsu "%Operator"
Escalated Login for User: Alice (Role: %Operator)
Password: **********
No access to current namespace: USER
Namespace: %SYS
You're in namespace %SYS
Default directory is c:\intersystems\iris\mgr\
%SYS (%Operator)#