5

私は以下を達成したいと思います:

運用構成では Azure でのSQL 認証を避け、 Active Directory 統合認証を使用する

Azure の接続文字列セクションに移動し、次の接続文字列をコピーすると:

Server=[my server name];Initial Catalog=[my db name];Persist Security Info=False;User ID=[my user name];MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Authentication="Active Directory Integrated";

それを使用してみてください。次の例外が発生します。

例外メッセージ: 'User ID'、'UID'、'Password' または 'PWD' 接続文字列キーワードで 'Authentication=Active Directory Integrated' を使用できません。例外スタックトレース: System.Data.SqlClient.SqlConnectionString..ctor(String でconnectionString) で System.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions 前) で System.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey キー、DbConnectionPoolGroupOptions プールオプション、DbConnectionOptions& userConnectionOptions) で System.Data.SqlClient.SqlConnection.ConnectionString_Set( DbConnectionPoolKey キー)

データベース管理者/インフラストラクチャの経験が非常に限られているため、Azure で取得した接続文字列に「ユーザー ID」が明示的にリストされている場合、「ユーザー ID」がすべてを壊す理由がわかりません。

注意すべき点がいくつかあります。

  • SQL 認証が機能する
  • Active Directory 管理者が設定されています
4

2 に答える 2

4

C# では、接続文字列は次のようになります。

string ConnectionString =
@"Data Source=n9lxnyuzhv.database.windows.net; Authentication=Active Directory Integrated; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

詳細については、このドキュメントとこのドキュメントをお読みください。

于 2018-04-11T13:33:10.747 に答える