Microsoft Entra flusso di lavoro di autenticazione
Si applica a: Configuration Manager (Current Branch)
Questo articolo è un riferimento tecnico per il processo di installazione e registrazione del client Configuration Manager in un dispositivo Windows aggiunto all'ID Microsoft Entra. Descrive in dettaglio il processo del flusso di lavoro per l'autenticazione del dispositivo.
Nota
I client Windows ottengono un certificato WPJ (Workplace Join) quando si uniscono a un tenant Microsoft Entra. Se il certificato non viene trovato, il client Configuration Manager non può richiedere token Microsoft Entra. Senza un token, il client non può usare il canale di comunicazione Configuration Manager servizio token di sicurezza (CCM_STS) per l'autenticazione Microsoft Entra con Configuration Manager sistemi del sito.
Installazione client
In questo esempio di flusso di lavoro è stato installato il client Configuration Manager in un dispositivo Windows tramite Internet con le proprietà della riga di comando ccmsetup seguenti:
CCMHOSTNAME="CMG.CLOUDAPP.NET/CCM_Proxy_MutualAuth/72186325152220500" SMSSITECODE="MEM"
1. Microsoft Entra richiesta di informazioni da ccmsetup
I client installati da Internet necessitano di proprietà specifiche della riga di comando per usare l'autenticazione Microsoft Entra. È possibile includere queste proprietà nella riga di comando per internet ccmsetup, ma non sono necessarie. Quando non si usano proprietà Microsoft Entra, ccmsetup richiede le AADCLIENTAPPID
proprietà e AADRESOURCEURI
dal gateway di gestione cloud. Usa il Microsoft Entra TenantID del dispositivo come riferimento. Se non è stato caricato il TenantID del client in Configuration Manager, il cmg non fornisce le proprietà necessarie a ccmsetup per continuare l'installazione client.
Le voci seguenti vengono registrate in ccmsetup.log del client:
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.
Importante
Durante ccmsetup, il dispositivo deve convalidare il certificato di autenticazione del server CMG. Il certificato dell'autorità di certificazione radice (CA) per il certificato di autenticazione del server CMG deve essere disponibile nel client per la convalida della catena. Se si usa PKI, quando la CA radice non viene pubblicata su Internet, aggiungere il certificato ca radice all'archivio ca radice del dispositivo.
Se l'elenco di revoche di certificati ca radice non viene pubblicato su Internet, aggiungere il /nocrlcheck
parametro nella riga di comando ccmsetup.
2. Microsoft Entra richiesta di token
In un dispositivo aggiunto a un dominio di Windows Azure AD, ccmsetup usa le proprietà Microsoft Entra per richiedere un token Microsoft Entra che chiama il provider ADALOperation. Le voci seguenti vengono registrate in ccmsetup.log nel client:
Getting AAD (device) token with: ClientId = 0b7c8ab3-9ea1-4ffa-b2b9-8ffdd944bd8b, ResourceUrl = https://ConfigMgrService, AccountId = https://login.microsoftonline.com/common/oauth2/token
Se la richiesta del token del dispositivo ha esito negativo, ccmsetup esegue il backback per provare a richiedere un token utente Microsoft Entra. Se il dispositivo non riesce a ottenere un dispositivo Microsoft Entra o un token utente, ccmsetup non continua.
Nota
Se il dispositivo ha un certificato di autenticazione client PKI valido, ccmsetup preferisce sempre il certificato. In questo caso, il client viene installato come client PKI e non usa l'autenticazione 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 richiesta di token client
Il client usa il token Microsoft Entra per richiedere il token del client Configuration Manager (CCM). La comunicazione operativa tra ccmsetup e il sito usa il token CCM come token di autorizzazione (CcmTokenAuth=1).
3.1 Il client invia una richiesta di token CCM a CMG
Le voci seguenti vengono registrate in ccmsetup.log nel client:
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 inoltra al punto di connessione CMG
Le voci seguenti vengono registrate in CMGService.log nell'istanza della macchina virtuale cmg.
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)>
Consiglio
Configuration Manager sincronizza CMGService.log con la cartella log del server del sito ogni cinque minuti come CMG-<CMGname>-ProxyService_IN_<%>-CMGService.log
.
3.3 Il punto di connessione CMG trasforma la richiesta client di CMG in richiesta client del punto di gestione
Le voci seguenti vengono registrate in SMS_CLOUD_PROXYCONNECTOR.log (modalità dettagliata) del sistema del sito che ospita il ruolo del punto di connessione cmg:
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 Il punto di gestione verifica il token utente nel database del sito
Le voci seguenti vengono registrate CCM_STS.log del sistema del sito che ospita il punto di gestione che gestisce la richiesta client:
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. Richiesta di percorso del contenuto
Dopo che il client ottiene il token CCM, viene memorizzato nella cache e usato per richiedere informazioni sul sito e il percorso del contenuto di ccmsetup.cab. Dopo aver scaricato il contenuto del client, il dispositivo avvia l'installazione. Le voci seguenti vengono registrate in ccmsetup.log nel client:
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
Nota
Se il client trova il contenuto da un cmg abilitato per il contenuto, ccmsetup scarica il contenuto dall'archiviazione cloud. Se la versione client più recente non è disponibile nel cloud, scarica il contenuto dal punto di gestione tramite una richiesta cmg.
Registrazione client
1. registrazione della richiesta client Configuration Manager
Dopo che ccmsetup ha installato correttamente il client Configuration Manager, la registrazione viene inizializzata. Le voci seguenti vengono registrate in ClientIDManagerStartup.log del client:
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 richiede Microsoft Entra token per registrare il client
Il client richiede un nuovo token di Microsoft Entra per la registrazione tramite l'autenticazione Microsoft Entra. Preferisce un token del dispositivo, ma se non è disponibile, il client esegue il backback per richiedere un token utente Microsoft Entra. Le voci seguenti vengono registrate in ADALOperationProvider.log del client:
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. Richiesta di registrazione
Il componente di registrazione nel punto di gestione gestisce il processo di registrazione client. Il client invia un messaggio di registrazione all'endpoint MP_ClientRegistration .
3.1 CMG inoltra la richiesta di registrazione client al punto di gestione
Le voci seguenti vengono registrate nel MP_RegistrationManager.log del sistema del sito che ospita il punto di gestione che gestisce la richiesta client:
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 client è registrato
Se la registrazione ha esito positivo, il client riceve un messaggio di conferma della registrazione con l'approvazione 3 per Microsoft Entra registrazione basata su ID. Le voci seguenti vengono registrate in ClientIDManagerStartup.log del client:
[RegTask] - Client is registered. Server assigned ClientID is GUID:C66EE0FD-08E7-4B38-B282-7E6954B71139. Approval status 3
4. Configuration Manager richiesta di token client
Dopo che il server conferma la registrazione del client, il client elabora il messaggio di risposta. Il client quindi richiede e memorizza nella cache un nuovo token CCM. Le voci seguenti vengono registrate in ClientIDManagerStartup.log del client:
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 ottiene e inoltra CCM_Token richiesta al punto di connessione cmg
Le voci seguenti vengono registrate in CMGService.log della macchina virtuale cmg e nel sistema del sito che ospita il ruolo del punto di connessione cmg:
RequestUri: /CCM_PROXY_SERVERAUTH/72057594037937981/CCM_STS RequestCount: 769 RequestSize: 1081595 Bytes ResponseCount: 769 ResponseSize: 36143 Bytes AverageElapsedTime: 3945 ms
4.2 Il punto di connessione CMG trasforma la richiesta client di CMG in richiesta client del punto di gestione
Le voci seguenti vengono registrate in SMS_CLOUD_PROXYCONNECTOR.log del sistema del sito che ospita il ruolo del punto di connessione del gateway di gestione cloud:
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 Il punto di gestione verifica il token utente nel database del sito
Le voci seguenti vengono registrate CCM_STS.log del sistema del sito che ospita il punto di gestione che gestisce la richiesta client:
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
Il server restituisce il token CCM al client per il resto della comunicazione da client a sito.
Nota
Durante la registrazione client, la convalida del certificato viene sempre eseguita. Questo processo si verifica anche se si usa il metodo di autenticazione Microsoft Entra per registrare il client. Questo comportamento è un'opzione di fallback, nel caso in cui l'autenticazione Microsoft Entra non abbia esito positivo.
Rinnovo del token CCM
Il token CCM ha una durata di otto ore. Quando il client rileva che il token CCM è scaduto o vicino alla scadenza, invia una nuova richiesta di token CCM. Il componente CcmMessaging gestisce questo processo di rinnovo. Le voci seguenti vengono registrate in CcmMessaging.log del client:
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'
Problemi comuni
CA radice non presente: i client devono disporre del certificato CA radice per convalidare il certificato di autenticazione del server CMG.
Controllo CRL abilitato: pubblicare il CRL su Internet. In alternativa, usare il
/NoCRLCheck
parametro per ccmsetup. È anche possibile disabilitare l'opzione seguente: I client controllano l'elenco di revoche di certificati (CRL) per i sistemi del sito. Questa impostazione è disponibile nella scheda Sicurezza delle comunicazioni delle proprietà del sito.Il certificato WPJ non è stato trovato: assicurarsi che il dispositivo sia Microsoft Entra aggiunto. Usare dsregcmd.exe. Ad esempio,
dsregcmd /status
e esaminare la sezione Stato dispositivo .
Consiglio
La comunicazione client tramite CMG, punto di connessione CMG e punto di gestione viene eseguita tramite HTTPS. Se si configura il sito per HTTP avanzato, è comunque possibile configurare il punto di gestione per HTTP.
Il client verifica il certificato di autenticazione del server CMG:
- Certificato PKI: il client richiede la CA radice del certificato cmg nell'archivio locale.
- Certificato di terze parti: i client convalidano automaticamente un certificato con la ca radice pubblicata su Internet.
CMG, punto di connessione CMG e punto di gestione convalidano Microsoft Entra TOKEN ID e CCM.
Anche la comunicazione tra il punto di connessione cmg e il punto di gestione è protetta in entrambe le estremità:
- Il punto di connessione cmg usa il certificato di autenticazione client.
- Mp usa un certificato PKI per la configurazione HTTPS o un certificato autofirma per HTTP avanzato.