Поделиться через


Включение идентификатора Microsoft Entra для локальных средств мониторинга

Azure Private 5G Core предоставляет средства распределенной трассировки и панели мониторинга пакетов для мониторинга развертывания на границе. Эти средства можно получить с помощью идентификатора Microsoft Entra или локального имени пользователя и пароля. Мы рекомендуем настроить проверку подлинности Microsoft Entra для повышения безопасности в развертывании.

В этом руководстве описано, как выполнить действия, которые необходимо выполнить после развертывания или настройки сайта, использующего идентификатор Microsoft Entra для проверки подлинности доступа к локальным средствам мониторинга. Вам не нужно следовать этому, если вы решили использовать локальные имена пользователей и пароли для доступа к распределенным панелям трассировки и ядра пакетов.

Внимание

Идентификатор Microsoft Entra для локальных инструментов мониторинга не поддерживается, если веб-прокси включен на устройстве Azure Stack Edge, на котором работает Azure Private 5G Core. Если вы настроили брандмауэр, который блокирует трафик, не передаваемый через веб-прокси, включение идентификатора Microsoft Entra приведет к сбою установки Частной 5G Core Azure.

Предварительные условия

  • Необходимо выполнить действия, описанные в разделе "Завершение необходимых задач" для развертывания частной мобильной сети и сбора необходимых сведений для сайта.
  • Необходимо было развернуть сайт с установленным Microsoft Entra ID в качестве типа проверки подлинности.
  • Определите IP-адрес для доступа к локальным средствам мониторинга, настроенным в сети управления.
  • Убедитесь, что вы можете войти в портал Azure с помощью учетной записи с доступом к активной подписке, используемой для создания частной мобильной сети. Эта учетная запись должна иметь разрешение на управление приложениями в идентификаторе Microsoft Entra. Встроенные роли Microsoft Entra, имеющие необходимые разрешения, включают, например администратора приложений, разработчика приложений и администратора облачных приложений. Если у вас нет этого доступа, обратитесь к администратору Microsoft Entra клиента, чтобы убедиться, что пользователь был назначен правильной роли, выполнив команду "Назначить роли пользователей с идентификатором Microsoft Entra".
  • Убедитесь, что локальный компьютер имеет основной доступ kubectl к кластеру Kubernetes с поддержкой Azure Arc. Для этого требуется основной файл kubeconfig, который можно получить, выполнив доступ к пространству имен Core.

Настройка доменных системных имен (DNS) для локального IP-адреса мониторинга

При регистрации приложения и настройке URI перенаправления вам потребуется, чтобы URI перенаправления содержали доменное имя, а не IP-адрес для доступа к локальным средствам мониторинга.

На доверенном DNS-сервере для зоны DNS, в которой вы хотите создать запись DNS, настройте запись DNS для разрешения доменного имени на IP-адрес, используемый для доступа к локальным средствам мониторинга, настроенным в сети управления.

Зарегистрировать приложение

Теперь вы зарегистрируете новое локальное приложение мониторинга с идентификатором Microsoft Entra, чтобы установить связь доверия с платформа удостоверений Майкрософт.

Если развертывание содержит несколько сайтов, можно использовать один и тот же URI перенаправления для всех сайтов или создать разные пары URI для каждого сайта. На сайте можно настроить не более двух URI перенаправления. Если вы уже зарегистрировали приложение для развертывания и хотите использовать те же URI на сайтах, вы можете пропустить этот шаг.

Примечание.

В этих инструкциях предполагается, что вы используете одно приложение для распределенной трассировки и панелей мониторинга ядра пакетов. Если вы хотите предоставить доступ к разным группам пользователей для этих двух инструментов, можно настроить одно приложение для ролей панелей мониторинга ядра пакетов и одну для распределенной роли трассировки.

  1. Следуйте краткому руководству: Регистрация приложения на платформе удостоверений Microsoft для регистрации нового приложения для локальных средств мониторинга на платформе удостоверений Microsoft.

    1. В Добавить URI перенаправления выберите платформу Веб и добавьте следующие два URI перенаправления, где <домен локального мониторинга> — это доменное имя для локальных средств мониторинга, которые вы настроили в Настройка доменного имени системы (DNS) для локального IP-адреса мониторинга:

      • <https:// локальный домен мониторинга>/sas/auth/aad/callback
      • <https:// локальный домен мониторинга>/grafana/login/azuread
    2. В разделе "Добавление учетных данных" выполните действия по добавлению секрета клиента. Обязательно запишите секрет в столбце Value , так как это поле доступно только сразу после создания секрета. Это значение секрета клиента, которое потребуется позже в этой процедуре.

  2. Следуйте пользовательскому интерфейсу ролей приложений, чтобы создать роли для приложения со следующей конфигурацией:

    • В разделе Allowed member types (Разрешенные типы участников) выберите Пользователи и группы.
    • В поле "Значение" введите одно из значений: Администратор, Просмотрщик, Редактор для каждой создаваемой роли. Для распределенной трассировки также требуется роль sas.user.
    • В "Хотите включить эту роль приложения?" убедитесь, что установлен флажок.

    Эти роли можно использовать при управлении доступом к основным панелям мониторинга пакетов и средству распределенной трассировки.

  3. Следуйте инструкциям по назначению пользователей и групп ролям, чтобы назначить пользователей и группы созданным ролям.

Сбор данных для секретных объектов Kubernetes

  1. Соберите значения в следующей таблице.

    Значение Как собрать Имя параметра секрета Kubernetes
    Идентификатор клиента В портал Azure найдите идентификатор Microsoft Entra. Поле идентификатора клиента (Tenant ID) можно найти на странице сводки. tenant_id
    Application (client) ID (Идентификатор приложения (клиент)) Перейдите к только что созданной регистрации приложения локального мониторинга. Поле идентификатора приложения (клиента) можно найти на странице обзора в заголовке Essentials. client_id
    URL-адрес авторизации На странице "Обзор регистрации локального приложения мониторинга" выберите "Конечные точки". Скопируйте содержимое поля конечной точки авторизации OAuth 2.0 (версия 2).

    Примечание.
    Если строка содержит organizations, замените organizations значением идентификатора клиента. Например:
    https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize
    Становится
    https://login.microsoftonline.com/aaaabbbb-0000-cccc-1111-dddd2222eeee/oauth2/v2.0/authorize.
    auth_url
    URL-адрес токена На странице "Обзор регистрации локального приложения мониторинга" выберите "Конечные точки". Скопируйте содержимое поля конечной точки токена OAuth 2.0 (версия 2).

    Примечание.
    Если строка содержит organizations, замените organizations значением идентификатора клиента. Например:
    https://login.microsoftonline.com/organizations/oauth2/v2.0/token
    Становится
    https://login.microsoftonline.com/aaaabbbb-0000-cccc-1111-dddd2222eeee/oauth2/v2.0/token.
    token_url
    Секрет клиента Вы собрали это при создании секрета клиента на предыдущем шаге. client_secret
    Корень URI для перенаправления распределённой трассировки Запишите следующую часть URI перенаправления: https://<локальный домен мониторинга>. redirect_uri_root
    Корень URI перенаправления основных панелей мониторинга пакетов Запишите следующую часть URI перенаправления панелей мониторинга ядра пакетов: https://< local monitoring domain>/grafana. root_url

Изменение локального доступа

Перейдите в портал Azure и найдите ресурс Управляющая плоскость пакетного ядра вашего сайта. Выберите вкладку "Изменить локальный доступ" колонки.

  1. Если для типа проверки подлинности задан идентификатор Microsoft Entra, перейдите к созданию секретных объектов Kubernetes.
  2. Иначе:
    1. Выберите Microsoft Entra ID в раскрывающемся списке типа проверки подлинности.
    2. Выберите Review.
    3. Выберите Отправить.

Создание секретных объектов Kubernetes

Чтобы поддерживать идентификатор Microsoft Entra в частных приложениях Azure 5G Core, вам потребуется файл YAML, содержащий секреты Kubernetes.

  1. Преобразуйте все значения, собранные в разделе "Сбор сведений для секретных объектов Kubernetes" в формат Base64. Например, можно выполнить следующую команду в окне Azure Cloud Shell Bash :

    echo -n <Value> | base64
    
  2. Создайте файл secret-azure-ad-local-monitoring.yaml, содержащий значения в кодировке Base64 для настройки распределенной трассировки и панелей мониторинга ядра пакетов. Секрет распределенной трассировки должен называться sas-auth-secret, а секрет для панелей мониторинга ядра пакетов должен называться grafana-auth-secret.

    apiVersion: v1
    kind: Secret
    metadata:
        name: sas-auth-secrets
        namespace: core
    type: Opaque
    data:
        client_id: <Base64-encoded client ID>
        client_secret: <Base64-encoded client secret>
        redirect_uri_root: <Base64-encoded distributed tracing redirect URI root>
        tenant_id: <Base64-encoded tenant ID>
    
    ---
    
    apiVersion: v1
    kind: Secret
    metadata:
        name: grafana-auth-secrets
        namespace: core
    type: Opaque
    data:
        GF_AUTH_AZUREAD_CLIENT_ID: <Base64-encoded client ID>
        GF_AUTH_AZUREAD_CLIENT_SECRET: <Base64-encoded client secret>
        GF_AUTH_AZUREAD_AUTH_URL: <Base64-encoded authorization URL>
        GF_AUTH_AZUREAD_TOKEN_URL: <Base64-encoded token URL>
        GF_SERVER_ROOT_URL: <Base64-encoded packet core dashboards redirect URI root>
    

Применение секретных объектов Kubernetes

Вам нужно применить объекты секретов Kubernetes, если вы включаете Microsoft Entra ID для сайта, после сбоя ядра пакетов или после обновления YAML-файла объекта секрета Kubernetes.

  1. Войдите в Azure Cloud Shell и выберите PowerShell. Если вы впервые обращаетесь к кластеру при помощи Azure Cloud Shell, следуйте инструкциям по настройке доступа kubectl к кластеру.

  2. Примените секретный объект для распределенной трассировки и панелей мониторинга ядра пакетов, указав имя файла core kubeconfig.

    kubectl apply -f $HOME/secret-azure-ad-local-monitoring.yaml --kubeconfig=<core kubeconfig>

  3. Используйте следующие команды, чтобы проверить правильность применения секретных объектов, указав имя файла core kubeconfig. Вы должны увидеть правильные значения имени, пространства имен и типа, а также размер закодированных значений.

    kubectl describe secrets -n core sas-auth-secrets --kubeconfig=<core kubeconfig>

    kubectl describe secrets -n core grafana-auth-secrets --kubeconfig=<core kubeconfig>

  4. Перезапустите поды распределенной трассировки и поды ядра пакетов.

    1. Получите имя панели мониторинга ядра пакетов pod:

      kubectl get pods -n core --kubeconfig=<core kubeconfig>" | grep "grafana"

    2. Скопируйте выходные данные предыдущего шага и вставьте их в следующую команду, чтобы перезапустить поды.

      kubectl delete pod sas-core-search-0 <packet core dashboards pod> -n core --kubeconfig=<core kubeconfig>

Проверка доступа

Следуйте инструкциям для доступа к веб-графическому интерфейсу распределенной трассировки и панелям мониторинга ядра пакетов, чтобы проверить, можете ли вы получить доступ к локальным средствам мониторинга с помощью Microsoft Entra ID.

Обновление секретных объектов Kubernetes

Выполните этот шаг, если необходимо обновить существующие секретные объекты Kubernetes; Например, после обновления URI перенаправления или продления секрета клиента с истекшим сроком действия.

  1. Внесите необходимые изменения в файл YAML секретного объекта Kubernetes, созданный в разделе "Создание секретных объектов Kubernetes".
  2. Применение объектов Kubernetes Secret.
  3. Проверка доступа.

Следующие шаги

Если вы еще этого не сделали, теперь следует разработать конфигурацию управления политикой для частной мобильной сети. Это позволяет настроить, как экземпляры ядра пакетов применяют характеристики обслуживания (QoS) к трафику. Вы также можете блокировать или ограничивать определенные потоки.