残念ながら、この特定のシナリオでコードを変更することはできません。コードは、この 1 つのインストールを除いてどこでも機能します。構成/権限/信頼の問題が疑われます。これを修正するために環境を変更する方法についてアドバイスを得たいと思っています。
この特定の場所で、Search()
method onを実行した後、何らかの理由で含まれていないLdapConnection
を取得します。には他のメッセージ (具体的にはおよび)が含まれていることに注意してください。AD を手動で調べると、理論的には正しい応答があるはずであることがわかります。LdapSearchQueue
LdapSearchResult
LdapSearchQueue
LdapSearchResultReference
LdapResponse
LdapSearchResult
明らかにそれはであるとentry
なりnull
ます。
var filter = $"(&(objectClass=User)(sAMAccountName={<user_name>}))";
var searchBase = "DC=<domain_name>,DC=com";
var search = conn.Search(searchBase, LdapConnection.SCOPE_SUB, filter, null, false, null, null);
LdapMessage message;
LdapEntry entry = null;
while ((message = search.getResponse()) != null)
{
if (!(message is LdapSearchResult searchResultMessage))
{
continue;
}
entry = searchResultMessage.Entry;
}
どんなアドバイスでも大歓迎です