12.3. 含まれるセキュリティーマッピングモジュール
| コード | クラス |
|---|---|
| PropertiesRoles | org.jboss.security.mapping.providers.role.PropertiesRolesMappingProvider |
| SimpleRoles | org.jboss.security.mapping.providers.role.SimpleRolesMappingProvider |
| DeploymentRoles | org.jboss.security.mapping.providers.DeploymentRolesMappingProvider |
| DatabaseRoles | org.jboss.security.mapping.providers.role.DatabaseRolesMappingProvider |
| LdapRoles | org.jboss.security.mapping.providers.role.LdapRolesMappingProvider |
| LdapAttributes | org.jboss.security.mapping.providers.attribute.LdapAttributeMappingProvider |
jboss-web.xml および jboss-app.xml デプロイメント記述子で可能なプリンシパルからロールへのマッピングを考慮するロールマッピングモジュール。
例12.1 例
<jboss-web>
...
<security-role>
<role-name>Support</role-name>
<principal-name>Mark</principal-name>
<principal-name>Tom</principal-name>
</security-role>
...
</jboss-web>
jboss-web.xml および jboss-app.xml デプロイメント記述子で指定できるプリンシパルからロールへのマッピングを考慮するロールツーロール (Role to Roles) マッピングモジュールです。この場合、principal-name は他のロールをマップするロールを示します。
例12.2 例
<jboss-web>
...
<security-role>
<role-name>Employee</role-name>
<principal-name>Support</principal-name>
<principal-name>Sales</principal-name>
</security-role>
...
</jboss-web>
オプションからロールを選び、渡されたグループの前に追加するロールマッピングプロバイダー。ロール (値) のカンマ区切りリストが含まれるロール名 (キー) のプロパティースタイルマッピングを取ります。
SimplePrincipal を取り、異なるプリンシパル名で SimplePrincipal を変換するプリンシパルマッピングプロバイダー。
データベースからロールを読み取る MappingProvider。
dsJndiName: ロールをユーザーにマップするために使用されるデータソースの JNDI 名。rolesQuery: このオプションは「select RoleName from Roles where User=?」と同等の準備済みステートメントです。「?」は現在のプリンシパル名に置き換えられます。suspendResume: ブール値 - ロールの検索の実行中に、現在のスレッドに関連するトランザクションを停止し、その後再開します。transactionManagerJndiName: トランザクションマネージャーの JNDI 名 (デフォルトは java:/TransactionManager)。
ロールを検索するため LDAP サーバーを使用してロールを割り当てるマッピングプロバイダー。
bindDN: ユーザーおよびロールクエリーのために LDAP サーバーに対してバインドするために使用される DN。この DN は baseCtxDN および rolesCtxDN の値では読み取りおよび検索パーミッションが必要です。bindCredential: bindDN のパスワード。これは、jaasSecurityDomain が指定された場合に暗号化できます。rolesCtxDN: ユーザーロールを検索するコンテキストの固定 DN。これは、実際のロールが存在する DN ではなく、ユーザーロールを含むオブジェクトが存在する DN です。たとえば、Microsoft Active Directory サーバーでは、これは、ユーザーアカウントが存在する DN です。roleAttributeID: 承認ロールの名前が含まれる LDAP 属性。roleAttributeIsDN:roleAttributeIDにロールオブジェクトの完全修飾 DN が含まれるかどうか。false の場合は、コンテキスト名のroleNameAttributeId属性の値からロール名が取得されます。Microsoft Active Directory などの特定のディレクトリースキーマでは、この属性をtrueに設定する必要があります。roleNameAttributeID: ロール名を含むroleCtxDNコンテキスト内の属性の名前。roleAttributeIsDNプロパティーがtrueに設定された場合、このプロパティーはロールオブジェクトの名前属性を見つけるために使用されます。parseRoleNameFromDN: クエリーによって返された DN に roleNameAttributeID が含まれるかどうかを示すフラグ。trueに設定された場合、DN は roleNameATtributeID に対してチェックされます。falseに設定された場合、DN は roleNameATtributeID に対してチェックされません。このフラグは LDAP クエリーのパフォーマンスを向上できます。roleFilter: 認証済みユーザーと関連付けられたロールを検索するために使用される検索フィルター。入力ユーザー名またはログインモジュールコールバックから取得されたuserDNが{0}式が使用されたフィルターに置換されます。認証済みuserDNは、{1}が使用されたフィルターに置換されます。入力ユーザー名に一致する検索フィルター例は、(member={0})です。認証済みuserDNに一致する他の例は(member={1})です。roleRecursion: ロール検索が一致するコンテキストで行われる再帰のレベル数。再帰を無効にするには、これを0に設定します。searchTimeLimit: ユーザー/ロール検索のタイムアウト (ミリ秒単位)。デフォルトは 10000 (10 秒) です。searchScope: 使用する検索範囲。
「username=role1,role2,...」という形式でプロパティーファイルからロールを読み取る MappingProvider。
rolesProperties: プロパティーでフォーマットされるファイル名。JBoss 変数の拡張は${jboss.variable}という形式で使用されます。
オプションマップからロールを読み取る簡単な MappingProvider。オプションの属性名はロールを割り当てるプリンシパルの名前で、 属性値はプリンシパルに割り当てるロール名のカンマ区切りリストです。
例12.3 例
<module-option name="JavaDuke" value="JBossAdmin,Admin"/> <module-option name="joe" value="Users"/>
モジュールをチェックし、マッピングコンテキストからプリンシパル名を見つけ、principalName + ".email" という名前のモジュールオプションから属性電子メールアドレスを作成し、それを指定のプリンシパルへマップします。
属性を LDAP からサブジェクトへマップします。オプションには、ご使用の LDAP JNDI プロバイダーがサポートするオプションがすべて含まれます。
例12.4 標準のプロパティー名の例
Context.INITIAL_CONTEXT_FACTORY = "java.naming.factory.initial" Context.SECURITY_PROTOCOL = "java.naming.security.protocol" Context.PROVIDER_URL = "java.naming.provider.url" Context.SECURITY_AUTHENTICATION = "java.naming.security.authentication"
bindDN: ユーザーおよびロールクエリーのために LDAP サーバーに対してバインドするために使用される DN。この DN は baseCtxDN および rolesCtxDN の値では読み取りおよび検索パーミッションが必要です。bindCredential: bindDN のパスワード。これは、jaasSecurityDomain が指定された場合に暗号化できます。baseCtxDN: ユーザー検索を開始するコンテキストの固定 DN。baseFilter: 認証するユーザーのコンテキストを見つけるために使用される検索フィルター。入力ユーザー名またはログインモジュールコールバックから取得されたuserDNが、{0}式が使用されたフィルターに置換されます。この置換の挙動は標準の__DirContext.search(Name, String, Object[], SearchControls cons)__メソッドからになります。一般的な検索フィルターの例は(uid={0})です。searchTimeLimit: ユーザー/ロール検索のタイムアウト (ミリ秒単位)。デフォルトは 10000 (10 秒) です。attributeList: ユーザーの属性のカンマ区切りリスト (例: mail,cn,sn,employeeType,employeeNumber)。jaasSecurityDomain:java.naming.security.principalの復号化に使用する JaasSecurityDomain。パスワードの暗号化された形式はJaasSecurityDomain#encrypt64(byte[])によって返されます。org.jboss.security.plugins.PBEUtilsを使用して暗号化された形式を生成することもできます。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.