アノテーション型 LdapIdentityStoreDefinition


  • @RetentionSE(RUNTIMESE)
    @TargetSE(TYPESE)
    public @interface LdapIdentityStoreDefinition
    コンテナーの提供する IdentityStore を定義するために使用されるアノテーション。これは、呼び出し元の資格情報と ID 属性(まとめて呼び出し元の ID)を LDAP ストアに格納し、その実装を有効な CDI Bean として利用できるようにします。

    コンテナーが提供する IdentityStore は、UsernamePasswordCredential の検証をサポートする必要があり、他の資格型の検証をサポートする場合があります。

    • 要素の詳細

      • url

        StringSE url
        LDAP サーバーにアクセスできる URL。

        E.g .: ldap://localhost:33389

        戻り値:
        LDAP サーバーにアクセスできる URL
        デフォルト:
        ""
      • bindDn

        StringSE bindDn
        LDAP への初期接続を確立し、検索とルックアップを実行するために使用されるアプリケーションまたは管理ユーザーの識別名。

        この値は、発信者またはグループの検索が行われる場合に必要です。ストアが直接バインディングを使用して発信者を認証するためにのみ使用される場合、この値は必要ありません (callerBaseDn を参照)。

        このユーザーには、LDAP での個人やグループの検索権限が必要です。

        E.g .: uid=ldap,ou=apps,dc=eclipse,dc=net

        戻り値:
        アプリケーションユーザーの識別名。
        デフォルト:
        ""
      • bindDnPassword

        StringSE bindDnPassword
        bindDn メンバーによって定義されたアプリケーション / 管理者ユーザーのパスワード。メンバー bindDn が入力されている場合にのみ使用されます。
        戻り値:
        アプリケーションユーザーのパスワード。
        デフォルト:
        ""
      • callerBaseDn

        StringSE callerBaseDn
        LDAP ストア内の呼び出し元の基本識別名( "ou=caller,dc=eclipse,dc=net" など)。

        このメンバー値が指定され、callerSearchBase が指定されていない場合は、直接バインディングが試行されます。

        ランタイムが、呼び出し元の完全な DN を作成するためにベース DN と連結するために必要な「リーフ」 RDN を作成できるように、この属性とともに callerNameAttribute を指定する必要があります。

        戻り値:
        発信者の基本識別名。
        デフォルト:
        ""
      • callerNameAttribute

        StringSE callerNameAttribute
        個人オブジェクトの発信者名を含む属性の名前(例: "uid" )。

        この属性は、callerBaseDn とともに、直接バインド用の発信者 DN を構築するために使用されます。また、検索を使用して発信者オブジェクトを検索するときに、発信者の名前を取得するためにも使用されます。

        この属性の値は、資格情報の検証が成功した場合の呼び出し元のプリンシパル名として返されます。

        以下に、ldif 形式の例を示します。

         
         dn: uid=peter,ou=caller,dc=eclipse,dc=net
         objectclass: top
         objectclass: uidObject
         objectclass: person
         uid: peter
         cn: Peter Smith
         sn: Peter
         userPassword: secret1
         
         
        戻り値:
        発信者名を表す属性の名前
        デフォルト:
        "uid"
      • callerSearchBase

        StringSE callerSearchBase
        発信者を検索するための検索ベース( "ou=caller,dc=eclipse,dc=net" など)。

        構成されている場合は、callerBaseDn を上書きして、直接バインディングの代わりに発信者検索を使用するようにします。bindDn メンバーを入力する必要があります。

        戻り値:
        LDAP ツリーで呼び出し元を検索するためのベース DN。
        デフォルト:
        ""
      • callerSearchFilter

        StringSE callerSearchFilter
        callerSearchBase が設定されている場合に発信者を検索するための検索フィルター。検索は、callerSearchScope で指定された範囲で、callerSearchBase DN から実行されます。
        戻り値:
        式を検索して発信者を見つけます。
        デフォルト:
        ""
      • callerSearchScope

        LdapIdentityStoreDefinition.LdapSearchScope callerSearchScope
        呼び出し元検索の検索範囲: LDAP ツリーでの検索の深さを決定します。
        戻り値:
        検索範囲
        デフォルト:
        jakarta.security.enterprise.identitystore.LdapIdentityStoreDefinition.LdapSearchScope.SUBTREE
      • callerSearchScopeExpression

        StringSE callerSearchScopeExpression
        callerSearchScope を Jakarta Expression Language 式として指定できるようにします。設定すると、callerSearchScope で設定された値が上書きされます。
        戻り値:
        callerSearchScope Jakarta Expression Language 表現
        デフォルト:
        ""
      • groupSearchBase

        StringSE groupSearchBase
        グループを検索するための検索ベース( "ou=group,dc=eclipse,dc=net" など)。

        グループ検索を実行するストアにのみ必要です。bindDn メンバーを入力する必要があります。

        戻り値:
        LDAP ツリーでグループを検索するためのベース DN。
        デフォルト:
        ""
      • groupSearchFilter

        StringSE groupSearchFilter
        groupSearchBase が設定されている場合にグループを検索するための検索フィルター。検索は、groupSearchScope で指定された範囲で、groupSearchBase DN から開始して実行されます。
        戻り値:
        式を検索してグループを見つけます。
        デフォルト:
        ""
      • groupSearchScope

        LdapIdentityStoreDefinition.LdapSearchScope groupSearchScope
        グループ検索の検索範囲は、LDAP ツリーでの検索の深さを決定します。
        戻り値:
        検索範囲
        デフォルト:
        jakarta.security.enterprise.identitystore.LdapIdentityStoreDefinition.LdapSearchScope.SUBTREE
      • groupSearchScopeExpression

        StringSE groupSearchScopeExpression
        groupSearchScope を Jakarta Expression Language 式として指定できるようにします。設定すると、groupSearchScope で設定された値が上書きされます。
        戻り値:
        groupSearchScope Jakarta Expression Language 表現
        デフォルト:
        ""
      • groupNameAttribute

        StringSE groupNameAttribute
        グループ名を表すグループオブジェクトの属性の名前 (例: "cn" )
        戻り値:
        グループ名を表す属性の名前
        デフォルト:
        "cn"
      • groupMemberAttribute

        StringSE groupMemberAttribute
        グループのメンバーを識別するグループオブジェクト内の属性の名前(例: "member" )。

        この属性の値は、呼び出し元の完全な DN である必要があります。以下に、ldif 形式のエントリの例を示します。

         
         dn: cn=foo,ou=group,dc=eclipse,dc=net
         objectclass: top
         objectclass: groupOfNames
         cn: foo
         member: uid=pete,ou=caller,dc=eclipse,dc=net
         member: uid=john,ou=caller,dc=eclipse,dc=net
         
         
        戻り値:
        グループメンバーの属性
        デフォルト:
        " メンバー "
      • groupMemberOfAttribute

        StringSE groupMemberOfAttribute
        発信者が属するグループを識別する個人オブジェクトの属性の名前(例: "memberOf" )。

        この属性は、a) グループ検索が構成されていない (つまり、groupSearchBase と groupSearchFilter が構成されていない) 場合にのみ使用されます。また、b) 認証情報検証フェーズ中に、検証とグループ検索の両方を実行する ID ストアによってグループが返されているか、IdentityStore.getCallerGroups(CredentialValidationResult) メソッドに渡される CredentialValidationResult で DN が使用可能であるため、呼び出し元の DN が使用可能です。

        この属性の値は、グループの完全な DN である必要があります。以下に、ldif 形式のエントリの例を示します。

         
         dn: uid=peter,ou=caller,dc=eclipse,dc=net
         objectclass: top
         objectclass: uidObject
         objectclass: person
         uid: peter
         cn: Peter Smith
         memberOf: cn=foo,ou=group,dc=eclipse,dc=net
         memberOf: cn=bar,ou=group,dc=eclipse,dc=net
         
         
        戻り値:
        グループメンバーシップの属性
        デフォルト:
        "memberOf"
      • readTimeout

        int readTimeout
        LDAP サーバーが結果を返すのを待つときに使用するタイムアウト値を設定します。これは、基礎となるソケット接続の接続タイムアウトとは異なることに注意してください。

        デフォルト値の 0 は、永久に待機することを意味します(接続自体がタイムアウトしないと想定)。

        戻り値:
        readTimeout 値。
        デフォルト:
        0
      • readTimeoutExpression

        StringSE readTimeoutExpression
        readTimeout を Jakarta Expression Language 式として指定できるようにします。設定すると、readTimeout で設定された値が上書きされます。
        戻り値:
        readTimeout Jakarta Expression Language 表現
        デフォルト:
        ""
      • maxResults

        int maxResults
        検索にレスポンスしてサーバーが返す結果(オブジェクト)の最大数を設定します。

        デフォルト値は 1000 に設定されています。これは、ほとんどの LDAP サーバーが 1 回のレスポンスで返す結果の最大数に対応します。ほとんどの LDAP サーバーは、1000 を超える結果セットを介したページングをサポートしていますが、通常の検証およびグループルックアップのユースケースでは、そうする必要はほとんどありません。組み込みの LDAP IdentityStore の実装は、より大きな結果セットを介したページングをサポートする場合がありますが、必須ではありません。

        戻り値:
        LDAP サーバーが返す必要のある結果の最大数。
        デフォルト:
        1000
      • maxResultsExpression

        StringSE maxResultsExpression
        maxResults を Jakarta Expression Language 式として指定できるようにします。設定すると、maxResults で設定された値が上書きされます。
        戻り値:
        maxResults Jakarta Expression Language 表現
        デフォルト:
        ""
      • priority

        int priority
        複数の IdentityStores が見つかった場合の順序を決定します。
        戻り値:
        優先順位。
        デフォルト:
        80
      • priorityExpression

        StringSE priorityExpression
        優先度を Jakarta Expression Language 式として指定できるようにします。設定されている場合、優先度で設定された値を上書きします。
        戻り値:
        優先 Jakarta Expression Language 式
        デフォルト:
        ""
      • useFor

        IdentityStore.ValidationType[] useFor
        ID ストアの用途を決定します
        戻り値:
        ID ストアが使用される型
        デフォルト:
        {jakarta.security.enterprise.identitystore.IdentityStore.ValidationType.VALIDATE, jakarta.security.enterprise.identitystore.IdentityStore.ValidationType.PROVIDE_GROUPS}
      • useForExpression

        StringSE useForExpression
        useFor を Jakarta Expression Language 式として指定できるようにします。設定すると、useFor で設定された値が上書きされます。
        戻り値:
        useFor Jakarta Expression Language 表現
        デフォルト:
        ""