Azure AD身份验证MVC直通模拟Azure SQL

时间:2016-02-20 12:48:15

标签: sql-server asp.net-mvc azure azure-active-directory

我有什么:

  • MVC和web api通过实体框架访问azure sql数据库(在这种情况下不要认为EF很重要)。
  • MVC应用的Azure AD登录

我想做什么:

  • 使用登录的Azure AD用户连接到azure sql数据库(模拟用户)。

现在我知道人们会告诉我不要这样做是因为连接池等等。但这是针对一家小公司而且有问题的网络应用程序在任何给定时间最多可能有2个并发用户,所以我并不担心这些事情。 DBA希望使用单独的登录到sql server,这样他就可以轻松设置行级安全性。也许有一种不同的方式来设置,但我想尽可能让它工作。

所以有人知道怎么做这个吗?

我尝试使用以下连接字符串:

Data Source=tcp:mydbinstance.database.windows.net,1433;Initial Catalog=mydatabase;Authentication=Active Directory Integrated;MultipleActiveResultSets=True;

这会引发错误:

Failed to authenticate the user NT Authority\Anonymous Logon in Active Directory (Authentication=ActiveDirectoryIntegrated).
Error code 0x4BC; state 10
The format of the specified domain name is invalid.

我已经搜索过但无法找到有关该消息的任何内容,它可以给我任何答案。正如您所料,这似乎不是人们经常尝试做的事情。

1 个答案:

答案 0 :(得分:-1)

我认为这不会起作用。 Sql Azure使用集成 SQL安全性,而您的MVC应用程序使用基于声明的。应该工作的一件事是将MVC站点托管在一个连接到您的域的天蓝色虚拟机上。