标签: azure-cli

如何在 PowerShell 中向 Azure CLI 提供 SAS 令牌

我正在使用 PowerShell 中的 Azure CLI 2.0 来管理存储帐户。我有一个 SAS 令牌(我将其存储在一个变量中)并且我想在命令中使用它。这是我正在运行的脚本:

$sasToken = 'st=2017-11-13T10%3A55%3A06Z&se=2017-11-13T11%3A27%3A06Z&sp=w&spr=https&sv=2017-04-17&sr=c&sig=%2BA6LDTwHes6JdxEAHXSvbYc70y30OcznjMVSyFbCXog%3D'

az storage blob upload `
    --account-name mystorageaccount `
    --container-name mycontainer `
    --file c:\temp\file.txt `
    --name file.txt `
    --sas-token $sasToken
Run Code Online (Sandbox Code Playgroud)

当我运行这个时,我收到这个错误:

The specified resource does not exist.
'se' is not recognized as an internal or external command,
operable program or batch file.
'sp' is not recognized as an internal or external command,
operable program or batch file.
'spr' is not recognized as an internal or external command,
operable program …
Run Code Online (Sandbox Code Playgroud)

powershell azure-cli

3
推荐指数
1
解决办法
1499
查看次数

如何为 Azure CLI 使用 Powershell splatting

我想使用Powershell splatting有条件地控制用于某些 Azure CLI 调用的参数。专门用于创建 CosmosDb 集合。

目标是这样的:

$params = @{
    "db-name" = "test";
    "collection-name"= "test2";
    # makes no difference if I prefix with '-' or '--'
    "-key" = "secretKey";
    "url-connection" = "https://myaccount.documents.azure.com:443"
    "-url-connection" = "https://myaccount.documents.azure.com:443"
}

az cosmosdb collection create @params
Run Code Online (Sandbox Code Playgroud)

不幸的是,这只适用于db-namecollection-name。其他参数失败并显示此错误:

az : ERROR: az: error: unrecognized arguments: --url-connection:https://myaccount.documents.azure.com:443 
--key:secretKey
Run Code Online (Sandbox Code Playgroud)

powershell azure azure-cli

3
推荐指数
1
解决办法
492
查看次数

Azure 逻辑应用:如何运行 Powershell 脚本或 Azure CLI?

我正在构建我的 Azure 逻辑应用程序工作流,它应该检查一些条件并按照 Powershell 运行:

Stop-AzureWebsiteJob -Name MyWebsite -JobName MyWebJob
Start-AzureWebsiteJob -Name MyWebsite -JobName MyWebJob -JobType Continuous
Run Code Online (Sandbox Code Playgroud)

问题是:在 Azure 逻辑应用程序中调用此类脚本的最简单方法是什么?Powershell 似乎没有内置块/连接器,所以我想知道有哪些可能性。或者,使用类似的操作运行 az CLI 命令可能会更容易

powershell azure azure-cli azure-logic-apps

3
推荐指数
3
解决办法
2万
查看次数

将 Azure CLI 命令的输出存储为变量

我需要存储 AZ cli 命令的输出,该命令将获取我的私有 IP 作为变量。

我在 bash 脚本中使用以下内容:

echo "Fetching Monitoring Server IP"
SERVER_IP=$(az vm show -n ${THIS_VM_NAME} -g ${RSC_GRP_NAME} --query privateIps -o tsv)
echo "$SERVER_IP
Run Code Online (Sandbox Code Playgroud)

看起来这不起作用,因为当我回显该变量时,它返回空。

+ THIS_VM_NAME=XXXX-XX-XX-XX-XX
+ echo 'Fetching Monitoring Server IP'
Fetching Monitoring Server IP
++ az vm show -n XXXX-XX-XX-XX-XX3 -g XXXX-XX-XX-XX-XX --query privateIps -o tsv
+ SERVER_IP=
+ echo ''
Run Code Online (Sandbox Code Playgroud)

我将不胜感激任何对此的指示

linux bash azure-cli

3
推荐指数
2
解决办法
1万
查看次数

通过 CLI 将成员添加到 Azure 企业应用程序

我们的 Azure AD 租户中有一个企业应用程序,用于将用户配置到另一个 SaaS 平台。目前它只设置了“仅同步分配的用户和组”选项,因为我们不希望整个目录都被带过来。

我的问题很简单,有没有办法使用 az-cli(目前安装了 2.0.60 版)将用户添加到该企业应用程序中?

我检查了:

  • az 广告 sp
  • az 广告应用
  • az 角色分配(似乎只适用于下面的订阅和资源)

我希望会运行一个简单的角色分配命令,通过 upn/objectId 将用户添加到企业应用程序。

我团队中的每个人都在使用 Mac,如果有更好的支持,我们可以使用 PowerShellCore。

谢谢!

azure-active-directory azure-cli az

3
推荐指数
2
解决办法
1457
查看次数

如何将 Azure Devops 中的 CLI 命令拆分为多行?(在 Windows 上运行)

我在 Azure Devops 上的 CLI 任务中运行以下内容(内联)

rem Create the Service Plan
call az appservice plan create --resource-group %RESOURCE_GROUP% --name %SERVICE_NAME% --sku B1
Run Code Online (Sandbox Code Playgroud)

哪个工作得很好。但是,我必须滚动才能看到整个内容,而且我还有其他更长的命令。所以我试图把它分成多行,这样我就可以更清楚地看到发生了什么。

查看Microsoft Docs,看起来解决方案是在每一行的末尾加上一个反斜杠。所以我试过:

我试过了:

rem Create the Service Plan
call az appservice plan create \
--resource-group %RESOURCE_GROUP% \
--name %APP_SERVICE_NAME% \
--sku B1
Run Code Online (Sandbox Code Playgroud)

这没有用。然后我阅读了一些建议在每行末尾使用反引号/反引号的内容:

rem Create the Service Plan
call az appservice plan create `
--resource-group %RESOURCE_GROUP% `
--name %APP_SERVICE_NAME% `
--sku B1
Run Code Online (Sandbox Code Playgroud)

这也不起作用。非常感谢任何帮助。

azure-cli azure-devops

3
推荐指数
3
解决办法
4923
查看次数

当我学习 azure iot hub 教程时,创建错误分区计数为 4 - 为什么?

如果您在第二步中输入,则取决于microsoft 网站上的 IoT 中心教程:

az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Run Code Online (Sandbox Code Playgroud)

在您的 cli 中,出现错误: *Invalid PartitionCount 4 - 值必须介于 2 和 2 之间。如果您联系支持代表,请包含此相关标识符:******-f9a8-4b36-a566-**** **,时间戳:2019-06-04 14:32:30Z,错误代码:IH400016.*

请参阅下面的答案以进行修复;)

azure azure-cli azure-iot-hub

3
推荐指数
1
解决办法
476
查看次数

AzureDevops 管道使用 terraform 和 local-exec az 命令因服务主体失败

由于 terraform azurerm 提供程序缺少对 azure webapp 访问限制的支持(请参阅 github 问题)。我们使用null_resourcewithlocal-exec来应用访问限制:


  provisioner "local-exec" {
    command = <<COMMAND
      az webapp config access-restriction add --subscription ${self.triggers.subscription_id} --resource-group ${self.triggers.resource_group} \
        --name ${self.triggers.web_app_name} --rule-name 'allow application gateway' --action Allow --vnet-name ${self.triggers.vnet_name} \
        --subnet ${self.triggers.subnet_name} --priority 100
    COMMAND
  }
Run Code Online (Sandbox Code Playgroud)

我们的 terraform 代码稍后由 Azure DevOps 管道运行,该管道使用服务连接(使用服务主体)向 Azure 进行身份验证。以下任务正在尝试应用 terraform 资源:


  provisioner "local-exec" {
    command = <<COMMAND
      az webapp config access-restriction add --subscription ${self.triggers.subscription_id} --resource-group ${self.triggers.resource_group} \
        --name ${self.triggers.web_app_name} --rule-name 'allow application gateway' …
Run Code Online (Sandbox Code Playgroud)

azure-cli terraform azure-devops azure-pipelines

3
推荐指数
1
解决办法
3284
查看次数

如何直接在bash脚本中运行PowerShell核心命令?

我主要使用脚本Az CLI中的命令bash来管理Azure资源。有时,我需要使用这些PowerShell core命令,因为Az CLI版本不存在。

我想在 shell 中同时使用Az CLIPS core命令bash。我的意思是,我想要only onebash 脚本并在其中执行所有必需的命令。

您知道直接在 bash 脚本中运行PowerShell core命令的方法吗?

bash azure azure-cli azure-devops powershell-core

3
推荐指数
1
解决办法
3943
查看次数

如何从 DevOps 管道安全地登录 Az CLI

我想从我的 Azure DevOps Pipeline 执行 AZ cli 命令。在我的 YAML 文件中,我有这个:

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

variables:
  buildConfiguration: 'Release'

steps:
- task: UsePythonVersion@0
  inputs:
    versionSpec: '3.x'
    architecture: 'x64'

# Updating pip to latest
- script: python -m pip install --upgrade pip
  displayName: 'Upgrade pip'

# Updating to latest Azure CLI version.
- script: pip install --pre azure-cli --extra-index-url https://azurecliprod.blob.core.windows.net/edge
  displayName: 'upgrade azure cli'

- script: az --version
  displayName: 'Show Azure CLI version'

- script: az extension add -n azure-devops
  displayName: …
Run Code Online (Sandbox Code Playgroud)

azure azure-cli azure-devops azure-pipelines

3
推荐指数
1
解决办法
4669
查看次数