Управление настраиваемыми атрибутами безопасности для приложения

Настраиваемые атрибуты безопасности в идентификаторе Microsoft Entra — это бизнес-атрибуты (пары "ключ-значение"), которые можно определить и назначить объектам Microsoft Entra. Например, можно назначить настраиваемый атрибут безопасности для фильтрации приложений или для определения пользователей с правами доступа. В этой статье описывается назначение, обновление, перечисление или удаление настраиваемых атрибутов безопасности для корпоративных приложений Microsoft Entra.

Необходимые компоненты

Чтобы назначить или удалить настраиваемые атрибуты безопасности для приложения в клиенте Microsoft Entra, вам потребуется:

Важно!

По умолчанию глобальный Администратор istrator и другие роли администратора не имеют разрешений на чтение, определение или назначение настраиваемых атрибутов безопасности.

Назначение, обновление, перечисление или удаление пользовательских атрибутов для приложения

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

Назначение настраиваемых атрибутов безопасности приложению

Совет

Действия, описанные в этой статье, могут немного отличаться на портале, с который вы начинаете работу.

Выполните следующие действия, чтобы назначить настраиваемые атрибуты безопасности через Центр администрирования Microsoft Entra.

  1. Войдите в Центр администрирования Microsoft Entra в качестве атрибутаАдминистратор istrator.

  2. Перейдите к приложениям Identity>Applications>Enterprise.

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

  4. В разделе "Управление" выберите настраиваемые атрибуты безопасности.

  5. Выберите Добавить назначение.

  6. Из раскрывающегося списка Набор атрибутов выберите набор атрибутов.

  7. В поле Имя атрибута выберите настраиваемый атрибут безопасности из списка.

  8. В зависимости от свойств выбранного настраиваемого атрибута безопасности можно ввести одно значение, выбрать значение из готового списка или добавить несколько значений.

    • Для произвольных настраиваемых атрибутов безопасности с одним значением введите нужную величину в поле Назначенные значения.
    • Для предопределенных значений настраиваемых атрибутов безопасности выберите значение из списка Назначенные значения.
    • Для настраиваемых атрибутов безопасности с несколькими значениями выберите Добавить значения, чтобы открыть панель Значения атрибутов, и добавьте значения. Завершив ввод значений, нажмите Готово.

    Screenshot shows how to assign a custom security attribute to an application.

  9. По завершении нажмите кнопку сохранить, чтобы назначить приложению настраиваемые атрибуты безопасности.

Обновление назначенных приложению значений настраиваемых атрибутов безопасности

  1. Войдите в Центр администрирования Microsoft Entra в качестве атрибутаАдминистратор istrator.

  2. Перейдите к приложениям Identity>Applications>Enterprise.

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

  4. В разделе "Управление" выберите настраиваемые атрибуты безопасности.

  5. Найдите назначенное значение настраиваемого атрибута безопасности, которое требуется обновить.

    После назначения пользовательского атрибута безопасности приложению можно изменить только значение настраиваемого атрибута безопасности. Изменять другие свойства настраиваемого атрибута безопасности, такие как набор атрибутов или имя, нельзя.

  6. В зависимости от свойств выбранного настраиваемого атрибута безопасности можно изменить одно значение, выбрать значение из готового списка или изменить несколько значений.

  7. После завершения выберите Сохранить.

Фильтрация приложений на основе настраиваемых атрибутов безопасности

Список настраиваемых атрибутов безопасности, назначенных приложениям, можно отфильтровать на странице "Все приложения ".

  1. Войдите в Центр администрирования Microsoft Entra как минимум средство чтения назначений атрибутов.

  2. Перейдите к приложениям Identity>Applications>Enterprise.

  3. Выберите Добавить фильтры, чтобы открыть панель "Выбор поля".

    Если вы не видите фильтры добавления, выберите баннер, чтобы включить предварительную версию поиска корпоративных приложений.

  4. В разделе Фильтры выберите Настраиваемый атрибут безопасности.

  5. Выберите набор атрибутов и имя атрибута.

  6. В разделе Оператор можно выбрать вариант "равно" (==), "не равно" (!=) или начинается с.

  7. В разделе Значение введите или выберите значение.

    Screenshot showing a custom security attribute filter for applications.

  8. Нажмите кнопку Применить, чтобы применить фильтр.

Удаление настраиваемых назначений атрибутов безопасности для приложения

  1. Войдите в Центр администрирования Microsoft Entra в качестве атрибута Администратор istrator.

  2. Перейдите к приложениям Identity>Applications>Enterprise.

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

  4. В разделе "Управление" выберите настраиваемые атрибуты безопасности (предварительная версия).

  5. Установите флажки для всех назначений настраиваемых атрибутов безопасности, которые необходимо удалить.

  6. Выберите Удалить назначение.

Azure AD PowerShell

Для управления пользовательскими назначениями атрибутов безопасности для приложений в организации Microsoft Entra можно использовать PowerShell. Для управления облачными службами Azure можно использовать перечисленные ниже команды.

Назначение настраиваемого атрибута безопасности с многостроовым значением приложению (субъект-служба) с помощью Azure AD PowerShell

Используйте команду Get-AzureADMSServicePrincipal, чтобы назначить приложению (субъекту-службе) настраиваемый атрибут безопасности с многострочным значением.

  • Набор атрибутов: Engineering
  • Атрибут: Project
  • Тип данных атрибута: коллекция строк
  • Значение атрибута: ("Baker","Cascade")
$attributes = @{
    Engineering = @{
        "@odata.type" = "#Microsoft.DirectoryServices.CustomSecurityAttributeValue"
        "Project@odata.type" = "#Collection(String)"
        Project = @("Baker","Cascade")
    }
}
Set-AzureADMSServicePrincipal -Id 7d194b0c-bf17-40ff-9f7f-4b671de8dc20 -CustomSecurityAttributes $attributes

Обновление настраиваемого атрибута безопасности с помощью многострочной строки для приложения (субъекта-службы) с помощью Azure AD PowerShell

Укажите новый набор значений атрибутов, которые вы хотите отразить в приложении. В этом примере мы добавим еще одно значение для атрибута проекта.

  • Набор атрибутов: Engineering
  • Атрибут: Project
  • Тип данных атрибута: коллекция строк
  • Значение атрибута: ("Alpine","Baker")
$attributesUpdate = @{
    Engineering = @{
        "@odata.type" = "#Microsoft.DirectoryServices.CustomSecurityAttributeValue"
        "Project@odata.type" = "#Collection(String)"
        Project = @("Alpine","Baker")
    }
}
Set-AzureADMSServicePrincipal -Id 7d194b0c-bf17-40ff-9f7f-4b671de8dc20 -CustomSecurityAttributes $attributesUpdate 

Получение настраиваемых назначений атрибутов безопасности для приложения (субъекта-службы) с помощью Azure AD PowerShell

Используйте команду Get-AzureADMSServicePrincipal, чтобы получить назначенные приложению (субъекту-службе) настраиваемые атрибуты безопасности.

Get-AzureADMSServicePrincipal -Select CustomSecurityAttributes
Get-AzureADMSServicePrincipal -Id 7d194b0c-bf17-40ff-9f7f-4b671de8dc20  -Select "CustomSecurityAttributes, Id"

PowerShell для Microsoft Graph

Для управления назначениями настраиваемых атрибутов безопасности для приложений в организации Microsoft Entra можно использовать Microsoft Graph PowerShell. Для управления облачными службами Azure можно использовать перечисленные ниже команды.

Назначение пользовательского атрибута безопасности с многостроовым значением приложению (субъект-служба) с помощью Microsoft Graph PowerShell

Используйте команду Update-MgServicePrincipal, чтобы назначить настраиваемый атрибут безопасности с многострочное значение приложению (субъект-служба).

Учитывая значения

  • Набор атрибутов: Engineering
  • Атрибут: ProjectDate
  • Тип данных атрибута: строка
  • Значение атрибута: "2024-11-15"
#Retrieve the servicePrincipal

$ServicePrincipal = (Get-MgServicePrincipal -Filter "displayName eq 'TestApp'").Id

$customSecurityAttributes = @{
    Engineering = @{
        "@odata.type" = "#Microsoft.DirectoryServices.CustomSecurityAttributeValue"
        "ProjectDate" ="2024-11-15"
    }
}
Update-MgServicePrincipal -ServicePrincipalId $ServicePrincipal -CustomSecurityAttributes $customSecurityAttributes

Обновление настраиваемого атрибута безопасности с помощью многостроочного значения для приложения (субъекта-службы) с помощью Microsoft Graph PowerShell

Укажите новый набор значений атрибутов, которые вы хотите отразить в приложении. В этом примере мы добавим еще одно значение для атрибута проекта.

Учитывая значения

  • Набор атрибутов: Engineering
  • Атрибут: Project
  • Тип данных атрибута: коллекция строк
  • Значение атрибута: ["Baker","Cascade"]
$customSecurityAttributes = @{
    Engineering = @{
        "@odata.type" = "#Microsoft.DirectoryServices.CustomSecurityAttributeValue"
        "Project@odata.type" = "#Collection(String)"
        "Project" = @(
            "Baker"
            "Cascade"
        )
    }
}
Update-MgServicePrincipal -ServicePrincipalId $ServicePrincipal -CustomSecurityAttributes $customSecurityAttributes

Фильтрация приложений на основе настраиваемых атрибутов безопасности с помощью Microsoft Graph PowerShell

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

$appAttributes = Get-MgServicePrincipal -CountVariable CountVar -Property "id,displayName,customSecurityAttributes" -Filter "customSecurityAttributes/Engineering/Project eq 'Baker'" -ConsistencyLevel eventual
$appAttributes | select Id,DisplayName,CustomSecurityAttributes  | Format-List
$appAttributes.CustomSecurityAttributes.AdditionalProperties | Format-List
Id                       : 7d194b0c-bf17-40ff-9f7f-4b671de8dc20
DisplayName              : TestApp
CustomSecurityAttributes : Microsoft.Graph.PowerShell.Models.MicrosoftGraphCustomSecurityAttributeValue

Key   : Engineering
Value : {[@odata.type, #microsoft.graph.customSecurityAttributeValue], [ProjectDate, 2024-11-15], [Project@odata.type, #Collection(String)], [Project, System.Object[]]}

Удаление пользовательских назначений атрибутов безопасности из приложений с помощью Microsoft Graph PowerShell

В этом примере мы удаляем настраиваемое назначение атрибута безопасности, поддерживающее отдельные значения.


$params = @{
    "customSecurityAttributes" = @{
        "Engineering" = @{
            "@odata.type" = "#Microsoft.DirectoryServices.CustomSecurityAttributeValue"
            "ProjectDate" = $null
        }
    }
}
Invoke-MgGraphRequest -Method PATCH -Uri "https://graph.microsoft.com/v1.0/servicePrincipals/$ServicePrincipal" -Body $params

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

$customSecurityAttributes = @{
    Engineering = @{
        "@odata.type" = "#Microsoft.DirectoryServices.CustomSecurityAttributeValue"
        "Project" = @()
    }
}
Update-MgServicePrincipal -ServicePrincipalId $ServicePrincipal -CustomSecurityAttributes $customSecurityAttributes

API Microsoft Graph

Для управления назначениями настраиваемых атрибутов безопасности для приложений в организации Microsoft Entra можно использовать API Microsoft Graph. Выполните следующие вызовы API для управления назначениями.

Другие аналогичные примеры API Microsoft Graph для пользователей см. в разделе "Назначение, обновление, обновление, список" или удаление настраиваемых атрибутов безопасности для пользователя и примеров. Назначение, обновление, список или удаление настраиваемых назначений атрибутов безопасности с помощью API Microsoft Graph.

Назначение пользовательского атрибута безопасности с многостроовым значением приложению (субъект-служба) с помощью API Microsoft Graph

Используйте API Update ServicePrincipal, чтобы назначить настраиваемый атрибут безопасности со строковым значением для приложения.

Учитывая значения

  • Набор атрибутов: Engineering
  • Атрибут: Project
  • Тип данных атрибута: строка
  • Значение атрибута: "Baker"
PATCH https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Content-type: application/json

{
    "customSecurityAttributes":
    {
        "Engineering":
        {
            "@odata.type":"#Microsoft.DirectoryServices.CustomSecurityAttributeValue",
            "Project@odata.type":"#Collection(String)",
            "Project": "Baker"
        }
    }
}

Обновление настраиваемого атрибута безопасности с помощью многостроочного значения для приложения (субъекта-службы) с помощью API Microsoft Graph

Укажите новый набор значений атрибутов, которые вы хотите отразить в приложении. В этом примере мы добавим еще одно значение для атрибута проекта.

PATCH https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Content-type: application/json

{
    "customSecurityAttributes":
    {
        "Engineering":
        {
            "@odata.type":"#Microsoft.DirectoryServices.CustomSecurityAttributeValue",
            "Project@odata.type":"#Collection(String)",
            "Project":["Baker","Cascade"]
        }
    }
}

Фильтрация приложений на основе настраиваемых атрибутов безопасности с помощью API Microsoft Graph

В этом примере фильтруется список приложений с назначением настраиваемых атрибутов безопасности, равным указанному значению. Значение фильтра учитывает регистр. Необходимо добавить ConsistencyLevel=eventual в запрос или заголовок. Чтобы обеспечить правильную маршрутизацию запроса, необходимо также включить $count=true.

GET https://graph.microsoft.com/v1.0/servicePrincipals?$count=true&$select=id,displayName,customSecurityAttributes&$filter=customSecurityAttributes/Engineering/Project eq 'Baker'
ConsistencyLevel: eventual

Удаление настраиваемых назначений атрибутов безопасности из приложения с помощью API Microsoft Graph

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

PATCH https://graph.microsoft.com/v1.0/servicePrincipals/{id}
Content-type: application/json

{
    "customSecurityAttributes":
    {
        "Engineering":
        {
            "@odata.type":"#Microsoft.DirectoryServices.CustomSecurityAttributeValue",
            "Project":[]
        }
    }
}

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