Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure sql database 无法使用azure连接sql数据库_Azure Sql Database_Arm Template - Fatal编程技术网

Azure sql database 无法使用azure连接sql数据库

Azure sql database 无法使用azure连接sql数据库,azure-sql-database,arm-template,Azure Sql Database,Arm Template,我在Azure中有一个SQL Server,它是使用简单的ARM模板创建的。当我使用sqladmin凭据连接到SQL Server时,我能够很好地连接到它。我正在使用SQLServerManagementStudio进行此操作 但是,当我使用以下任何突出显示的选项时,我看到一条错误消息。 我看到的错误如下所示,这是一个弹出窗口,但我粘贴其中的文本以便于参考 TITLE: Connect to Server ------------------------------ Cannot conne

我在Azure中有一个SQL Server,它是使用简单的ARM模板创建的。当我使用sqladmin凭据连接到SQL Server时,我能够很好地连接到它。我正在使用SQLServerManagementStudio进行此操作

但是,当我使用以下任何突出显示的选项时,我看到一条错误消息。

我看到的错误如下所示,这是一个弹出窗口,但我粘贴其中的文本以便于参考

TITLE: Connect to Server
------------------------------
Cannot connect to abcd-core-sql.database.windows.net.
------------------------------
ADDITIONAL INFORMATION:
如果有人能评论我在使用ARM模板创建SQL Server时是否遗漏了任何内容,我将不胜感激。换句话说,配置中是否需要包含任何其他内容,以使azure ad身份验证在azure中为SQL db工作

    {
        "type": "Microsoft.Sql/servers",
        "name": "[variables('sql_name')]",
        "apiVersion": "2015-05-01-preview",
        "location": "eastus2",
        "properties": {
            "administratorLogin": "[parameters('admin')]",
            "administratorLoginPassword": "[parameters('passwd')]",
            "version": "[variables('sqlversion')]"
        }
    },

在使用AAD凭据连接或创建任何AAD数据库用户之前,必须为实例配置Azure Active Directory管理员。看

设置AAD管理员后,连接为AAD管理员,或将AAD安全组的成员设置为AAD管理员,例如


对于ARM模板,可以在sql Server资源中添加以下内容:

  "resources": [
    {
      "name": "ActiveDirectory",
      "type": "administrators",
      "location": "[parameters('location')]",
      "apiVersion": "2019-06-01-preview",
      "properties": {
        "administratorType": "ActiveDirectory",
        "login": "[parameters('sqlADadmin')]",
        "sid": "[parameters('sqlADadminObjectID')]",
        "tenantId": "[subscription().tenantId]"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', variables('sqlServerName'))]"
      ]
    }
这是你的电话号码

您不需要Azure AD objectId和您正在创建sql管理员的帐户/组的登录名


这可以通过在Powershell中或在

中获得。我遇到了相同的问题,要解决此问题,您需要单击按钮,然后单击选项卡上的字段,并将其替换为您想要/拥有访问权限的数据库名称

出现此问题是因为用户的默认数据库是主数据库,但用户没有访问主数据库的权限


另一种选择是允许用户访问主数据库,但通常您不希望这样做。

谢谢。我从门户添加了自己的管理员身份,现在可以登录了。但是其他用户的配置/管理是如何工作的呢。如果我想让用户使用他们自己的广告凭证登录。可能吗
    {
        "type": "Microsoft.Sql/servers",
        "name": "[variables('sql_name')]",
        "apiVersion": "2015-05-01-preview",
        "location": "eastus2",
        "properties": {
            "administratorLogin": "[parameters('admin')]",
            "administratorLoginPassword": "[parameters('passwd')]",
            "version": "[variables('sqlversion')]"
        }
    },
CREATE USER [bob@contoso.com] FROM EXTERNAL PROVIDER;
CREATE USER [ICU Nurses] FROM EXTERNAL PROVIDER;
  "resources": [
    {
      "name": "ActiveDirectory",
      "type": "administrators",
      "location": "[parameters('location')]",
      "apiVersion": "2019-06-01-preview",
      "properties": {
        "administratorType": "ActiveDirectory",
        "login": "[parameters('sqlADadmin')]",
        "sid": "[parameters('sqlADadminObjectID')]",
        "tenantId": "[subscription().tenantId]"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', variables('sqlServerName'))]"
      ]
    }