例 1 : %Developer ロールおよび %Operator ロール
この例では、%Developer ロールと %Operator ロールの承認の違いを示します。
どちらのロールも、InterSystems IRIS であらかじめ定義されています。これらは、メンバに対して以下のような異なる特権のセットを提供します。
-
%Developer — このロールのメンバは、ターミナル、スタジオ、Telnet、デバッガを含むさまざまな開発関連ツールにアクセスできます。特に、%Developer は %Development:USE 特権を持ちます。この特権を持っていると、ターミナルにアクセスできます。
-
%Operator — このロールのメンバは、データベースのマウントとマウント解除、InterSystems IRIS の開始と停止、整合性の確認など、数々のオペレータ関連タスクを実行できます。このロールは、メンバに %Development:USE 特権を与えません。
以下の手順を実行します。
-
OpUser (パスワード “OpUser”) と DevUser (パスワード “DevUser”) という 2 つの新しい InterSystems IRIS ユーザを作成します。OpUser を %Operator ロールに、DevUser を %Developer ロールに割り当てます。
-
次に、ターミナルを開き、$SYSTEM.Security.Login を使用して、DevUser としてログインします。このメソッドでは、引数としてユーザ名とパスワードが必要ですので注意してください。次に、ログインを確認するために、$Username と $Roles の値を書き込みます。
USER>Write $System.Security.Login("DevUser","DevUser")
1
USER>Write $Username
DevUser
USER>Write $Roles
%Developer
USER>
-
新しいターミナルを開き、$SYSTEM.Security.Login を使用して、OpUser としてログインを試みます。このユーザは %Development:USE を持っていないので、ターミナルにはアクセスできません。ログインは失敗し、ターミナルが閉じられます。閉じる前に、ターミナルは以下のようなエラーを表示します。
USER>Do $System.Security.Login("OpUser","OpUser")
Access Denied
Note:
これ以降の例では、InterSystems IRIS が最小のセキュリティを使用してインストールされ、%Service_Console サービスでは認証なしアクセスが許可されていることを前提とします。
前述の例では、Windows 環境を想定しています。UNIX® ユーザはターミナルを使用して同じ例を実行できます。ただし、関連するサービスは %Service_Terminal という名前です。
事前定義されたすべてのロールによって与えられる特権の比較については、"事前定義ロール" を参照してください。