1

ユーザーが特定の Active Directory グループに属している場合にログインできるようにしたいと考えています。ユーザーの CN または DN はありません。証明書だけです。この証明書のみを使用して Active Directory ユーザーを取得することは可能ですか?

「userCertificate」属性を使用して、ユーザーの証明書の LDAP クエリを実行できることを認識しています。ただし、この属性を使用してユーザーを照会したいと思います。次のようなもの:

    (&(objectClass=user)(userCertificate=<user's certificate>))

これは機能していないようです。

別のアプローチとして、探しているグループを取得してから、グループのすべてのメンバーを取得してループすることもできます。提供された証明書を各 AD ユーザーの証明書と比較する必要があります。このアプローチは、多数のユーザーを持つグループや多数の証明書を持つユーザーにとってあまり効率的ではないため、理想的とは言えません。

どんな提案でも大歓迎です。

4

1 に答える 1

0

これは可能であることがわかりましたが、遅いです。構文は次のとおりです。

(&(objectClass=user)(userCertificate;binary=\12\34\56\AB\CD\..))

証明書は 16 進数でフォーマットする必要があり、エスケープする必要があります。

参照: http://comments.gmane.org/gmane.network.openldap.general/46598

于 2013-10-30T22:57:36.113 に答える