Azure SQL Server Admin v / s常规用户

问题描述 投票:0回答:1

目前,我是Azure SQL服务器上的服务器管理员。当我创建一个azure功能应用程序并连接到数据库(在服务器上)时,我必须从应用程序指定一个sql连接字符串。连接字符串将使用我的用户名和密码。

我想更改此设置,以便服务器管理员是一个活动目录组(开发组或其他东西)。 Microsoft支持告诉我,我无法为活动目录组设置密码。如何在没有密码的情况下创建连接字符串?或者我是否必须创建具有开发标识的Office 365帐户,以便设置开发用户和开发密码?

在Sql server management(ssms)中,服务器管理员列在安全目录下。我一直在使用服务器管理员用户名和密码从azure功能应用程序连接到数据库。

现在我创建了一个名为Development on ssms的用户,如下所示:

USE CompanyDatabase CREATE LOGIN开发WITH PASSWORD ='password';走

我尝试在我的连接字符串中使用开发登录作为参数,并收到此错误:

调用的目标抛出了异常。 .Net SqlClient数据提供程序:服务器主体“Development”无法访问数据库

azure server admin portal
1个回答
1
投票

到目前为止,您只使用您提到的命令创建了一个LOGIN。

下一步是创建将使用此登录的USER,然后为该用户分配一些权限。我给出了db_datawriter的一个例子,但你可以选择不同的东西,如db_datareader或db_owner等。

创建用户[开发] FROM LOGIN [开发]

EXEC sp_addrolemember'db_datawriter','开发';

另外,Azure SQL数据库支持包含数据库用户模型,您不需要先创建服务器级别登录,然后再根据它创建用户,而是直接创建仅包含在该数据库中的用户。使用此模型有一些优点和缺点。你可以在这里获得更多相关信息 -

https://docs.microsoft.com/en-us/sql/relational-databases/security/contained-database-users-making-your-database-portable?view=sql-server-2017

© www.soinside.com 2019 - 2024. All rights reserved.