WebLogic Serverには、WebLogicドメインの作成の一環として、ユーザー、グループ、グローバル・ロールおよびポリシーのセットを確立する機能があります。 ユーザーおよびグループは、組込みLDAPサーバー(DefaultAuthenticatorなど)の一部になり、Securityセクションのtopologyの下に指定されます。 WebLogicグローバル・ロールは、WebLogicロール・マッパー(たとえば、XACMLRoleMapper)の一部になり、WLSRolesセクションのdomainInfoの下に指定されます。 WebLogicポリシーは、WebLogic認可プロバイダの一部(つまり、XACMLAuthorizer)になります。
このモデルでは、WebLogic組込みLDAPサーバーにロードされる一連のユーザーおよびグループ(たとえば、DefaultAuthenticator)を定義できます。 新しいグループを指定でき、ユーザーは、WebLogic Adminグローバル・ロールにデフォルト設定されるAdministratorsグループなどの新規グループまたは既存のグループのメンバーとして追加できます。 ユーザーおよびグループの詳細は、「既知の制限事項」を参照してください。
プレースホルダーを使用してユーザー・パスワードを指定することも、「暗号化ツール」を使用して暗号化することもできます。 追加グループAppMonitorsを追加するSecurityセクションの例を、2人の新規ユーザーを追加し、ユーザーをグループに配置します。 DefaultAuthenticatorに定義されたユーザー属性を追加できます。 これは、Userセクションの下のモデル内の個別のフォルダUserAttributeの下に配置される限られた属性セットです。
topology:
Security:
Group:
AppMonitors:
Description: Application Monitors
User:
john:
Password: welcome1
GroupMemberOf: [ AppMonitors, Administrators ]
joe:
Password: welcome1
GroupMemberOf: [ AppMonitors ]
UserAttribute:
mail: joe@mycompany.com
モデルでは、新しいロールの定義に加えて、既知のWebLogicグローバル・ロール(Admin, Deployer, Monitorなど)を拡張できるWebLogicロールを定義できます。 既知のWebLogicロールを更新する場合、UpdateModeを{ append | prepend | replace }として指定でき、指定しない場合、デフォルトはreplaceです。 また、既知のロールを更新する場合、指定されたExpressionは、デフォルトの式を持つ論理ORになります。 ロールのExpression値は、WebLogicセキュリティ・ロール・マッピング・プロバイダにWebLogic RoleEditorMBeanを使用する場合と同じです。
たとえば、次のWLSRolesセクションは、既知のAdmin、DeployerおよびMonitorロールを更新し、ロール名としてTesterを持つ新しいグローバル・ロールを追加します:
domainInfo:
WLSRoles:
Admin:
UpdateMode: append
Expression: "?weblogic.entitlement.rules.IDCSAppRoleName(AppAdmin,@@PROP:AppName@@)"
Deployer:
UpdateMode: replace
Expression: "?weblogic.entitlement.rules.AdministrativeGroup(@@PROP:Deployers@@)"
Monitor:
UpdateMode: prepend
Expression: "?weblogic.entitlement.rules.AdministrativeGroup(AppMonitors)"
Tester:
Expression: "?weblogic.entitlement.rules.IDCSAppRoleName(AppTester,@@PROP:AppName@@)"
Adminロールには式がデフォルト式に追加され、Deployerロール式がデフォルトに置換され、Monitorロール式がデフォルト式の前に付加され、Testerは指定された式の新しいロールになります。
また、Expression値では、前述の例に示すように、「ツールの作成」の実行時に指定された変数のプレースホルダー構文を使用できます。
モデルでは、WebLogicリソースに対する追加の認可ポリシーを定義できます。 現在、WDTでは、即時利用可能なデフォルトの認可ポリシーの編集はサポートされていません。
特定のリソースに対して新しいポリシーを定義するには、例に示すように、ポリシーの論理名を構成し、ResourceIDおよびPolicy式フィールドを指定する必要があります。 複数のモデル・ファイルを使用する場合は、1つのファイルで以前のモデルで定義されたポリシーをオーバーライドする必要があるため、この名前は重要です。
domainInfo:
WLSPolicies:
MyQueueSendPolicy:
ResourceID: 'type=<jms>, application=MyJmsModule, destinationType=queue, resource=MyQueue, action=send'
Policy: 'Grp(Administrators)|Grp(Operators)|Grp(Monitors)'
ポリシーの正しいResourceIDおよびPolicyモデル値を決定するには、WebLogic Remote Consoleとそのセキュリティ・データ・ツリーを使用して目的のポリシーを作成し、「詳細」タブを使用してResource IdおよびPolicyフィールドの値を表示します。 WebLogic Remote Consoleのこれらのフィールドの値は、モデルのResourceID属性およびPolicy属性に直接コピーできます。 これらのフィールドの値は、YAMLモデルで引用符で囲む必要があることを忘れないでください。
XACMLRoleMapperなど)に対してのみ更新されます。