2.8. 集約セキュリティーレルム
集約レルムは複数のレルムを組み合わせます。最初のレルムは認証手順用で、他のレルムは認可手順のアイデンティティーをロードするためのものです。たとえば、これを使用して、クライアント証明書を介してユーザーを認証し、プロパティーまたは LDAP レルムからアイデンティティーを取得できます。
集約レルムの設定
XML
JSON
YAML
2.8.1. 名前リライター リンクのコピーリンクがクリップボードにコピーされました!
プリンシパル名の形式は、セキュリティーレルムの種類に応じて異なります。
- プロパティーとトークンレルムは、単純な文字列を返す場合があります
- 信頼と LDAP レルムは X.500 形式の識別名を返す場合があります
-
Kerberos レルムは
user@domain
形式の名前を返す場合があります
次のいずれかのトランスフォーマーを使用して集約レルムを使用する場合は、名前を共通形式に正規化する必要があります。
2.8.1.1. ケースプリンシパルトランスフォーマー リンクのコピーリンクがクリップボードにコピーされました!
case-principal-transformer
は、名前をすべて大文字またはすべて小文字に変換します。
XML
<aggregate-realm authentication-realm="trust" authorization-realms="properties"> <name-rewriter> <case-principal-transformer uppercase="false"/> </name-rewriter> </aggregate-realm>
<aggregate-realm authentication-realm="trust" authorization-realms="properties">
<name-rewriter>
<case-principal-transformer uppercase="false"/>
</name-rewriter>
</aggregate-realm>
JSON
YAML
2.8.1.2. コモンネームプリンシパルトランスフォーマー リンクのコピーリンクがクリップボードにコピーされました!
common-name-principal-transformer
は、LDAP または証明書によって使用される DN
から最初の CN
要素を抽出します。たとえば、CN=app1,CN=serviceA,OU=applications,DC=infinispan,DC=org
形式のプリンシパルが指定されている場合、次の設定では app1
がプリンシパルとして抽出されます。
XML
<aggregate-realm authentication-realm="trust" authorization-realms="properties"> <name-rewriter> <common-name-principal-transformer/> </name-rewriter> </aggregate-realm>
<aggregate-realm authentication-realm="trust" authorization-realms="properties">
<name-rewriter>
<common-name-principal-transformer/>
</name-rewriter>
</aggregate-realm>
JSON
YAML
2.8.1.3. Regex プリンシパルトランスフォーマー リンクのコピーリンクがクリップボードにコピーされました!
regex-principal-transformer は、
正規表現を使用して検索と置換を実行できます。この例では、user@domain.com
識別子からローカル部分を抽出する方法を示します。
XML
<aggregate-realm authentication-realm="trust" authorization-realms="properties"> <name-rewriter> <regex-principal-transformer pattern="([^@]+)@.*" replacement="$1" replace-all="false"/> </name-rewriter> </aggregate-realm>
<aggregate-realm authentication-realm="trust" authorization-realms="properties">
<name-rewriter>
<regex-principal-transformer pattern="([^@]+)@.*" replacement="$1" replace-all="false"/>
</name-rewriter>
</aggregate-realm>
JSON
YAML