有哪些选项可以验证powershell azure管理cmdlet,例如New-AzureSqlDatabaseServer
和New-AzureSqlDatabase
?
看起来New-AzureSqlDatabaseServer
需要显式传递管理员的用户名和密码,而New-AzureSqlDatabase
需要知道上下文(可以使用Get-Credential
cmdlet创建上下文或手动创建对象通过传递纯文本密码来输入PSCredential
想知道是否有其他方法可以在不传递/提示管理员用户名或密码的情况下对这些管理cmdlet进行身份验证?我正在寻找可以一次导入部署服务器的发布设置证书中的内容。
背景 - 我希望使用PowerShell自动化SQL azure服务器和数据库创建,并尝试在不必提示/传递管理员密码的情况下执行此操作
答案 0 :(得分:1)
因此,New-AzureSqlDatabaseServer
使用您的订阅凭据。您当前可以使用New-AzureSqlDatabase
创建一个与PSCredential
一起使用的上下文,您可以通过为密码实例化SecureString
来创建该上下文 - ConvertTo-SecureString
命令行开关可以为此提供帮助。
答案 1 :(得分:0)
我一直在找同样的东西,我发现了一个技巧......
$cred=Get-Credential
$userName=$cred.UserName
$password=$cred.GetNetworkCredential().Password
New-AzureSqlDatabaseServer -Version "12.0" -AdministratorLogin $userName -AdministratorLoginPassword $password -Location "West US"