Обновление 01/23:
Я получил отзыв от службы поддержки.
Regenerate Shared Keys api ранее немного изменился , но do c не обновляется :(.
Вам необходимо добавить параметр keyType со значением primarySharedKey или primarySharedKey .
Причина изменения: ранее при использовании API для регенерации ключа и первичный, и вторичный ключи регенерировались вместе.То есть мнение пользователя, что мы должны обновлять API и делать его только каждый раз заново сгенерируйте один ключ.
Я протестировал его, работает нормально. Скриншот теста, как показано ниже:
Оригинал :
API Regenerate Shared Keys сейчас не работает.
Фактический используемый API-интерфейс приведен ниже:
для повторного восстановления первичный ключ :
https://www.mms.microsoft.com/Embedded/Api/arm/management/CustomerManagement/AgentRegenerateSharedKey?keyType=primarySharedKey
.
для повторного восстановления вторичный ключ :
* 10 48 *
Ниже приведены шаги для проверки API и создания нового общего ключа.
Шаг 1. Откройте портал azure -> ваше рабочее пространство Log Analytics - > Расширенные настройки -> Подключенные источники -> Windows Серверы и нажмите кнопку F12, чтобы проверить фактический запрос (я использую Edge browser) -> затем нажмите кнопку Regenerate
для Первичного ключа. Снимок экрана, как показано ниже (И, как вы можете видеть на скриншоте, фактический URL-адрес запроса https://www.mms.microsoft.com/Embedded/Api/xxx
):
Шаг 2. Так как мы знаем что фактический URL, то как мы можем получить токен?
Простой способ состоит в том, что вы можете получить токен с шага 1, при просмотре деталей квеста с помощью кнопки F12 вы также можете найти токен (это временно).
Другой способ заключается в том, что Откройте Visual Studio -> войдите под своей учетной записью azure -> создайте консольный проект -> затем установите пакет Microsoft. Azure .Services.AppAuthentication . Затем напишите следующий код в консольном проекте:
using Microsoft.Azure.Services.AppAuthentication;
using System;
namespace ConsoleApp17
{
class Program
{
static void Main(string[] args)
{
AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider();
string accessToken = azureServiceTokenProvider.GetAccessTokenAsync("https://management.core.windows.net/").Result;
Console.WriteLine(accessToken);
Console.WriteLine("**completed**");
Console.ReadLine();
}
}
}
Шаг 3. После получения токена вы можете использовать токен для повторной генерации общего ключа.
Я провел тест для повторной генерации первичного ключа и с помощью инструмента почтальон.
открытый почтальон, для заголовков и URL , следуйте скриншоту ниже:
для Кузов , сделайте скриншот ниже:
Наконец, нажмите кнопку send , вы можете увидеть ответ 200 ok . И если ссылаться на портал sh, вы увидите, что новый первичный ключ сгенерирован.
Если вы предпочитаете использовать для этого curl или другой язык программирования, просто следуйте приведенным выше инструкциям и укажите request headers / token / request body
.