SSOは既定ドメインではできないため、AzureADにカスタムドメインを登録しておく必要があります。
EVECLOUDへのアプリケーション追加と準備
- はじめに、登録の際に必要なファイルを準備します。以下のURLを開き、保存しておきます。
https://nexus.microsoftonline-p.com/federationmetadata/saml20/federationmetadata.xml - 管理ツールの[アプリケーションの管理]ページにてアプリケーションの登録を行います。登録の際、[アプリケーションの種類]は[SAML]を選択します。
登録方法の詳細は「アプリケーションの管理>アプリケーションの登録」を参照してください。
- 「アプリケーションの管理」のリストにて、作成したアプリケーション「Microsoft 365」を選択し、設定画面を開きます。

- [Service Provider] タブを開き、「サービスプロバイダーのメタデータをインポートする」にチェックを入ます。[ファイル選択]ボタンをクリック後、先ほど準備しておいたxml ファイルを選択します。

- [SSO設定] タブから、必要に応じてSSOに関する設定を行ってください。
詳細は「アプリケーションの管理>共通の設定項目」を参照してください。
- すべての設定を終えたら[保存]ボタンをクリックして登録します。
アプリケーションへの認証セット設定
アプリケーションへの認証セットはグループ単位で行います。
グループ管理から該当のグループを選択し、[グループの認証方法]タブにて対象のアプリケーションを選択し設定を行います。
設定方法の詳細は「アプリケーションの管理>アプリケーションへの認証セット設定」を参照してください。
Microsoft 365側の設定
Microsoft Graph PowerShell SDKのインストール
- Microsoft Graph PowerShell SDKをインストールしていきます。
Powershellを管理者権限で立ち上げ、以下のコマンドを実行します。
インストール完了までに数分掛かります。PS C:\WINDOWS\system32> Install-Module Microsoft.Graph 続行するには NuGet プロバイダーが必要です PowerShellGet で NuGet ベースのリポジトリを操作するには、'2.8.5.201' 以降のバージョンの NuGet プロバイダーが必要です。NuGet プロバイダーは 'C:\Program Files\PackageManagement\ProviderAssemblies' または 'C:\Users\sugimoto_kazuki.KIRK\AppData\Local\PackageManagement\ProviderAssemblies' に配置する必要があります。'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force' を実行して NuGetプロバイダーをインストールすることもできます。今すぐ PowerShellGet で NuGet プロバイダーをインストールしてインポートしますか? [Y] はい(Y) [N] いいえ(N) [S] 中断(S) [?] ヘルプ (既定値は "Y"): Y 信頼されていないリポジトリ 信頼されていないリポジトリからモジュールをインストールしようとしています。このリポジトリを信頼する場合は、Set-PSRepository コマンドレットを実行して、リポジトリの InstallationPolicy の値を変更してください。'PSGallery' からモジュールをインストールしますか? [Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): Y
- インストール完了の確認は以下のコマンドで行います。
PS C:\WINDOWS\system32> Get-InstalledModule Microsoft.Graph Version Name Repository Description ------- ---- ---------- ----------- 2.15.0 Microsoft.Graph PSGallery Microsoft Graph PowerShell module
フェデレーション設定
- 下記コマンドでMicrosoft Graphへ接続します。
接続する際にMicrosoftアカウントのログイン画面とアクセス許可要求が表示されますのでAzureADで管理しているユーザでログインしてくさださい。PS C:\WINDOWS\system32> Connect-MgGraph -Scopes "Domain.ReadWrite.All","Directory.AccessAsUser.All" Welcome To Microsoft Graph!
- 下記のコマンドでMicrosoft 365側にフェデレーションの設定を追加します。各パラメータ値については、設定する環境の値に変更してください。
$dom = "magatamademo2.dds.nagoya" $LogOnUrl = "https://saml.dds.click/saml/dds/sso/70009" $LogOffUrl = "https://saml.dds.click/saml/dds/slo/70009" $MetadataUrl = "https://saml.dds.click/saml/dds/metadata/70009" $MySigningCert = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" $uri = "https://saml.dds.click/saml/dds/metadata/70009" $Protocol = "saml" New-MgDomainFederationConfiguration ` -DomainId $dom ` -IssuerUri $uri ` -SignOutUri $LogOffUrl ` -PassiveSignInUri $LogOnUrl ` -MetadataExchangeUri $MetadataUrl ` -SigningCertificate $MySigningCert ` -FederatedIdpMfaBehavior "acceptIfMfaDoneByFederatedIdp" ` -PreferredAuthenticationProtocol $Protocol
パラメータ詳細 引数 内容 DomainId 対象となるカスタムドメインです。
既定ドメイン(onmicrosoft.com)はSAML連携に使用できません。IssuerUri SAML IdPのIssuerとなるURLです。
EVECLOUDのアプリケーションページのメタデータURLを記載します。SignOutUri ログアウト時に使用するURLです。
EVECLOUDのアプリケーションページのログアウトURLを記載します。PassiveSignInUri ログイン時にSAMLRequestを送るURLです。
EVECLOUDのアプリケーションページのSSO URLを記載します。MetadataExchangeUri IdP側のメタデータのURLです。
EVECLOUDのアプリケーションページのメタデータURLを記載します。SigningCertificate 署名検証に使用する、IdP側のX509証明書です。
EVECLOUDのアプリケーションページの「X.509証明書のダウンロード」ボタンを押下してダウンロードしたファイルの内容を記載します。FederatedIdpMfaBehavior acceptIfMfaDoneByFederatedIdpを記載します。
https://learn.microsoft.com/ja-jp/graph/api/resources/internaldomainfederation?view=graph-rest-1.0#federatedidpmfabehavior-valuesPreferredAuthenticationProtocol "saml"と指定します。 - Get-MgDomainコマンドでカスタムドメインにフェデレーションが設定されているか確認できます。以下のように、AuthenticationTypeが Federated になっていればフェデレーションが設定されていることになります。設定されていなければManagedと表示されます。
> Get-MgDomain
Id AuthenticationType AvailabilityStatus IsAdminManaged IsDefault IsInitial IsRoot IsVerified Manufacturer Model PasswordNotificationWindowInDays PasswordValidityPeriodInDays
-- ------------------ ------------------ -------------- --------- --------- ------ ---------- ------------ ----- -------------------------------- ----------------------------
magatamademo2.dds.nagoya Federated True False False True True 14 730
magatamademo3.dds-dev.space Federated True False False True True
ddsdev.onmicrosoft.com Managed True True True True True 14 730
また、Get-MgDomainFederationConfigurationを使うとカスタムドメインの設定詳細を確認できます。> Get-MgDomainFederationConfiguration -DomainId magatamademo2.dds.nagoya | Format-List
ActiveSignInUri :
DisplayName :
FederatedIdpMfaBehavior : acceptIfMfaDoneByFederatedIdp
Id : cc824730-90ef-480f-b1e7-807333150b68
IsSignedAuthenticationRequestRequired :
IssuerUri : https://saml.dds.click/saml/dds/metadata/70009
MetadataExchangeUri : https://saml.dds.click/saml/dds/metadata/70009
NextSigningCertificate :
PassiveSignInUri : https://saml.dds.click/saml/dds/sso/70009
PreferredAuthenticationProtocol : saml
PromptLoginBehavior :
SignOutUri : https://saml.dds.click/saml/dds/slo/70009
SigningCertificate : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SigningCertificateUpdateStatus : Microsoft.Graph.PowerShell.Models.MicrosoftGraphSigningCertificateUpdateStatus
AdditionalProperties : {}
フェデレーションの無効化
フェデレーションを無効化するには、 Update-MgDomainを使用します。
- DomainIdにカスタムドメイン名を設定し、AuthenticationTypeをManagedとすることでフェデレーションを無効にできます。
> Update-MgDomain -DomainId "magatamademo2.dds.nagoya" -AuthenticationType "Managed"
- Get-MgDomainでフェデレーションが無効(Managed)になっていることを確認できます。
> Get-MgDomain
Id AuthenticationType AvailabilityStatus IsAdminManaged IsDefault IsInitial IsRoot IsVerified Manufacturer Model PasswordNotificationWindowInDays PasswordValidityPeriodInDays
-- ------------------ ------------------ -------------- --------- --------- ------ ---------- ------------ ----- -------------------------------- ----------------------------
magatamademo2.dds.nagoya Managed True False False True True 14 730
magatamademo3.dds-dev.space Federated True False False True True
ddsdev.onmicrosoft.com Managed True True True True True 14 730
ユーザ設定
フェデレーション設定で行った「Microsoft Graphへの接続」を行い、Microsoft Graphへ接続済みとします。
- New-MgUserコマンドでユーザーを作成します。
各パラメータ値については、設定する環境の値に変更してください。$PasswordProfile = @{
Password = 'xxxxxxxxxx'
}
New-MgUser `
-UserPrincipalName sato_taro@magatamademo2.dds.nagoya `
-MailNickName 'TaroSato' `
-PasswordProfile $PasswordProfile `
-AccountEnabled `
-DisplayName "Taro Sato" `
-UsageLocation "JP" `
-OnPremisesImmutableId sato_taro@magatamademo2.dds.nagoyaパラメータ詳細 引数 内容 UserPrincipalName ユーザーのユーザー プリンシパル名 (UPN) です。
作成するユーザーのメールアドレスを記載します。MailNickName ユーザーのメール別名です。 PasswordProfile ユーザーのパスワードです。 AccountEnabled アカウントを有効にします。 DisplayName デバイスの表示名です。 UsageLocation ISO標準3166に基づく2文字の国コードです。
日本の場合、JPを記載します。OnPremisesImmutableId オンプレミスのActive DirectoryユーザーアカウントをそのMicrosoft Entraユーザーオブジェクトに関連付けるために使用されます。
UserPrincipalNameと同じメールアドレスを記載します。 - Get-MgUserコマンドでユーザーの登録状況を確認できます。
Get-MgUser -ALL -Select Id,UserPrincipalName,OnPremisesImmutableId | ft Id,UserPrincipalName,OnPremisesImmutableId
出力結果は以下のようになります。
OnPremisesImmutableIdがないユーザーについては、SAMLを使用することができません。
コンソールから作成したユーザーの場合、OnPremisesImmutableIdがない場合があります。
そのようなユーザーでSAMLを使用したい場合、ユーザーデータを更新する必要があります。Id UserPrincipalName OnPremisesImmutableId -- ----------------- --------------------- 372b642c-368e-4f91-a81e-5321de44e16c sato_taro@magatamademo2.dds.nagoya sato_taro@magatamademo2.dds.nagoya d2eec78f-1c6f-4745-b6ce-9590b7502079 sato_taro2@magatamademo2.dds.nagoya 7aa00a55-87ae-434d-a335-e77ceef8aa54 sato_taro3@magatamademo2.dds.nagoya sato_taro3@magatamademo2.dds.nagoya b9ce5a88-4122-4e71-a3c7-2f5f1ad7f0cf test-user8@ddsdev.onmicrosoft.com
- Update-MgUserコマンドでユーザーの登録データを更新できます。
Update-MgUser -UserId "372b642c-368e-4f91-a81e-5321de44e16c" -OnPremisesImmutableId "sato_taro@magatamademo2.dds.nagoya"
更新後、Get-MgUserコマンドでユーザーの登録状況を確認し、OnPremisesImmutableIdが設定されていることを確認します。パラメータ詳細 引数 内容 UserId 変更したいユーザーのGet-MgUserで出力したIdを記載します。 OnPremisesImmutableId 変更したいユーザーのUserPrincipalNameを記載します。
EVECLOUDユーザーのSAMLログイン設定
- EVECLOUD管理ツールにて、「グループの管理」>「ユーザー管理」からSAMLログイン設定をさせたいユーザーを選択し、「ユーザー設定」画面を開きます。左メニューの[SAML]を選択し、SAMLアプリケーション一覧から登録済みのSAML「Microsoft 365」を選択します。

- 「SPNameの属性」によってダイアログの表示が異なります。
「SAMLログインユーザー1」の項目にMicrosoft 365側で設定されている「OnPremisesImmutableId」の値を入力し、[決定]ボタンをクリックします。
設定方法の詳細は「SAMLの登録>EVECLOUDユーザーのSAMLログイン設定」を参照してください。
- [保存]ボタンをクリックし、設定内容を保存します。
Microsoft 365のログイン
- 以下のURLにアクセスし、Microsoft 365のログインを試します。
https://www.office.com/ - サインインをクリックします。

- 登録したoffice365のユーザーのメールアドレスを入力して、次へを押します。

- EVECLOUDのログインページに遷移します。

- EVECLOUD側のユーザーIDで認証することでMicrosoft 365にログインできます。

