1

SSMSで次のコードを新しいコンソールにドロップしてADパスワード認証を使用してAzure SQLデータベースに接続できますアプリケーション:しかしADSでADパスワードを使用してAzure SQLに接続すると、「続行するにはユーザーインターフェイスが必要です」というメッセージが表示されます。

using (SqlConnection connection = new SqlConnection("Data Source=my-server.database.windows.net;Initial Catalog=MyDatabase;User [email protected];Password=mypassword;Connect Timeout=30;Authentication=\"Active Directory Password\"")) 
{ 
    try 
    { 
     connection.Open(); 
     using (SqlCommand cmd = new SqlCommand(@"SELECT SUSER_SNAME()", connection)) 
     { 
      Console.WriteLine("You have successfully logged on as: " + (string)cmd.ExecuteScalar()); 
     } 
    } 
    catch (Exception ex) 
    { 
     Console.WriteLine(ex.Message); 
    } 
} 

、これと同じ新しいASP.NET MVCのコードやAPIを使用して、またはモバイルアプリのWebアプリケーションがconnection.Open()で次のAdalExceptionが得られます。

を継続するためのユーザインタフェースが必要このメッセージに System.Data.SqlClient.SqlExceptionに包まれて

...:

は、Active Directory(認証= ActiveDirectoryPassword)でユーザー[email protected]認証に失敗しました。
エラーコード0xCAA10001;状態10
続行するには、ユーザーインターフェイスが必要です。

私のApplication_Start、Startup.csにその接続コードを使用して試みたが、運と制御方法できました。

アイデア? SQL Database AAD Authentication articleが要件を4.6以上に指定しているため、プロジェクトのターゲットフレームワークを.NET Framework 4.6.1に変更しました。

答えて

0

彼らは 1.ユーザ/パスワードを 2.統合認証を使用してSQL DBへアズールADの認証で認証する方法を3つの例を示し がhttps://github.com/Microsoft/sql-server-samples/tree/master/samples/features/security/azure-active-directory-auth

参照GitHubのデモのコードサンプルをご覧下さい 3. JSON証明書を使用してWebトークン(JWT)

おかげで、 Mirek

+0

私は、ここに私が上記のコードスニペットを持っています。コードサンプルは別のコンソールアプリケーションで動作します。私の質問は、ASP.NETアプリケーションで動作しない理由です。 – Seafish

+0

このアイテムのAzureカスタマーケースを開封してください。並行して、[email protected]エイリアスに連絡して問題を説明してください。ありがとう、ミレック –

0

は、あなたがこのアイテムのAzureの顧客のケースを開けていただけますか? また、[email protected]エイリアスに連絡して問題を説明してください。 ありがとう、 Mirek

関連する問題