管理员 SQL 服务器在 terraform 计划期间的登录错误

Login error for admin SQL Server during terraform plan

我正在使用 Terraform 构建 Azure 基础结构。我需要为服务器中的每个数据库创建一个特定的数据库用户。要创建用户,我使用提供程序“betr-io / mssql”,要创建用户,我使用以下脚本:

resource "mssql_login" "sql_login" {
  server {
    host = "${var.sql_server_name}.database.windows.net"
    # host = azurerm_mssql_server.sqlserver.fully_qualified_domain_name
    login {
      username = var.sql_admin_user
      password = var.sql_admin_psw
    }
  }
  login_name = var.sql_dbuser_username
  password   = var.sql_dbuser_password
  depends_on    = [azurerm_mssql_server.sqlserver, azurerm_mssql_database.sqldb]
}

resource "mssql_user" "sql_user" {
  server {
    host = "${var.sql_server_name}.database.windows.net"
    # host = azurerm_mssql_server.sqlserver.fully_qualified_domain_name
    login {
      username = var.sql_admin_user
      password = var.sql_admin_psw
    }
  }
  username = var.sql_dbuser_username
  password = var.sql_dbuser_password
  database = var.sql_db_name
  roles    = var.sql_dbuser_roles
  depends_on  = [azurerm_mssql_server.sqlserver, azurerm_mssql_database.sqldb, mssql_login.sql_login]
}

terraform plan给我的就是这个错误

Error: unable to read user [sqldb-dev].[dbuser]: login error: mssql: Login failed for user 'usr-admin'.

with mssql_user.sql_user,
on main.tf line 346, in resource "mssql_user" "sql_user":
346: resource "mssql_user" "sql_user" {

我不明白问题出在哪里,有没有人有过类似的经历?

为了信息的完整性,数据库托管在弹性池实例中。

我找到的唯一解决方案是销毁用户并使用数据库重新创建它们。 不幸的是,我还没有找到将 devops 添加到 sql 服务器白名单的方法。