これは InterSystems FAQ サイトの記事です。
管理ポータルのシステム管理やシステムエクスプローラーなど最上位のメニューについては、事前定義ロールをユーザに付与することでアクセスを制限することができます。
最下位のメニュー、例えば [システム管理] > [構成] > [システム構成] > [ネームスペース] などは、事前定義ロールの %Manager を付与されたユーザであれば、全てのユーザが利用できてしまいます。
このページに対して、「%Manager ロールを持っているが、あるユーザは使用でき あるユーザは使用できない」のようにユーザ毎のアクセス制限を追加したい場合は、カスタムリソースを作成し再下位メニューに対して作成したカスタムリソースを付与することで制限を追加することができます。
手順は以下の通りです。
- カスタムリソースを任意名で作成する。この時パブリック許可は設定しない。
- 管理ポータルの任意の再下位メニューに 1 で作成したカスタムリソースを設定する。
- 新規でロールを作成し、1で作成したカスタムリソースに対する USE 許可を設定する。
- メニューを利用できるユーザを 3 で作成したロールのメンバーに設定する。
具体的な設定の流れは以下の通りです。
1. カスタムリソースを任意名で作成する。この時パブリック許可は設定しない。
管理ポータル > [システム管理] > [セキュリティ] > [リソース] の画面で新規リソースを作成します。
図例では、Restrict リソースをパブリック許可なしで作成しています。
2、管理ポータルの任意の再下位メニューに 1 で作成したカスタムリソースを設定する。
図では、管理ポータル > [システム管理] > [構成] > [システム構成] > [ネームスペース] の画面に対してアクセス制限を加えたいため、このメニューに 1 で作成したリソースを設定します。
デフォルトの状態は以下の通りです。
リソースを追加した後は以下の通りです。
3、新規でロールを作成し、1で作成したカスタムリソースに対する USE 許可を設定する。
次は、ユーザ毎にアクセスを変えたいため、作成したカスタムリソースの USE 許可を持つロールを作成します。
RestrictedRole ロール作成の流れは以下の通りです。
4、メニューを利用できるユーザを 3 で作成したロールのメンバーに設定する。
予め、TestM1、TestM2 ユーザを作成しそれぞれに %Manager ロールを付与している状態を作っています。
さらに、3 で作成したロールのメンバーに TestM1 ユーザを追加しています。
最後に、設定後の画面表示を確認します。
TestM1 ユーザでログインした場合、[ネームスペース]メニューは利用できますが、TestM2 ユーザは追加設定したカスタムリソースに対する USE 許可を持たないため、メニューにアクセスできないことが確認できました。