如何在O365上托管TLD时使用POWERSHELL创建CNAME记录?

时间:2017-09-21 12:35:02

标签: powershell azure dns office365 azure-devops

问题

在Office 365上托管的TLD并使用Office 365 NAME SERVER。作为部署到Azure App Service的VSTS Release Pipeline的一部分,我需要在执行时使用Powershell脚本创建CNAME记录。部署是幂等的。

TESTED

在此阶段,域TEST.COM在我的Office365 DOMAIN设置部分中显示为未经验证的域。

很好,所以我有:

  • 证明我可以连接到正确的端点。
  • 验证到正确的帐户。
  • 在此阶段获得创建记录的许可,尽管未经验证的TLD。

问题

查看可用的Powershell命令,我不了解如何在同一帐户上托管的现有已验证TLD上创建CNAME。

研究

查看了以下文档:

New-MSOL commands

New-AzureRmDnsZone

RM是Azure资源管理器,如果O365 NameSever是Azure DNS,则不清楚。

另外看看这个,但我不认为可以在O365中使用这些命令:

Add-DnsServerResourceRecordCName

编辑添加我还检查了Azure Active Directory PowerShell Version 2

Install-Module AzureAD

1 个答案:

答案 0 :(得分:0)

可能几乎就在那里。以下过程似乎允许我创建适当的记录。将进行下面的编辑。

  1. 为IT专业人员安装Microsoft Online Services登录助手RTW:

    https://www.microsoft.com/en-us/download/details.aspx?id=41950

  2. 安装Azure Active Directory连接MSI @

    http://connect.microsoft.com/site1164/Downloads/DownloadDetails.aspx?DownloadID=59185

  3. 从Powershell作为ADMIN安装连接助手:

    Invoke-WebRequest -Uri https://download.microsoft.com/download/5/0/1/5017D39B-8E29-48C8-91A8-8D0E4968E6D4/en/msoidcli_64.msi -OutFile c:\msoidcli_64.msi 
    

    Start-Process -FilePath msiexec -ArgumentList / i,c:\ msoidcli_64.msi,/ quiet -Wait

  4. 安装管理员配置:

    Invoke-WebRequest -Uri https://go.microsoft.com/fwlink/p/?linkid=236297 -OutFile c:\AdministrationConfig-en.msi 
    

    Start-Process -FilePath msiexec -ArgumentList / i,c:\ AdministrationConfig-en.msi,/ quiet -Wait

  5. 安装NuGet包:

    Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
    
  6. 安装ARM DNS模块:

    Install-Module AzureRM.Dns -Confirm:$false -Force
    
  7. 连接到O365,然后输入您的O365 AD用户凭据。

    Connect-MsolService
    
  8. 连接到Azure sub并输入您的Azure订阅用户凭据。

    Login-AzureRmAccount
    
  9. 选择与您的O365子相关的相关Azure Sub:

    Select-AzureRmSubscription -Subscriptionname O365
    
  10. 执行以下操作添加CNAME记录:

    New-AzureRmDnsRecordSet -Name 'test1' -RecordType "CName" -ZoneName mydomain.com -ResourceGroupName "Name" -Ttl 3600 -DnsRecords (New-AzureRmDnsRecordConfig -Cname $Auto) -Overwrite