Управление API Azure с поворотом ключа
Я использую KeyVault для хранения Ocp-Apim-Subscription-Key
, Приложения получают этот ключ от KeyVault и успешно отправляют запросы в API Management.
Но теперь я хочу повернуть это Ocp-Apim-Subscription-Key
часто используя сценарии powershell в Runbook. Я не могу найти способ возродиться Ocp-Apim-Subscription-Key
через powershell. Это возможно? Если есть другой вариант, чтобы повернуть этот ключ, пожалуйста, дайте мне знать.
1 ответ
Решение
Определенно возможно через API:
- https://docs.microsoft.com/en-us/rest/api/apimanagement/subscription/regenerateprimarykey
- https://docs.microsoft.com/en-us/rest/api/apimanagement/subscription/regeneratesecondarykey
Должно быть где-то в PS, а также.
# Get API Management Services information and set context
$ApiManagements = Get-AzApiManagement
foreach ($ApiManagement in $ApiManagements)
{
$ApiManagementContext = New-AzApiManagementContext -ResourceId $ApiManagement.Id
# Get all API Management Subscriptions
$ApiManagementSubscriptions = Get-AzApiManagementSubscription -Context $ApiManagementContext
foreach ($ApiManagementSubscription in $ApiManagementSubscriptions)
{
# Update the Keys
$PrimaryKey = (New-Guid) -replace '-',''
$SecondaryKey = (New-Guid) -replace '-',''
Set-AzApiManagementSubscription -Context $ApiManagementContext -SubscriptionId $ApiManagementSubscription.SubscriptionId -PrimaryKey $PrimaryKey `
-SecondaryKey $SecondaryKey -State Active
}
}