Microsoft Entra認証ワークフロー
Configuration Manager (現在のブランチ) に適用
この記事は、Microsoft Entra ID に参加している Windows デバイス上のConfiguration Manager クライアントのインストールと登録プロセスに関する技術的なリファレンスです。 デバイス認証のワークフロー プロセスの詳細が表示されます。
注:
Windows クライアントは、Microsoft Entra テナントに参加すると、職場参加 (WPJ) 証明書を取得します。 証明書が見つからない場合、Configuration Manager クライアントはトークンMicrosoft Entra要求できません。 トークンがないと、クライアントは Configuration Manager セキュリティ トークン サービス (CCM_STS) 通信チャネルを使用して、Configuration Manager サイト システムで認証Microsoft Entraできません。
クライアントのインストール
このワークフロー サンプルでは、次の ccmsetup コマンド ライン プロパティを使用して、インターネット経由で Windows デバイスに Configuration Manager クライアントをインストールしました。
CCMHOSTNAME="CMG.CLOUDAPP.NET/CCM_Proxy_MutualAuth/72186325152220500" SMSSITECODE="MEM"
1. ccmsetup からの情報要求をMicrosoft Entraする
インターネットからインストールされたクライアントでは、Microsoft Entra認証を使用するために特定のコマンド ライン プロパティが必要です。 これらのプロパティは 、internet ccmsetup のコマンド ラインに含めることができますが、必須ではありません。 Microsoft Entraプロパティを使用しない場合、ccmsetup は、 と AADRESOURCEURI
プロパティをAADCLIENTAPPID
クラウド管理ゲートウェイ (CMG) に要求します。 デバイスの Microsoft Entra TenantID を参照として使用します。 Configuration Managerでクライアントの TenantID をオンボードしていない場合、クライアントのインストールを続行するために必要なプロパティが CCMsetup に与えられません。
次のエントリは、クライアントの ccmsetup.log に記録されます。
Getting AAD info from CMG 'CMG.CLOUDAPP.NET'
SMS CCM 5.0: Host=CMG.CLOUDAPP.NET, Path=/CCM_Proxy_ServerAuth/AADAuthInfo?TenantID=9aaf466a-3f40-4468-b3cd-f0010f21f05a, Port=443, Protocol=https, CcmTokenAuth=0, Flags=0x1304, Options=0xe0
Created connection on port 443
Enabled SSL revocation check.
重要
ccmsetup 中に、デバイスは CMG サーバー認証証明書を検証する必要があります。 CMG サーバー認証証明書のルート証明機関 (CA) 証明書は、チェーン検証のためにクライアントで使用できる必要があります。 PKI を使用する場合、ルート CA がインターネット上で発行されていない場合は、ルート CA 証明書をデバイスのルート CA ストアに追加します。
ルート CA 証明書失効リスト (CRL) がインターネット上で発行されていない場合は、ccmsetup コマンド ラインに パラメーターを追加 /nocrlcheck
します。
2. トークン要求のMicrosoft Entra
Windows Azure AD ドメイン参加済みデバイスでは、ccmsetup は Microsoft Entra プロパティを使用して、ADALOperation プロバイダーを呼び出すMicrosoft Entra トークンを要求します。 次のエントリは、クライアントの ccmsetup.log に記録されます。
Getting AAD (device) token with: ClientId = 0b7c8ab3-9ea1-4ffa-b2b9-8ffdd944bd8b, ResourceUrl = https://ConfigMgrService, AccountId = https://login.microsoftonline.com/common/oauth2/token
デバイス トークン要求が失敗した場合、ccmsetup はフォールバックして、Microsoft Entra ユーザー トークンの要求を試みます。 デバイスが Microsoft Entra デバイスまたはユーザー トークンを取得できない場合、ccmsetup は続行されません。
注:
デバイスに有効な PKI クライアント認証証明書がある場合、ccmsetup は常に証明書を優先します。 この場合、クライアントは PKI クライアントとしてインストールされ、Microsoft Entra認証は使用されません。
WAM token request failed. Status 5, Details 'AAD WAM extension error'
Failed to get AAD token..
Unknown error (Error: D0090016; Source: Unknown)
Failed to get AAD token for 'S-1-5-18' from WAM API. Error 0xd0090016
Falling back to get user 'S-1-5-21-1527250992-855612568-2252598708-1604' token for system...
Getting AAD (user) token with: ClientId = 0b7c8ab3-9ea1-4ffa-b2b9-8ffdd944bd8, ResourceUrl = https://ConfigMgrService, AccountId = 149FC29A-ECE3-123-A3C1-123456F035A6E
Retrieved AAD token for AAD user 'e8838041-db7a-42d5-b9ae-78813910e4cc'
3. クライアント トークン要求Configuration Manager
クライアントは、Microsoft Entra トークンを使用して、Configuration Manager クライアント (CCM) トークンを要求します。 ccmsetup とサイト間の運用通信では、承認トークンとして CCM トークンが使用されます (CcmTokenAuth=1)。
3.1 クライアントが CCM トークン要求を CMG に送信する
次のエントリは、クライアントの ccmsetup.log に記録されます。
Getting CCM Token from STS server 'cmg.cloudapp.net/CCM_PROXY_MutualAuth/72186325152220500'
Getting CCM Token from https://cmg.cloudapp.net/CCM_PROXY_MutualAuth/72186325152220500/CCM_STS
3.2 CMG 接続ポイントへの CMG 転送
次のエントリは、CMG VM インスタンスの CMGService.log に記録されます。
RequestUri: /CCM_PROXY_SERVERAUTH/72057594037937981/CCM_STS RequestCount: 1 RequestSize: 1974 Bytes ResponseCount: 1 ResponseSize: 1566 Bytes AverageElapsedTime: 218 ms~~ $$<CMGService><06-24-2020 15:31:46.376+00><thread=4992 (0x1380)>
ヒント
Configuration Managerは、CMGService.log を として CMG-<CMGname>-ProxyService_IN_<%>-CMGService.log
5 分ごとにサイト サーバー ログ フォルダーに同期します。
3.3 CMG 接続ポイントが CMG クライアント要求を管理ポイント クライアント要求に変換する
次のエントリは、CMG 接続ポイントの役割をホストするサイト システムの SMS_CLOUD_PROXYCONNECTOR.log (詳細モード) に記録されます。
SMS_CLOUD_PROXYCONNECTOR Switched to internal URL. Replaced 'https://CMG.CLOUDAPP.NET/CCM_Proxy_MutualAuth/72186325152220500/CCM_STS' in 'https://CMG.CLOUDAPP.NET/CCM_Proxy_MutualAuth/72186325152220500/CCM_STS' with 'https://MP.MYCORP.COM/CCM_STS' and got 'https:///MP.MYCORP.COM/CCM_STS~~
3.4 管理ポイントがサイト データベース内のユーザー トークンを検証する
次のエントリは、クライアント要求を処理する管理ポイントをホストするサイト システムの CCM_STS.log に記録されます。
ProcessRequest - Start
Incoming request URL: https://MP.MYCORP.COM/CCM_STS
Validated AAD token. TokenType: UDA TenantId: 2ca9a796-a1a6-43ec-88f1-5935b32155c5 UserId: e8838041-db7a-42d5-b9ae-78813910e4cc DeviceId: 8d2b4ff9-0172-4998-9851-b5324303385f OnPrem_UserSid: S-1-5-21-1527250992-855612568-2252598708-1604 OnPrem_DeviceSid:
TokenType is UDA
Created SCCM token, token type: UDA, hierarchyId: 8ed3174b-e814-41b5-b51c-fb368f0d4003, userId: 23bbbba2-702e-4db4-8fd9-3b4fe3a5175d, deviceId: GUID:13E80CEF-5698-4C63-9ED6-E58FBFF78C38
Issued token
Return token to client
4. コンテンツの場所の要求
クライアントは CCM トークンを取得すると、それをキャッシュして使用して、ccmsetup.cab のサイト情報とコンテンツの場所を要求します。 デバイスがクライアント コンテンツをダウンロードすると、インストールが開始されます。 次のエントリは、クライアントの ccmsetup.log に記録されます。
Cached encrypted token for 'S-1-5-18'. Will expire at '06/25/2020 08:29:35'
ccmsetup: Host=CMG.cloudapp.net, Path=/CCM_Proxy_ServerAuth7981/ccm_system_tokenauth/request, Port=443, Protocol=https, CcmTokenAuth=1, Flags=0x4100, Options=0xe0
Created connection on port 443
Sending location request to 'cmg.cloudapp.net/CCM_PROXY_MutualAuth/72186325152220500' with payload '< Request >
Appending CCM Token to the header.
Received message '<SiteInfoReply SchemaVersion="1.00"> < reply > </SiteInfoReply>'
...
Checking the URL 'https://CMG.cloudapp.net/CCM_PROXY_MutualAuth/72186325152220500/CCM_Client/ccmsetup.cab
ccmsetup: Host=CMG.cloudapp.net, Path=/CCM_Proxy_ServerAuth/72057594037937995/CCM_Client
Appending CCM Token to the header.
Found a valid online MP 'https://CMG.cloudapp.net/CCM_PROXY_MutualAuth/72186325152220500
Searching for DP locations from MP(s)...
CCMSETUP bootstrap from Internet: 1
Sending message body '<ContentLocationRequest SchemaVersion="1.00" BGRVersion="1"> ...
The location 'https://CMG.cloudapp.net/downloadrestservice.svc/getcontentxmlsecure?pid=CS100001&cid=CS100001
...
Installing version 5.00.8968.1000 of the client with product code {66653948-0717-4D50-B0B9-ED66FDED2DDB}
Running installation package
Package: C:\WINDOWS\ccmsetup\{E6F27809-FF66-4BAA-B0FB-E4A154A6A388}\client.msi
注:
クライアントがコンテンツ対応 CMG からコンテンツを見つけた場合、ccmsetup はクラウド ストレージからコンテンツをダウンロードします。 最新のクライアント バージョンがクラウドで使用できない場合は、CMG 要求を介して管理ポイントからコンテンツをダウンロードします。
クライアント登録
1. クライアント要求の登録Configuration Manager
ccmsetup がConfiguration Manager クライアントを正常にインストールすると、登録が初期化されます。 クライアントの ClientIDManagerStartup.log には、次のエントリが記録されます。
AADJoinStatusTask: Client hasn't been registered yet.
RegEndPoint: Event notification: CCM_RemoteClient_Reassigned
RegEndPoint: Received notification for site assignment change from '<none>' to 'MEM'.
...
[RegTask] - Starting registration, attempt 1.
[RegTask] - Client is not registered. Sending registration request for GUID:C66EE0FD-08E7-4B38-B282-7E6954B71139 ...
Registering client using AAD auth.
2. Configuration Managerは、クライアントを登録するためにトークンMicrosoft Entra要求します
クライアントは、Microsoft Entra認証を使用して登録する新しいMicrosoft Entra トークンを要求します。 デバイス トークンが優先されますが、使用できない場合、クライアントはフォールバックしてMicrosoft Entraユーザー トークンを要求します。 次のエントリは、クライアントの ADALOperationProvider.log に記録 されます。
Getting AAD (user) token with: ClientId = 0b7c8ab3-9ea1-4ffa-b2b9-8ffdd944bd8, ResourceUrl = https://ConfigMgrService, AccountId = 9756a359-f76a-47d5-8662-9a837012fc35
Retrieved AAD token for AAD user 'e8838041-db7a-42d5-b9ae-78813910e4cc'
3. 登録依頼
管理ポイントの登録コンポーネントは、クライアント登録プロセスを処理します。 クライアントは、 MP_ClientRegistration エンドポイントに登録メッセージを送信します。
3.1 CMG は、クライアント登録要求を管理ポイントに転送します
次のエントリは、クライアント要求を処理する管理ポイントをホストするサイト システムの MP_RegistrationManager.log に記録されます。
Registering device using AAD auth: DeviceId='8d2b4ff9-0172-4998-9851-b5324303385f ', TenantId='c8c82542-203c-4df9-9d86-cdd4dae67e0a'
Processing Registration request from Client 'GUID:C66EE0FD-08E7-4B38-B282-7E6954B71139'
3.2 Configuration Manager クライアントが登録されている
登録が成功した場合、クライアントは、MICROSOFT ENTRA ID ベースの登録の承認 3 で登録の確認メッセージを受け取ります。 クライアントの ClientIDManagerStartup.log には、次のエントリが記録されます。
[RegTask] - Client is registered. Server assigned ClientID is GUID:C66EE0FD-08E7-4B38-B282-7E6954B71139. Approval status 3
4. クライアント トークン要求のConfiguration Manager
サーバーがクライアント登録を確認すると、クライアントは応答メッセージを処理します。 次に、クライアントは新しい CCM トークンを要求してキャッシュします。 クライアントの ClientIDManagerStartup.log には、次のエントリが記録されます。
Getting CCM Token from STS server 'MP.MYCORP.COM'
Getting CCM Token from https://MP.MYCORP.COM/CCM_STS
...
Cached encrypted token for 'S-1-5-18'. Will expire at '08/12/2020 18:55:40'
4.1 CMG は CMG 接続ポイントCCM_Token要求を取得して転送します
次のエントリは、 CMG VM の CMGService.log と CMG 接続ポイントの役割をホストするサイト システムに記録されます。
RequestUri: /CCM_PROXY_SERVERAUTH/72057594037937981/CCM_STS RequestCount: 769 RequestSize: 1081595 Bytes ResponseCount: 769 ResponseSize: 36143 Bytes AverageElapsedTime: 3945 ms
4.2 CMG 接続ポイントが CMG クライアント要求を管理ポイント クライアント要求に変換する
次のエントリは、CMG 接続ポイントの役割をホストするサイト システムの SMS_CLOUD_PROXYCONNECTOR.log に記録されます。
MessageID: 3087bd34-b82c-4950-b972-e82bb0fb8385 RequestURI: https://MP.MYCORP.COM/CCM_STS EndpointName: CCM_STS ResponseHeader: HTTP/1.1 200 OK ~~ ResponseBodySize: 0 ElapsedTime: 2 ms
4.3 管理ポイントがサイト データベース内のユーザー トークンを検証する
次のエントリは、クライアント要求を処理する管理ポイントをホストするサイト システムの CCM_STS.log に記録されます。
ProcessRequest - Start
Incoming request URL: https://MP.MYCORP.COM/CCM_STS
Validated AAD token. TokenType: UDA TenantId: 2ca9a796-a1a6-43ec-88f1-5935b32155c5 UserId: e8838041-db7a-42d5-b9ae-78813910e4cc DeviceId: 8d2b4ff9-0172-4998-9851-b5324303385f OnPrem_UserSid: S-1-5-21-1527250992-855612568-2252598708-1604 OnPrem_DeviceSid:
TokenType is UDA
Created SCCM token, token type: UDA, hierarchyId: 8ed3174b-e814-41b5-b51c-fb368f0d4003, userId: 23bbbba2-702e-4db4-8fd9-3b4fe3a5175d, deviceId: GUID:13E80CEF-5698-4C63-9ED6-E58FBFF78C38
Issued token
Return token to client
サーバーは、クライアント間通信の残りの部分のために CCM トークンをクライアントに返します。
注:
クライアントの登録中、証明書の検証は常に実行されます。 このプロセスは、Microsoft Entra認証方法を使用してクライアントを登録している場合でも発生します。 この動作は、Microsoft Entra認証が成功しない場合に備えたフォールバック オプションです。
CCM トークンの更新
CCM トークンの有効期間は 8 時間です。 クライアントは、CCM トークンの有効期限が切れているか、有効期限が近づいていると検出すると、新しい CCM トークン要求を送信します。 CcmMessaging コンポーネントは、この更新プロセスを処理します。 次のエントリは、クライアントの CcmMessaging.log に 記録されます。
Sending remote sync message '{BD03DEED-D09A-4E63-ADAD-596376FFB0DA}' to host 'CMG.CLOUDAPP.NET/CCM_Proxy_MutualAuth/72186325152220500' endpoint 'MP_PolicyManager'. Flags 0x280, sender account S-1-5-21-1721254763-462695806-1538882281-3289177
...
CCM Token for 'S-1-5-8-1721254763-462695806-1538882281-3289177' (12/23/2019 21:47:24) is already expired or close to expire
Getting CCM Token from https://CMG.CLOUDAPP.NET/CCM_Proxy_ServerAuth/72186325152220500/CCM_STS
Cached encrypted token for 'S-1-5-21-1721254763-462695806-1538882281-3289177'. Will expire at '01/10/2020 17:14:54'
...
ccmhttp: Host=CMG.CLOUDAPP.NET, Path=/CCM_Proxy_ServerAuth/72186325152220500/ccm_system_tokenauth/request, Port=443, Protocol=https, CcmTokenAuth=1, Flags=0x4200, Options=0x1e0
Target URL scheme is HTTPS: https://CMG.CLOUDAPP.NET/CCM_Proxy_ServerAuth/72186325152220500/ccm_system_tokenauth/request
Appending CCM Token to the header.
...
Message '{BD03DEED-D09A-4E63-ADAD-596376FFB0DA}' got reply message '{36EE3A78-8F6E-425F-BF5C-8460E8E56C33}' to endpoint 'dummy'
一般的な問題
ルート CA が存在しない: クライアントでは、CMG サーバー認証証明書を検証するためにルート CA 証明書が必要です。
CRL チェックが有効になっている: インターネットで CRL を発行します。 別の方法として、ccmsetup の
/NoCRLCheck
パラメーターを使用します。 次のオプションを無効にすることもできます。サイト システムの証明書失効リスト (CRL) をチェッククライアント。 この設定は、サイトのプロパティの [ 通信セキュリティ ] タブで見つけます。WPJ 証明書が見つかりません:デバイスがMicrosoft Entra参加していることを確認します。 dsregcmd.exeを使用します。 たとえば、[
dsregcmd /status
デバイスの状態] セクションを確認します。
ヒント
CMG、CMG 接続ポイント、および管理ポイントを介したクライアント通信は HTTPS 経由で実行されます。 拡張 HTTP 用にサイトを構成する場合でも、HTTP の管理ポイントを構成できます。
クライアントは CMG サーバー認証証明書を検証します。
- PKI 証明書: クライアントには、ローカル ストア内の CMG 証明書のルート CA が必要です。
- サード パーティの証明書: クライアントは、インターネット上で発行されたルート CA を使用して証明書を自動的に検証します。
CMG、CMG 接続ポイント、および管理ポイントは、MICROSOFT ENTRA ID と CCM トークンを検証します。
CMG 接続ポイントと管理ポイント間の通信も、両端でセキュリティで保護されます。
- CMG 接続ポイントは、クライアント認証証明書を使用します。
- MP は HTTPS 構成に PKI 証明書を使用し、拡張 HTTP には自己署名証明書を使用します。