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


Обновление servicePrincipal

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Обновление свойств объекта servicePrincipal.

Важно!

Использование метода PATCH для настройки passwordCredential не поддерживается. Используйте методы addPassword и removePassword, чтобы обновить пароль или секрет для servicePrincipal.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Application.ReadWrite.All Directory.ReadWrite.All
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Приложение Application.ReadWrite.OwnedBy Application.ReadWrite.All, Directory.ReadWrite.All

Примечание.

  • Чтобы обновить свойство customSecurityAttributes , выполните следующие действия:
    • В делегированных сценариях администратору должна быть назначена роль администратора назначения атрибутов , а приложению — делегированное разрешение CustomSecAttributeAssignment.ReadWrite.All .
    • В сценариях только для приложений, использующих разрешения Microsoft Graph, приложению должно быть предоставлено разрешение CustomSecAttributeAssignment.ReadWrite.All .

HTTP-запрос

Вы можете обратиться к субъекту-службе, используя его идентификатор или appId. Id и appId называются идентификатором объекта и идентификатором приложения (клиента) соответственно в регистрациях приложений в Центр администрирования Microsoft Entra.

PATCH /servicePrincipals/{id}
PATCH /servicePrincipals(appId='{appId}')

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.

Текст запроса

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

Свойство Тип Описание
accountEnabled Boolean Значение true, если учетная запись субъекта-службы включена. В противном случае используется значение false.
addIns addIn Определяет пользовательское поведение, которое служба может использовать для вызова приложения в определенных контекстах. Например, приложения, которые способны визуализировать файловые потоки, могут установить свойство addIns для его функции "FileHandler". Это позволяет таким службам, как Microsoft 365, вызывать приложение в контексте документа, над которым работает пользователь.
alternativeNames Коллекция строк Используется для получения субъектов-служб по подпискам, для идентификации групп ресурсов и полных идентификаторов ресурсов для управляемых удостоверений.
appRoleAssignmentRequired Boolean Указывает, требуется ли appRoleAssignment пользователю или группе, прежде чем Microsoft Entra ID выдаст пользователю или маркер доступа приложению. Значение null не допускается.
appRoles Коллекция appRole Роли приложения, предоставляемые связанным приложением. Дополнительные сведения см. в определении свойства appRoles в ресурсе приложения . Значение null не допускается.
customSecurityAttributes customSecurityAttributeValue Открытый сложный тип, который содержит значение настраиваемого атрибута безопасности, назначенного объекту каталога.
  • Чтобы обновить это свойство в делегированных сценариях, вызывающему субъекту должна быть назначена роль администратора назначения атрибутов, а приложению предоставлено делегированное разрешение CustomSecAttributeAssignment.ReadWrite.All .
  • Чтобы обновить это свойство в сценариях только для приложений с разрешениями Microsoft Graph, приложению должно быть предоставлено разрешение CustomSecAttributeAssignment.ReadWrite.All .
  • displayName String Отображаемое имя для субъекта-службы.
    homepage String Главная или начальная страница приложения.
    keyCredentials Коллекция keyCredential Коллекция ключевых учетных данных, связанных с субъектом-службой. Значение null не допускается.
    loginUrl String Указывает URL-адрес, по которому поставщик услуг перенаправляет пользователя на Microsoft Entra ID для проверки подлинности. Microsoft Entra ID использует URL-адрес для запуска приложения из Microsoft 365 или Microsoft Entra Мои приложения. Если этот параметр не задан, Microsoft Entra ID выполняет вход, инициированный поставщиком удостоверений, для приложений, настроенных с помощью единого входа на основе SAML. Пользователь запускает приложение из Microsoft 365, Microsoft Entra Мои приложения или URL-адреса единого входа Microsoft Entra.
    logoutUrl String Указывает URL-адрес, который будет использоваться службой авторизации Майкрософт для выхода пользователя с помощью протоколов front-channel, back-channel или SAML logout.
    notificationEmailAddresses Коллекция строк Указывает список адресов электронной почты, на которые Microsoft Entra ID отправляет уведомление, когда активный сертификат приближается к дате окончания срока действия. Это касается только сертификатов, используемых для подписи маркера SAML, выданного для приложений коллекции Microsoft Entra.
    publishedPermissionScopes Коллекция permissionScope Разрешения OAuth 2.0, предоставляемые связанным приложением. Дополнительные сведения см. в определении свойства oauth2PermissionScopes для ресурса приложения . Значение null не допускается.
    preferredSingleSignOnMode Строка Указывает режим единого входа, настроенный для этого приложения. Microsoft Entra ID использует предпочтительный режим единого входа для запуска приложения из Microsoft 365 или Microsoft Entra Мои приложения. Поддерживаются значения: password, saml, external, oidc.
    preferredTokenSigningKeyEndDateTime DateTimeOffset Указывает дату окончания срока действия keyCredential, использованного для подписи маркера, помеченного с помощью preferredTokenSigningKeyThumbprint.
    preferredTokenSigningKeyThumbprint String Зарезервировано только для внутреннего использования. Не записывайте это свойство и не полагайтесь на нее иным образом. Может быть удалено в будущих версиях.
    publisherName String Отображаемое имя клиента, в котором указано связанное приложение.
    replyUrls Коллекция String URL-адреса, которым отправляются маркеры пользователей для входа с помощью связанного приложения, или URI перенаправления, которым отправляются коды авторизации OAuth 2.0 и маркеры доступа для связанного приложения. Значение null не допускается.
    samlSingleSignOnSettings samlSingleSignOnSettings Коллекция для параметров, связанных с единым входом SAML.
    ServicePrincipalNames Коллекция объектов string Содержит список объектов identifiersUris, скопированных из связанного объекта application. К гибридным приложениям можно добавить дополнительные значения. Эти значения можно использовать для определения разрешений, предоставляемых этим приложением в Microsoft Entra ID. Пример.
    • Клиентские приложения, запрашивающие разрешения на доступ к этому ресурсу, могут использовать эти URI для указания необходимых разрешений в свойстве requiredResourceAccess манифеста приложения или в колонке "Разрешения API" в интерфейсе регистрации приложений.
    • Клиентские приложения могут указать URI ресурса, основанный на значениях этого свойства для получения маркера доступа, который является URI, возвращенным в утверждении "aud".

    Оператор "any" требуется для выражений фильтров, применяемых к многозначным свойствам. Значение null не допускается.
    tags Коллекция String Значение null не допускается.
    tokenEncryptionKeyId String Задает значение открытого ключа keyId из коллекции keyCredentials. После настройки Microsoft Entra ID выдает маркеры для этого приложения, зашифрованные с помощью ключа, указанного этим свойством. Код приложения, получающий зашифрованный маркер, должен использовать соответствующий закрытый ключ для расшифровки маркера, прежде чем его можно будет применить для пользователя, выполнившего вход.

    Отклик

    В случае успеха этот метод возвращает код отклика 204 No Content и обновленный объект servicePrincipal в тексте отклика.

    Примеры

    Пример 1. Обновление свойств указанного субъекта-службы

    Запрос

    Ниже показан пример запроса.

    PATCH https://graph.microsoft.com/beta/servicePrincipals/{id}
    Content-type: application/json
    
    {
      "appRoleAssignmentRequired": true
    }
    

    Отклик

    Ниже показан пример отклика. Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

    HTTP/1.1 204 No Content
    

    Пример 2. Назначение настраиваемого атрибута безопасности со строковым значением субъекту-службе

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

    • Набор атрибутов: Engineering
    • Атрибут: ProjectDate
    • Тип данных атрибута: строка
    • Значение атрибута: "2022-10-01"

    Чтобы назначить настраиваемые атрибуты безопасности, вызывающему субъекту должна быть присвоена роль администратора назначения атрибутов и должно быть предоставлено разрешение CustomSecAttributeAssignment.ReadWrite.All.

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

    Запрос

    PATCH https://graph.microsoft.com/beta/servicePrincipals/{id}
    Content-type: application/json
    
    {
        "customSecurityAttributes":
        {
            "Engineering":
            {
                "@odata.type":"#Microsoft.DirectoryServices.CustomSecurityAttributeValue",
                "ProjectDate":"2022-10-01"
            }
        }
    }
    

    Отклик

    HTTP/1.1 204 No Content