私は、次を使用して、webアプリケーションに取り組んでいます:Apacheの史郎LDAPの設定(2ステップ認証)
- アパッチ史郎1.2.4
- Tomcatの8
- のJava 8
私はLDAPレルム経由でユーザーを認証しようとしています。 OU、CN = {私の識別名}:
- BaseND:OU =学生、OU =ユーザー、O =データ
- ユーザーDN/BINDDN は、私は次の値を使用してJXplorerのでログインをテストしました=学生、OU =ユーザー、データ
- JXplorerのも、私は私の問題に今
をインポートした証明書を持っている=○:
cn
ではなく、uid
に基づいてユーザーを認証する必要があります。 しかし、これは動作しません。私の会社では、LDAP管理者によって提案された
ワークフロー:私は、(私の知る限り理解されるような)LDAP-Serverに接続する必要があり、システムの利用者を持つ
はuid
を与えられたとに基づいてユーザを検索しますそのユーザーのcn
を返します。
2番目のステップでは、彼のcn
をJXplorerのdone(成功)と同様に認証することができます。
マイshiro.ini設定は私のテストLDAP(私は今に対して認証しようとしていない1)
ldapRealm = org.apache.shiro.realm.ldap.JndiLdapRealm
ldapRealm.userDnTemplate = cn={0},ou=People,dc=maxcrc,dc=com
ldapRealm.contextFactory.url = ldap://localhost:389
のために次のようになり、私が今直面しています問題は、私です上記のワークフローを数学的に計算する方法で、shiro.iniファイルを構成する方法に関する情報を見つけることができません。
質問#1
は、私が(どのように私はそれを設定します)標準org.apache.shiro.realm.ldap.JndiLdapRealm
を使用することはできますか?特に証明書の統合のために私は適切な何かを見つけることができませんでした。
質問#2
私は、この「2段階認証」用のカスタムJndiLdapRealmを作成する必要がありますか、どのようなレルムようになりますか?