2009-08-27 12 views
1

SQL Server経由でADを照会できません。 Active Directoryを参照しているリンクサーバーをSQL(下記参照)とSSMS GUIを介して追加しますが、セキュリティ上の問題を把握することはできません。SQL Server 2008からActive Directoryをクエリする

EXEC sp_addlinkedserver @server = 'ADSI', @srvproduct = 'Active Directory Services 2.5', @provider = 'ADSDSOObject', @datasrc = 'adsdatasource' 

    EXEC sp_addlinkedsrvlogin @rmtsrvname = 'ADSI', @useself = 'False', @locallogin = 'sa', @rmtuser = 'mylogin', @rmtpassword = 'mypassword' 

したがって、このクエリは「...The provider indicates that the user did not have the permission to perform the operation.

SELECT * FROM OPENQUERY(ADSI, 'SELECT givenName, sn FROM ''LDAP://dc=mydomain,dc=com'' WHERE objectClass=''Person'' AND objectClass=''User''') 

を言って失敗した私はおそらく、@rmtuserを@localloginを持っている、とオフ@rmtpasswordと各パラメータが何を意味するのか混乱していて、何を正しい引数すべきである。バックスラッシュやエアロベースを含む1つの文字列に結合されたユーザーIDとパスワードを含めるべきかどうか、あるいは何を持っているか。

提案がありますか?どのSQL Serverデータベースでも問題ありませんが、IntellisenseのためにSS 08がより有益であることだけです。

答えて

2

試行錯誤の結果、@rmtuserパラメータにはドメインのバックスラッシュのユーザー名が必要であることがわかりました。それは今のところ問い合わせ可能と思われるようです。

+0

私のdomain \ userは小文字で作業する必要がありました。大文字は行っていませんでした... – geekinit

関連する問題