【发布时间】:2019-06-23 13:19:13
【问题描述】:
我需要使用 C# 为我的 Azure SQL 数据库创建一个包含用户。我已经有以下代码用于创建数据库:
// Login to Azure
var credentials = UserTokenProvider.LoginSilentAsync(clientId, domainName, username, password).Result;
// Create client
SqlManagementClient client = new SqlManagementClient(credentials)
{
SubscriptionId = subscriptionId
};
// Database parameters
var databaseParameters = new Microsoft.Azure.Management.Sql.Models.Database()
{
Location = "ukwest",
ElasticPoolId = elasticPoolId,
};
// Create database
var dbResponse = client.Databases.CreateOrUpdate(resourceGroupName, serverName, databaseName, databaseParameters);
我发现以下 SQL 脚本可用于使用 SQL 管理工作室创建包含的用户,但这需要您手动连接到要为其创建用户的数据库:
CREATE USER [databaseUser] WITH PASSWORD = 'xxxxxxxxxxx';
ALTER ROLE [db_datareader] ADD MEMBER [databaseUser]
ALTER ROLE [db_datawriter] ADD MEMBER [databaseUser]
那么,在创建数据库之后,如何在我的 C# 代码中使用 SQL 脚本连接数据库,然后为该数据库创建包含的 SQL 用户,或者在 Microsoft.Azure 中是否有一些等效代码可用。 Management.Sql.SqlManagementClient 这样做?
【问题讨论】:
标签: c# sql-server azure azure-sql-database