RunAs ロールへのユーザーの割り当て
アプリケーションに対してユーザーを RunAs ロールに割り当てる方法を学習できます。
始める前に
- 新規 RunAs ロールが作成済みで、Web リソースおよび EJB リソースに割り当て済みとなっている、Web アプリケーションおよび EJB アプリケーションを保護します。
- すべての RunAs ロールをご使用のアプリケーションに作成します。 ユーザーを RunAs ロールに入れることができるのは、 そのユーザーまたはそのユーザーが属するグループが既に通常のロールの一部になっている場合のみです。
- ユーザーおよびグループをセキュリティー・ロールに割り当てます。 詳しくは、ロールへのユーザーおよびグループの割り当てを参照してください。
- ユーザー・レジストリー要件に適合しているかを検証してください。 ここで説明されている要件は、 ロールへのユーザーおよびグループの割り当てで説明されている事項と同一です。 例えば、role1 ロールが RunAs ロールとしても使用できるロールである場合、user1 ユーザーを RunAs ロールに追加することができます。管理コンソールは、「適用」または「OK」がクリックされた場合にこのロジックを検査します。検査が不合格の場合、変更は加えられず、エラー・メッセージが表示されます。
ユーザー ID とパスワードが RunAs ロールに割り当てられる際は、 現在アクティブな構成済みユーザー・レジストリーを使用して妥当性検査が実行されます。 デフォルトでは、 ローカル・オペレーティング・システム・レジストリーがアクティブ・ユーザー・レジストリーとして設定されます。 したがって、アプリケーションがインストール済みでセキュリティーをサーバー上で使用不可にしている場合は、 ローカル・オペレーティング・システム・レジストリーを使用して、RunAs ロールに割り当てられたユーザー ID とパスワードの妥当性検査を行います。 アプリケーションの対象のユーザー・レジストリーがローカル・オペレーティング・システムでない場合は、 妥当性検査は失敗します。したがって、セキュリティーをサーバー上で使用可能にする場合は、 RunAs ロールをユーザーにマップします。ただし、 アクティブ・ユーザー・レジストリーとセキュリティーを使用可能にした後の対象のレジストリーが同一であるとき、 セキュリティーを使用不可にした場合は、ユーザーを RunAs ロールに割り当てることができます。
ロールに特別な対象の「全員」または「全認証者」が割り当てられている場合は、 そのロールに対して妥当性検査は実行されません。
このパネルで「適用」をクリックした場合、または「Security role to user/group mapping」パネルで「OK」をクリックした場合は、常に妥当性検査が実行されます。 この検査によって、すべての RunAs ロールに属するすべてのユーザーが、 直接または (グループを介して) 間接的に、 「Security role to user/group mappings」パネル内の当該ロールの中に存在することが検証されます。 ロールがユーザーおよびそのユーザーの属するグループの両方に割り当てられている場合は、ユーザーまたはグループのいずれかを、 「Security role to user/group mapping」パネルから削除できます。
RunAs ロールのユーザーが何らかのグループに属しており、そのグループがそのロールに割り当てられている場合、 このグループのロールへの割り当ては、必ず管理コンソールを使用して実行してください。 アセンブリー・ツールやその他の方法は使用しないでください。 管理コンソールを使用している場合は、グループの絶対パス名が使用されます (例えば、Windows システムでは hostname¥groupName であり、Lightweight Directory Access Protocol (LDAP) では識別名 (DN) です)。 検査中、RunAs ロールのユーザーが属するすべてのグループはレジストリーから取得されます。 ユーザー・レジストリーから取得されたグループのリストはグループの絶対パス名であるため、検査は正しく機能します。 アセンブリー・ツールを使用してグループのショート・ネームが入力されている (例えば、CN=group1, o=myCompany.com ではなく group1 のように入力されている) 場合、この検査は失敗します。
このタスクについて
これらのステップは、アプリケーションのインストール、 および既存アプリケーションの変更の両方に共通です。 アプリケーションに RunAs ロールが含まれている場合、アプリケーションのインストール中、 およびアプリケーションの管理中に、「追加プロパティー」セクションのリンクとして、 「User RunAs roles」リンクが表示されます。
手順
- 「アプリケーション」>「エンタープライズ・アプリケーション」>「application_name」とクリックします。
- 「詳細プロパティー」の下の「ユーザー/グループへのセキュリティー・ロールのマッピング」をクリックします。 このアプリケーションに属するすべての RunAs ロールのリストが表示されます。 ロールにユーザーが既に割り当て済みの場合は、ここにユーザーが表示されます。
- ユーザーを割り当てるには、ロールを選択してください。 同じユーザーがすべてのロールに割り当てられている場合、同時に複数のロールを選択できます。
- 指定されたフィールドにユーザー名とパスワードを入力します。 入力するユーザー名は、 ショート・ネーム (推奨)、または絶対パス名 (ユーザー・レジストリーからユーザー/グループを取得したときに表示されます) のどちらでもかまいません。
- 「適用」をクリックします。 ユーザーは、アクティブなユーザー・レジストリーを使用して認証されます。 認証が正常に実行されたら、このユーザーまたはグループが、「セキュリティー・ロールをユーザー/グループにマップ」パネル内のロールにマップされていることを検証する検査が実行されます。 認証が失敗した場合、ユーザーおよびパスワードが正しいか、アクティブ・レジストリー構成が正しいかどうかを検証します。
- ユーザーを RunAs ロールから除去する場合は、ロールを選択して「除去」をクリックします。
タスクの結果
次のタスク
アプリケーションを管理中で、User RunAs ロールを変更した場合は、 変更が有効になるように、必ずアプリケーションを保存、停止してから再始動してください。 Java Platform, Enterprise Edition (Java EE) リソースにアクセスを試みて、 新規の変更が有効になっていることを確認します。