2

現在のステータス

  • SSO (シングルサインオン) に CAS サーバーを使用しています。
  • Ozone Widget Framework を CAS クライアントとして使用しています。
  • Ozone Widget Framework での検証に使用される LDAP サーバーをセットアップしました
  • CAS サーバーでは、2 つの LDAP と Active Directory サーバーで認証できます。
  • Spring バージョン 3.0.5 と Spring Security バージョン 3.0.2 を使用しています。
  • 問題

  • Spring Security の Active Directory Server で LDAP サーバーと同様の機能を実行できません。
  • Active Directory サーバーは完全に事前構成されています。
  • 一度に複数の LDAP/AD サービスを使用できません。
  • Google で「 LDAP/AD グループを Spring Security ロールにマッピングする」を検索しましたが、すべての結果が Java クラスのプログラミングにつながります
  • カスタム コードがないと、ロール マッピングの有効な方法が見つかりません。
  • OWF サーバーに関しては
    、必要な機能 (ロールにマップされた LDAP/AD グループ
    ) を理論的に提供するマッピング クラス 'MapBaseAttributes2GrantedAuthoritiesMapper' と 'SimpleAttributes2GrantedAuthoritiesMapper' がいくつか見つかりました。唯一の問題は、両方のクラスがインターフェース 'Attributes2GrantedAuthoritiesMapper' と 'LdapUserDetailsS​​ervice' を実装していることです。 '
    マッパー インターフェイス タイプ 'UserDetailsContextMapper' が必要です。
  • 「CAS 認証プロバイダー」(「ProviderManager」または「authentication-provider」タグ (調査結果) を使用) を使用する場合、「認証マネージャー」は次の「CAS 認証プロバイダー」に永続化されません。
  • 例(興味深い検索結果)

  • opennms
  • <beans:bean id="UserGroupLdapAuthoritiesPopulator" class="org.opennms.web.springframework.security.UserGroupLdapAuthoritiesPopulator">
            <beans:constructor-arg ref="contextSource"/>
            <beans:constructor-arg value="OU=SomeDept,OU=SomeOrgUnit"/>
            <beans:property name="searchSubtree" value="true" />
            <beans:property name="groupRoleAttribute" value="cn" />
            <beans:property name="groupSearchFilter" value="member={0}" />
            <beans:property name="groupToRoleMap">
              <beans:map>
                <beans:entry>
                  <beans:key><beans:value>myusersgroup</beans:value></beans:key>
                  <beans:list>
                    <beans:value>ROLE_USER</beans:value>
                  </beans:list>
                </beans:entry>
                <beans:entry>
                  <beans:key><beans:value>myadminsgroup</beans:value></beans:key>
                  <beans:list>
                    <beans:value>ROLE_ADMIN</beans:value>
                    <beans:value>ROLE_USER</beans:value>
                  </beans:list>
                </beans:entry>
              </beans:map>
            </beans:property>
          </beans:bean>
    

  • Active Directory への認証時の役割の処理
  • リクエスト

    Spring Security のデフォルト クラスを使用して、以下を構成したいと考えています。

  • XML 構成のみを使用して、LDAP/AD グループを Spring Security ロールにマップします (注: Java クラスなどのカスタム コードは使用しません)。
  • 上記が可能かどうかを検証します(疑いの余地のない証拠で)。
  • 最初のリクエストを達成するために、「MapBaseAttributes2GrantedAuthoritiesMapper」または「SimpleAttributes2GrantedAuthoritiesMapper」を公式の Spring LDAP/AD ライブラリで構成できるかどうかを知りたいです。
  • 最終的に 2 つ以上の CAS 認証プロバイダーを使用する
  • 4

    0 に答える 0