SharePoint 2010 BCSは、関連する文字列でユーザー名/パスワードを無視します

StackOverflow https://stackoverflow.com/questions/2670764

  •  28-09-2019
  •  | 
  •  

質問

これが私のシナリオです。

1つのサーバーでSharePoint 2010が実行されており、SQLサーバーが別のサーバーで実行されています。両方のマシンは同じドメインにありますが、関係するログインは各マシンにローカルです。 SharePointは、NT Authority Network Serviceとして実行されています。

削除SQLサーバーからデータを取得するBCSを作成しました。接続文字列は次のように表示されます。 Data Source={0}; Initial Catalog={1};User Id={2}; Password={3}; Integrated Security=SSPI. 。すべての{x}が交換されると、接続文字列が適切に形成されていることを確認しました。

これは、同じマシンで実行されているブラウザ(SharePointをホストするマシン、つまり)からSharePointサイトにアクセスすると、正常に機能します。別のマシンのブラウザから接続すると、失敗します。

SQL Serverでプロファイラーを平手打ちすると、SharePointに「ローカル」にアクセスされると、ユーザーがクエリを作成することがログインアカウントであることが明らかになります。リモートで実行されると、ユーザーは「匿名」です。アカウントの許可により、前者は成功しますが、後者は失敗します。実際には、接続文字列に提供されるユーザーが実際に提供されている場合はありません。

この答え 問題はおそらく接続プーリングに関連していることを示していますが、問題の解決に役立ちませんでした。

一言で言えば、このBCSに実際に接続文字列ユーザー名/パスワードペアを尊重するようにするにはどうすればよいですか?または、それに失敗すると、どうすれば同等の目的を達成できますか?サーバーのセットアップ(1つのSharePoint、別のSQLサーバー)は交渉できません。不幸にも。

役に立ちましたか?

解決

セキュリティを統合できます xor SQL認証を使用できます。しかし、あなたはそれらを混ぜることはできません。指定したら Integrated Security=SSPI, 、統合されたセキュリティが代わりに使用されるため、ユーザー名とパスワードは無視されます。 SQL認証ユーザーとパスワードを指定する場合は、「統合セキュリティ」パートを削除します。

統合された認証接続と同様に、リモートサーバーは制約付き委任制限に分類され、匿名として認証されます。 NTのなりすましの資格情報が次のホップ(SQLサーバー)に流れるようにするには、制約された委任を有効にする必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top