統合セキュリティを使用するアプリが2つあります。1つは接続文字列で割り当てIntegrated Security = true、もう1つはを設定しますIntegrated Security = SSPI。
統合セキュリティのコンテキストSSPIとの違いは何ですか?true
統合セキュリティを使用するアプリが2つあります。1つは接続文字列で割り当てIntegrated Security = true、もう1つはを設定しますIntegrated Security = SSPI。
統合セキュリティのコンテキストSSPIとの違いは何ですか?true
マイクロソフトによると、それらは同じものです。
の場合、接続時
falseにユーザーIDとパスワードを指定します。true の場合、現在の Windows アカウントの資格情報が認証に使用されます。
認識される値はtrue、false、yes、noおよびsspi(強く推奨) で、これは と同等trueです。
:)
.Net Reflectorの実際のコードを確認するために使用すると、多くの質問に答えが得られますが、それらは同じです。SqlConnectiontruesspi
internal class DbConnectionOptions
...
internal bool ConvertValueToIntegratedSecurityInternal(string stringValue)
{
if ((CompareInsensitiveInvariant(stringValue, "sspi") || CompareInsensitiveInvariant(stringValue, "true")) || CompareInsensitiveInvariant(stringValue, "yes"))
{
return true;
}
}
...
EDIT 20.02.2018 .Net Core では、github でオープン ソースを確認できます。ConvertValueToIntegratedSecurityInternal メソッドを検索します。
統合セキュリティ=False:ユーザーIDとパスワードが接続で指定されています。統合セキュリティ=true:現在のWindowsアカウントの資格情報が認証に使用されます。
統合セキュリティ=SSPI:これはtrueと同等です。
接続文字列からユーザー名とパスワードの属性を回避し、統合セキュリティを使用できます
始めましょうIntegrated Security = false
false ユーザー ID とパスワードは、接続文字列で指定されます。
true 認証には Windows アカウントの資格情報が使用されます。
認識される値trueはfalse、、、、、およびyesです。noSSPI
User IDとPasswordが指定され、統合セキュリティが に設定されている場合true、User IDとPasswordは無視され、統合セキュリティが使用されます。
True は、.NET SqlClient ライブラリを使用している場合にのみ有効です。OLEDB を使用する場合は無効です。.net SqlClient ライブラリまたは OLEDB を使用している場合、どちらでも SSPI は使用できません。