小编Sve*_*ven的帖子

Azure SQL Server,是否可以禁用服务器管理员(创建后)?

案件

我想使用 Azure SQL Server,正如如何保护 Azure SQL Server最佳实践中所述,最好使用 AAD 帐户而不是 SQL 帐户来访问您的服务器/数据库。

我在 Microsoft 和博客的文档站点上阅读了几篇文章,但我找不到在您拥有 Azure SQL Server 和创建的 AAD SQL 管理员并将其附加到 Azure SQL Server 后,可以禁用/删除服务器管理员帐户.

我知道创建 Azure SQL 时服务器管理员登录名和密码是必需的,但我希望可以在创建服务器和 AAD SQL 管理员后删除。

我为什么要这个?

  • 有足够多的公司必须规定(从本地继承)帐户必须由集中式身份存储(例如 AAD)控制。
  • 必须完成密码轮换,当您拥有集中式标识存储时,这要容易得多,而不是您必须为许多 Azure SQL Server 进行轮换。

是否可以禁用 SQL Server Admin(sql 帐户)?

azure-sql-database azure-sql-server

6
推荐指数
2
解决办法
2046
查看次数

使用应用服务和 Azure SQL 的用户分配身份是否有效?

我正在尝试让应用服务与 Azure Sql 数据库连接。我可以用相同的代码 git 很好地使用系统分配的身份,但我更喜欢使用用户分配的身份 (UAI),但我无法让它工作。

我做的步骤:

  1. 通过门户创建了一个 UAI,UAI 的名称为“uai-dev-appname-001”
  2. 在 Azure 应用服务的标识选项卡中,我选择了“用户分配的标识”并选择了在上一步中创建的 UAI。
  3. 运行以下 SQL CMD
CREATE USER [uai-dev-appname-001] FROM EXTERNAL PROVIDER
ALTER ROLE db_datareader ADD MEMBER [uai-dev-appname-001]
ALTER ROLE db_datawriter ADD MEMBER [uai-dev-appname-001]
Run Code Online (Sandbox Code Playgroud)
  1. 将 ASP.NET 中的 Connectionstring 设置为:

    数据源=sqlsrv-name-dev-001.database.windows.net; 初始目录=sqldb-name-dev-001;

  2. 在我的 ASP.NET Core 中使用以下代码:
SqlConnection connection = new SqlConnection
{
   ConnectionString = configuration.GetConnectionString("nameDatabase")
};
AzureServiceTokenProvider provider = new AzureServiceTokenProvider();
var token = provider.GetAccessTokenAsync("https://database.windows.net/").Result;
connection.AccessToken = token;
Run Code Online (Sandbox Code Playgroud)
  1. 部署到 Azure 应用服务并查看 URL。结果是:错误500.30
  2. 查看应用程序事件日志:

    未处理的异常。System.AggregateException:发生一个或多个错误。(参数:连接字符串:[未指定连接字符串],资源:https : //database.windows.net,权限:。异常消息:尝试了以下 3 …

azure-managed-identity

4
推荐指数
1
解决办法
1636
查看次数