Я пытаюсь добавить правила виртуальной сети в базу данных космоса, используя PowerShell. В сети существуют разные арендаторы. Я сделал то же самое для учетных записей хранения, и он работал нормально. Я получаю следующую ошибку. Может ли кто-нибудь дать мне несколько советов о том, где я иду не так? возможно ли сделать это в базе данных cosmos db?
Set-AzureRmResource: LinkedAuthorizationFailed
: у клиента есть разрешение на выполнение действия 'Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action' в области действия '/ подписки / идентификатор подписки на Cosmos DB / resourceGroups / nbspreprd3 / provider / Microsoft.DocumentDb / databaseAccounts / nbspreprd3-config-document-db ', однако текущий владелец' 'не авторизован для доступа к связанной подписке' '. В строке: 8 символов: 5 + Set-AzureRmResource -ResourceType $ ResourceType -ResourceGroupNam ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CategoryInfo: CloseError: (:) [Set-AzureRmResource], ErrorResponseMessageException + FullyQualifiedErrorId: LinkedAuthorizationFailed, Microsoft. Azure .Commands.ResourceManager.Cmdlets.Implementation.SetAzureResourceCmdlet
Это сценарий PowerShell * 100 * * 100 * 100 * 100 * 100 * *1000* 1000 $ResourceGroupName = "*******"
$accountname = "*******"
$ResourceType = "Microsoft.DocumentDb/databaseAccounts"
$cosmosAccount = Get-AzureRMResource -ResourceType $ResourceType -ResourceGroupName $resourceGroupName -Name $accountName
$VnrID1 = "/subscriptions/*******/resourceGroups/build-agents/providers/Microsoft.Network/virtualNetworks/build-agents-vnet/subnets/build-2-subnet"
$VnrID2 = "/subscriptions/*******/resourceGroups/build-agents/providers/Microsoft.Network/virtualNetworks/build-agents-vnet/subnets/build-3-subnet"
$VnrID3 = "/subscriptions/*******/resourceGroups/build-agents/providers/Microsoft.Network/virtualNetworks/build-agents-vnet/subnets/=build1-subnet"
function setCosmosRule {
Param($ResourceGroupName, $accountname, $ResourceType, $cosmosAccount, $VnrID1)
$vnetrules = $cosmosAccount.Properties.virtualNetworkRules
$existsCosmos =($cosmosAccount.Properties.virtualNetworkRules | Where-Object {$_.id -eq $VnrID1} | Measure-Object).Count -ne 0
if(-not($existsCosmos)){
$ourObject = New-Object -TypeName psobject
$ourObject | Add-Member -MemberType NoteProperty -Name id -Value $VnrID1
$ourObject | Add-Member -MemberType NoteProperty -Name ignoreMissingVNetServiceEndpoint -Value True
$newVnetRules = $vnetrules, $ourObject
$cosmosAccount.Properties.virtualNetworkRules = $newVnetRules
$CosmosDBProperties = $cosmosAccount.Properties
Set-AzureRmResource -ResourceType $ResourceType -ResourceGroupName $ResourceGroupName -ResourceName $accountname -Properties $cosmosDBProperties -Force
}
}
1009 *1009* 1009 * Советы очень ценятся
Спасибо