Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения
Разрешения с наименьшими привилегиями
Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись)
Domain.ReadWrite.All
Недоступно.
Делегированные (личная учетная запись Майкрософт)
Не поддерживается.
Не поддерживается.
Для приложений
Domain.ReadWrite.All
Недоступно.
Важно!
Этот метод имеет известную проблему с разрешениями и может потребовать согласия на разрешение Directory.AccessAsUser.All для делегированных сценариев.
Важно!
В делегированных сценариях с рабочими или учебными учетными записями вошедшему пользователю должна быть назначена поддерживаемая роль Microsoft Entra или настраиваемая роль с разрешением поддерживаемой роли. Для этой операции поддерживаются следующие роли с наименьшими привилегиями.
При создании internalDomainFederation можно указать следующие свойства.
Свойство
Тип
Описание
displayName
String
Отображаемое имя федеративного поставщика удостоверений.
issuerUri
String
URI издателя сервера федерации.
metadataExchangeUri
String
URI конечной точки обмена метаданными, используемой для проверки подлинности из расширенных клиентских приложений.
signingCertificate
String
Текущий сертификат, используемый для подписывания маркеров, переданных платформа удостоверений Майкрософт. Сертификат имеет формат строки в кодировке Base 64 общедоступной части сертификата подписи маркера федеративного поставщика удостоверений и должен быть совместим с классом X509Certificate2. Это свойство используется в следующих сценариях:
Если требуется откат за пределами автоматического обновления
Настраивается новая служба федерации
Если новый сертификат подписи маркера отсутствует в свойствах федерации после обновления сертификата службы федерации. Microsoft Entra ID обновляет сертификаты с помощью процесса автоматической переключения, в котором пытается получить новый сертификат из метаданных службы федерации за 30 дней до истечения срока действия текущего сертификата. Если новый сертификат недоступен, Microsoft Entra ID ежедневно отслеживает метаданные и обновляет параметры федерации для домена при появлении нового сертификата.
passiveSignInUri
String
URI, на который направляются веб-клиенты при входе в службы Microsoft Entra.
preferredAuthenticationProtocol
authenticationProtocol
Предпочтительный протокол проверки подлинности. Этот параметр должен быть явно настроен, чтобы поток пассивной проверки подлинности федерации работал. Допустимые значения: wsFed, saml, unknownFutureValue.
Задает предпочтительное поведение для запроса на вход. Допустимые значения: translateToFreshPasswordAuthentication, nativeSupport, disabled, unknownFutureValue.
isSignedAuthenticationRequestRequired
Логический
Если задано значение true, то при отправке запросов на проверку подлинности SAML федеративной поставщику удостоверений SAML Microsoft Entra ID подписывает эти запросы с помощью ключа подписи OrgID. Если задано значение false (по умолчанию), запросы проверки подлинности SAML, отправленные федеративным поставщику удостоверений, не подписываются.
nextSigningCertificate
String
Резервный сертификат для подписи маркеров, который используется для подписи маркеров по истечении срока действия основного сертификата подписи. Отформатированные как строки в кодировке Base 64 общедоступной части сертификата подписи маркера федеративного поставщика удостоверений. Должен быть совместим с классом X509Certificate2. Как и в случае с подписьюCertificate, свойство nextSigningCertificate используется, если требуется откат вне обновления автоматической перенаправки, настраивается новая служба федерации или если новый сертификат подписи маркера отсутствует в свойствах федерации после обновления сертификата службы федерации.
Предоставляет состояние и метку времени последнего обновления сертификата подписи.
federatedIdpMfaBehavior
federatedIdpMfaBehavior
Определяет, принимает ли Microsoft Entra ID MFA, выполняемую федеративным поставщиком удостоверений, когда федеративный пользователь обращается к приложению, управляемому политикой условного доступа, требующей многофакторной проверки подлинности. Допустимые значения: acceptIfMfaDoneByFederatedIdp, enforceMfaByFederatedIdp, rejectMfaByFederatedIdp, unknownFutureValue. Дополнительные сведения см. в разделе Значения federatedIdpMfaBehavior.
Примечание.
модули PowerShell Azure AD и MSOnline устарели с 30 марта 2024 г. Дополнительные сведения см. в статье Обновление для прекращения поддержки. После этой даты поддержка этих модулей ограничивается поддержкой миграции пакета SDK Для Microsoft Graph PowerShell и исправлениями безопасности. Устаревшие модули будут работать до 30 марта 2025 г.
Мы рекомендуем выполнить миграцию в Microsoft Graph PowerShell для взаимодействия с Microsoft Entra ID (ранее Azure AD). Распространенные вопросы о миграции см. в разделе Вопросы и ответы о миграции.
Заметка: В версиях 1.0.x MSOnline может возникнуть сбой после 30 июня 2024 г.
Значения federatedIdpMfaBehavior
Member
Описание
acceptIfMfaDoneByFederatedIdp
Microsoft Entra ID принимает MFA, выполняемую федеративными поставщиками удостоверений. Если федеративный поставщик удостоверений не выполнил MFA, Microsoft Entra ID выполняет MFA.
enforceMfaByFederatedIdp
Microsoft Entra ID принимает MFA, выполняемую федеративными поставщиками удостоверений. Если федеративный поставщик удостоверений не выполнил MFA, он перенаправляет запрос федеративного поставщика удостоверений для выполнения MFA.
rejectMfaByFederatedIdp
Microsoft Entra ID всегда выполняет MFA и отклоняет MFA, выполняемую поставщиком федеративных удостоверений.
Переключение между federatedIdpMfaBehavior и SupportsMfa не поддерживается.
Если задано свойство federatedIdpMfaBehavior, Microsoft Entra ID игнорирует параметр SupportsMfa.
Если свойство federatedIdpMfaBehavior никогда не задано, Microsoft Entra ID продолжит учитывать параметр SupportsMfa.
Если ни federatedIdpMfaBehavior, ни SupportsMfa не заданы, Microsoft Entra ID по умолчанию будет использоваться acceptIfMfaDoneByFederatedIdp поведение.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 201 Created и объект internalDomainFederation в теле отклика.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new InternalDomainFederation
{
OdataType = "#microsoft.graph.internalDomainFederation",
DisplayName = "Contoso",
IssuerUri = "http://contoso.com/adfs/services/trust",
MetadataExchangeUri = "https://sts.contoso.com/adfs/services/trust/mex",
SigningCertificate = "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",
PassiveSignInUri = "https://sts.contoso.com/adfs/ls",
PreferredAuthenticationProtocol = AuthenticationProtocol.WsFed,
ActiveSignInUri = "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed",
SignOutUri = "https://sts.contoso.com/adfs/ls",
PromptLoginBehavior = PromptLoginBehavior.NativeSupport,
IsSignedAuthenticationRequestRequired = true,
NextSigningCertificate = "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",
FederatedIdpMfaBehavior = FederatedIdpMfaBehavior.RejectMfaByFederatedIdp,
};
// To initialize your graphClient, see https://video2.skills-academy.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Domains["{domain-id}"].FederationConfiguration.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
InternalDomainFederation internalDomainFederation = new InternalDomainFederation();
internalDomainFederation.setOdataType("#microsoft.graph.internalDomainFederation");
internalDomainFederation.setDisplayName("Contoso");
internalDomainFederation.setIssuerUri("http://contoso.com/adfs/services/trust");
internalDomainFederation.setMetadataExchangeUri("https://sts.contoso.com/adfs/services/trust/mex");
internalDomainFederation.setSigningCertificate("MIIE3jCCAsagAwIBAgIQQcyDaZz3MI");
internalDomainFederation.setPassiveSignInUri("https://sts.contoso.com/adfs/ls");
internalDomainFederation.setPreferredAuthenticationProtocol(AuthenticationProtocol.WsFed);
internalDomainFederation.setActiveSignInUri("https://sts.contoso.com/adfs/services/trust/2005/usernamemixed");
internalDomainFederation.setSignOutUri("https://sts.contoso.com/adfs/ls");
internalDomainFederation.setPromptLoginBehavior(PromptLoginBehavior.NativeSupport);
internalDomainFederation.setIsSignedAuthenticationRequestRequired(true);
internalDomainFederation.setNextSigningCertificate("MIIE3jCCAsagAwIBAgIQQcyDaZz3MI");
internalDomainFederation.setFederatedIdpMfaBehavior(FederatedIdpMfaBehavior.RejectMfaByFederatedIdp);
InternalDomainFederation result = graphClient.domains().byDomainId("{domain-id}").federationConfiguration().post(internalDomainFederation);