internalDomainFederation を作成する
[アーティクル] 09/18/2024
13 人の共同作成者
フィードバック
この記事の内容
名前空間: microsoft.graph
新しい internalDomainFederation オブジェクトを 作成します。
この API は、次の国内クラウド展開 で使用できます。
グローバル サービス
米国政府機関 L4
米国政府機関 L5 (DOD)
21Vianet が運営する中国
✅
✅
✅
✅
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。
アプリで必要な場合にのみ 、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類 」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス 」を参照してください。
アクセス許可の種類
最小特権アクセス許可
より高い特権のアクセス許可
委任 (職場または学校のアカウント)
Domain.ReadWrite.All
注意事項なし。
委任 (個人用 Microsoft アカウント)
サポートされていません。
サポートされていません。
アプリケーション
Domain.ReadWrite.All
注意事項なし。
重要
このメソッドには 既知のアクセス許可の問題 があり、委任されたシナリオの Directory.AccessAsUser.All アクセス許可への同意が必要になる場合があります。
重要
職場または学校アカウントを使用した委任されたシナリオでは、サインインしているユーザーに、サポートされているMicrosoft Entraロール またはサポートされているロールのアクセス許可を持つカスタム ロールを割り当てる必要があります。 この操作では、次の最小特権ロールがサポートされています。
ドメイン名管理者
外部 ID プロバイダー管理者
ハイブリッド ID 管理者
セキュリティ管理者
HTTP 要求
POST /domains/{domainsId}/federationConfiguration
名前
説明
Authorization
ベアラー {token}。 必須です。
認証と認可 についての詳細をご覧ください。
Content-Type
application/json. 必須です。
要求本文
要求本文で、 internalDomainFederation オブジェクトの JSON 表現を指定します。
internalDomainFederation を作成するときに、次のプロパティを指定できます。
プロパティ
型
説明
displayName
String
フェデレーション ID プロバイダーの表示名。
issuerUri
String
フェデレーション サーバーの発行者 URI。
metadataExchangeUri
String
リッチ クライアント アプリケーションからの認証に使用されるメタデータ交換エンドポイントの URI。
signingCertificate
String
Microsoft ID プラットフォームに渡されるトークンの署名に使用される現在の証明書。 証明書は、フェデレーション IdP のトークン署名証明書のパブリック部分の Base 64 でエンコードされた文字列として書式設定され、X509Certificate2 クラスと互換性がある必要があります。 このプロパティは、次のシナリオで使用されます。 自動ロールオーバー更新プログラムの外部でロールオーバーが必要な場合 新しいフェデレーション サービスが設定されている フェデレーション サービス証明書が更新された後に、新しいトークン署名証明書がフェデレーション プロパティに存在しない場合。 Microsoft Entra IDは、現在の証明書の有効期限が切れる 30 日前に、フェデレーション サービスメタデータから新しい証明書を取得しようとする自動登録プロセスを介して証明書を更新します。 新しい証明書が使用できない場合、Microsoft Entra IDはメタデータを毎日監視し、新しい証明書が使用可能になるとドメインのフェデレーション設定を更新します。
passiveSignInUri
String
Microsoft Entra サービスにサインインするときに Web ベースのクライアントが転送する URI。
preferredAuthenticationProtocol
authenticationProtocol
優先認証プロトコル。 フェデレーションパッシブ認証フローを機能させるには、このパラメーターを明示的に構成する必要があります。 使用可能な値: wsFed
、saml
、unknownFutureValue
。
activeSignInUri
String
Microsoft Entra IDでのシングル サインオン用に設定されたフェデレーション ドメインを使用して認証するときに、アクティブなクライアントによって使用されるエンドポイントの URL。
Set-MsolDomainFederationSettings MSOnline v1 PowerShell コマンドレット の ActiveLogOnUri プロパティに対応します。
signOutUri
String
クライアントがMicrosoft Entra サービスからサインアウトするときにリダイレクトされる URI。
Set-MsolDomainFederationSettings MSOnline v1 PowerShell コマンドレットの LogOffUri プロパティに対応します。
promptLoginBehavior
promptLoginBehavior
サインイン プロンプトの推奨動作を設定します。 使用可能な値: translateToFreshPasswordAuthentication
、nativeSupport
、disabled
、unknownFutureValue
。
isSignedAuthenticationRequestRequired
ブール型
true の場合、SAML 認証要求がフェデレーション SAML IDP に送信されるときに、Microsoft Entra IDは OrgID 署名キーを使用してそれらの要求に署名します。 false (既定値) の場合、フェデレーション IDP に送信された SAML 認証要求は署名されません。
nextSigningCertificate
String
プライマリ署名証明書の有効期限が切れたときにトークンの署名に使用されるフォールバック トークン署名証明書。 フェデレーション IdP のトークン署名証明書のパブリック部分の Base 64 でエンコードされた文字列として書式設定されます。 X509Certificate2 クラスと互換性がある必要があります。
signingCertificate と同様に、自動ロールオーバー更新プログラムの外部でロールオーバーが必要な場合、新しいフェデレーション サービスが設定されている場合、またはフェデレーション サービス証明書が更新された後に新しいトークン署名証明書がフェデレーション プロパティに存在しない場合は、nextSigningCertificate プロパティが使用されます。
signingCertificateUpdateStatus
signingCertificateUpdateStatus
署名証明書の最後の更新の状態とタイムスタンプを提供します。
federatedIdpMfaBehavior
federatedIdpMfaBehavior
フェデレーション ユーザーが MFA を必要とする条件付きアクセス ポリシーによって管理されるアプリケーションにアクセスするときに、フェデレーション IdP によって実行される MFA をMicrosoft Entra IDが受け入れるかどうかを決定します。 使用可能な値: acceptIfMfaDoneByFederatedIdp
、enforceMfaByFederatedIdp
、rejectMfaByFederatedIdp
、unknownFutureValue
。 詳細については、「 federatedIdpMfaBehavior 値 」を参照してください。
注:
Azure AD および MSOnline PowerShell モジュールは、2024 年 3 月 30 日の時点で非推奨となりました。 詳細については、 非推奨の更新プログラム に関するページを参照してください。 この日付以降、これらのモジュールのサポートは、Microsoft Graph PowerShell SDK への移行支援とセキュリティ修正に限定されます。 非推奨のモジュールは、2025 年 3 月 30 日まで引き続き機能します。
Microsoft Entra ID (旧称 Azure AD) と対話するには、Microsoft Graph PowerShell に移行することをお勧めします。 移行に関する一般的な質問については、移行に関する FAQ を参照してください。
手記: バージョン 1.0.x の MSOnline では、2024 年 6 月 30 日以降に中断が発生する可能性があります。
federatedIdpMfaBehavior 値
メンバー
説明
acceptIfMfaDoneByFederatedIdp
Microsoft Entra IDは、フェデレーション ID プロバイダーによって実行される MFA を受け入れます。 フェデレーション ID プロバイダーが MFA を実行しなかった場合、Microsoft Entra IDは MFA を実行します。
enforceMfaByFederatedIdp
Microsoft Entra IDは、フェデレーション ID プロバイダーによって実行される MFA を受け入れます。 フェデレーション ID プロバイダーが MFA を実行しなかった場合、MFA を実行するための要求がフェデレーション ID プロバイダーにリダイレクトされます。
rejectMfaByFederatedIdp
Microsoft Entra IDは常に MFA を実行し、フェデレーション ID プロバイダーによって実行される MFA を拒否します。
注:
federatedIdpMfaBehavior は、Set-MsolDomainFederationSettings MSOnline v1 PowerShell コマンドレット の SupportsMfa プロパティの進化したバージョンです。
federatedIdpMfaBehavior と SupportsMfa の切り替えはサポートされていません。
federatedIdpMfaBehavior プロパティが設定されている場合、Microsoft Entra IDは SupportsMfa 設定を無視します。
federatedIdpMfaBehavior プロパティが設定されていない場合、Microsoft Entra IDは引き続き SupportsMfa 設定を受け入れられます。
federatedIdpMfaBehavior も SupportsMfa も設定されていない場合、Microsoft Entra IDは既定でacceptIfMfaDoneByFederatedIdp
動作になります。
応答
成功した場合、このメソッドは応答コード 201 Created
と、応答本文に internalDomainFederation オブジェクトを返します。
例
要求
POST https://graph.microsoft.com/v1.0/domains/contoso.com/federationConfiguration
Content-Type: application/json
{
"@odata.type": "#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": "wsFed",
"activeSignInUri": "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed",
"signOutUri": "https://sts.contoso.com/adfs/ls",
"promptLoginBehavior": "nativeSupport",
"isSignedAuthenticationRequestRequired": true,
"nextSigningCertificate": "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",
"federatedIdpMfaBehavior": "rejectMfaByFederatedIdp"
}
// 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://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Domains["{domain-id}"].FederationConfiguration.PostAsync(requestBody);
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
mgc domains federation-configuration create --domain-id {domain-id} --body '{\
"@odata.type": "#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": "wsFed",\
"activeSignInUri": "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed",\
"signOutUri": "https://sts.contoso.com/adfs/ls",\
"promptLoginBehavior": "nativeSupport",\
"isSignedAuthenticationRequestRequired": true,\
"nextSigningCertificate": "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",\
"federatedIdpMfaBehavior": "rejectMfaByFederatedIdp"\
}\
'
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewInternalDomainFederation()
displayName := "Contoso"
requestBody.SetDisplayName(&displayName)
issuerUri := "http://contoso.com/adfs/services/trust"
requestBody.SetIssuerUri(&issuerUri)
metadataExchangeUri := "https://sts.contoso.com/adfs/services/trust/mex"
requestBody.SetMetadataExchangeUri(&metadataExchangeUri)
signingCertificate := "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI"
requestBody.SetSigningCertificate(&signingCertificate)
passiveSignInUri := "https://sts.contoso.com/adfs/ls"
requestBody.SetPassiveSignInUri(&passiveSignInUri)
preferredAuthenticationProtocol := graphmodels.WSFED_AUTHENTICATIONPROTOCOL
requestBody.SetPreferredAuthenticationProtocol(&preferredAuthenticationProtocol)
activeSignInUri := "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed"
requestBody.SetActiveSignInUri(&activeSignInUri)
signOutUri := "https://sts.contoso.com/adfs/ls"
requestBody.SetSignOutUri(&signOutUri)
promptLoginBehavior := graphmodels.NATIVESUPPORT_PROMPTLOGINBEHAVIOR
requestBody.SetPromptLoginBehavior(&promptLoginBehavior)
isSignedAuthenticationRequestRequired := true
requestBody.SetIsSignedAuthenticationRequestRequired(&isSignedAuthenticationRequestRequired)
nextSigningCertificate := "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI"
requestBody.SetNextSigningCertificate(&nextSigningCertificate)
federatedIdpMfaBehavior := graphmodels.REJECTMFABYFEDERATEDIDP_FEDERATEDIDPMFABEHAVIOR
requestBody.SetFederatedIdpMfaBehavior(&federatedIdpMfaBehavior)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
federationConfiguration, err := graphClient.Domains().ByDomainId("domain-id").FederationConfiguration().Post(context.Background(), requestBody, nil)
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
// 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);
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
const internalDomainFederation = {
'@odata.type': '#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: 'wsFed',
activeSignInUri: 'https://sts.contoso.com/adfs/services/trust/2005/usernamemixed',
signOutUri: 'https://sts.contoso.com/adfs/ls',
promptLoginBehavior: 'nativeSupport',
isSignedAuthenticationRequestRequired: true,
nextSigningCertificate: 'MIIE3jCCAsagAwIBAgIQQcyDaZz3MI',
federatedIdpMfaBehavior: 'rejectMfaByFederatedIdp'
};
await client.api('/domains/contoso.com/federationConfiguration')
.post(internalDomainFederation);
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\InternalDomainFederation;
use Microsoft\Graph\Generated\Models\AuthenticationProtocol;
use Microsoft\Graph\Generated\Models\PromptLoginBehavior;
use Microsoft\Graph\Generated\Models\FederatedIdpMfaBehavior;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new InternalDomainFederation();
$requestBody->setOdataType('#microsoft.graph.internalDomainFederation');
$requestBody->setDisplayName('Contoso');
$requestBody->setIssuerUri('http://contoso.com/adfs/services/trust');
$requestBody->setMetadataExchangeUri('https://sts.contoso.com/adfs/services/trust/mex');
$requestBody->setSigningCertificate('MIIE3jCCAsagAwIBAgIQQcyDaZz3MI');
$requestBody->setPassiveSignInUri('https://sts.contoso.com/adfs/ls');
$requestBody->setPreferredAuthenticationProtocol(new AuthenticationProtocol('wsFed'));
$requestBody->setActiveSignInUri('https://sts.contoso.com/adfs/services/trust/2005/usernamemixed');
$requestBody->setSignOutUri('https://sts.contoso.com/adfs/ls');
$requestBody->setPromptLoginBehavior(new PromptLoginBehavior('nativeSupport'));
$requestBody->setIsSignedAuthenticationRequestRequired(true);
$requestBody->setNextSigningCertificate('MIIE3jCCAsagAwIBAgIQQcyDaZz3MI');
$requestBody->setFederatedIdpMfaBehavior(new FederatedIdpMfaBehavior('rejectMfaByFederatedIdp'));
$result = $graphServiceClient->domains()->byDomainId('domain-id')->federationConfiguration()->post($requestBody)->wait();
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
Import-Module Microsoft.Graph.Identity.DirectoryManagement
$params = @{
"@odata.type" = "#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 = "wsFed"
activeSignInUri = "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed"
signOutUri = "https://sts.contoso.com/adfs/ls"
promptLoginBehavior = "nativeSupport"
isSignedAuthenticationRequestRequired = $true
nextSigningCertificate = "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI"
federatedIdpMfaBehavior = "rejectMfaByFederatedIdp"
}
New-MgDomainFederationConfiguration -DomainId $domainId -BodyParameter $params
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.internal_domain_federation import InternalDomainFederation
from msgraph.generated.models.authentication_protocol import AuthenticationProtocol
from msgraph.generated.models.prompt_login_behavior import PromptLoginBehavior
from msgraph.generated.models.federated_idp_mfa_behavior import FederatedIdpMfaBehavior
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = InternalDomainFederation(
odata_type = "#microsoft.graph.internalDomainFederation",
display_name = "Contoso",
issuer_uri = "http://contoso.com/adfs/services/trust",
metadata_exchange_uri = "https://sts.contoso.com/adfs/services/trust/mex",
signing_certificate = "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",
passive_sign_in_uri = "https://sts.contoso.com/adfs/ls",
preferred_authentication_protocol = AuthenticationProtocol.WsFed,
active_sign_in_uri = "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed",
sign_out_uri = "https://sts.contoso.com/adfs/ls",
prompt_login_behavior = PromptLoginBehavior.NativeSupport,
is_signed_authentication_request_required = True,
next_signing_certificate = "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",
federated_idp_mfa_behavior = FederatedIdpMfaBehavior.RejectMfaByFederatedIdp,
)
result = await graph_client.domains.by_domain_id('domain-id').federation_configuration.post(request_body)
プロジェクトに SDK を追加 し、authProvider インスタンスを作成 する方法の詳細については、SDK のドキュメント を参照してください。
応答
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.internalDomainFederation",
"id": "6601d14b-d113-8f64-fda2-9b5ddda18ecc",
"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": "wsFed",
"activeSignInUri": "https://sts.contoso.com/adfs/services/trust/2005/usernamemixed",
"signOutUri": "https://sts.contoso.com/adfs/ls",
"promptLoginBehavior": "nativeSupport",
"isSignedAuthenticationRequestRequired": true,
"nextSigningCertificate": "MIIE3jCCAsagAwIBAgIQQcyDaZz3MI",
"signingCertificateUpdateStatus": {
"certificateUpdateResult": "Success",
"lastRunDateTime": "2021-08-25T07:44:46.2616778Z"
},
"federatedIdpMfaBehavior": "rejectMfaByFederatedIdp"
}