Hybride exchange-implementatiefuncties configureren met Office 365 beheerd door 21Vianet

Opmerking

Dit artikel is alleen van toepassing op Microsoft 365 beheerd door 21Vianet in China en on-premises Exchange-organisaties die niet kunnen bijwerken naar Exchange 2013 CU5 of hoger.

Volledige hybride implementaties tussen on-premises Exchange 2013 CU5-organisaties en Microsoft 365-services worden nu ondersteund. Als u echter geen upgrade kunt uitvoeren naar exchange 2013 CU5 in uw on-premises organisatie, kunt u het delen van agenda's met beschikbaarheid en tussen uw on-premises Exchange- en Exchange Online organisaties nog steeds configureren.

Volg de onderstaande stappen om deze hybride implementatiefunctie in te schakelen voor uw on-premises en Exchange Online organisaties.

Stap 1: maak de autorisatieserverobjecten voor uw Exchange Online organisatie

Voor deze procedure moet u een geverifieerd domein opgeven voor uw Exchange Online organisatie. Dit domein moet hetzelfde domein zijn als het primaire SMTP-domein dat wordt gebruikt voor de cloud-e-mailaccounts. Dit domein wordt in de volgende procedure uw geverifieerde domein> genoemd<.

Voer de volgende opdracht uit in de Exchange-beheershell (de Exchange PowerShell) in uw on-premises Exchange-organisatie.


New-AuthServer -Name "MicrosoftAzureACS" -AuthMetadataUrl https://accounts.accesscontrol.chinacloudapi.cn/<your tenant initial domain>/metadata/json/1

New-AuthServer -Name "EvoSTS" -Type AzureAD -AuthMetadataUrl "https://login.chinacloudapi.cn/<your tenant initial domain>/federationmetadata/2007-06/federationmetadata.xml"

Stap 2: De partnertoepassing inschakelen voor uw Exchange Online organisatie

Voer de volgende opdracht uit in Exchange PowerShell in uw on-premises Exchange-organisatie.


Get-PartnerApplication | Where-Object {$_.ApplicationIdentifier -eq "00000002-0000-0ff1-ce00-000000000000"-and $_.Realm -eq ""} | Set-PartnerApplication -Enabled $true

Stap 3: het on-premises autorisatiecertificaat exporteren

In deze stap moet u een PowerShell-script uitvoeren om het on-premises autorisatiecertificaat te exporteren, dat in de volgende stap vervolgens wordt geïmporteerd in uw Exchange Online organisatie.

Sla de volgende tekst op in een PowerShell-scriptbestand met de naam, bijvoorbeeld ExportAuthCert.ps1.


$thumbprint = (Get-AuthConfig).CurrentCertificateThumbprint
if((Test-Path $env:SYSTEMDRIVE\OAuthConfig) -eq $false)
{
   New-Item -Path $env:SYSTEMDRIVE\OAuthConfig -Type Directory
}
Set-Location -Path $env:SYSTEMDRIVE\OAuthConfig
$oAuthCert = (dir Cert:\LocalMachine\My) | Where-Object {$_.Thumbprint -match $thumbprint}
$certType = [System.Security.Cryptography.X509Certificates.X509ContentType]::Cert
$certBytes = $oAuthCert.Export($certType)
$CertFile = "$env:SYSTEMDRIVE\OAuthConfig\OAuthCert.cer"
[System.IO.File]::WriteAllBytes($CertFile, $certBytes)

Voer in Exchange PowerShell in uw on-premises Exchange-organisatie het PowerShell-script uit dat u in de vorige stap hebt gemaakt. Bijvoorbeeld:


.\ExportAuthCert.ps1

Stap 4: het on-premises autorisatiecertificaat uploaden naar Microsoft Entra Access Control Server (ACS)

Let op

De procedures die in deze stap worden beschreven, zijn verouderd en binnenkort afgeschaft. Sla deze stap over en configureer in plaats daarvan de toegewezen hybride Exchange-toepassing na het uitvoeren van de stappen in dit ondersteuningsartikel. Als u het verificatiecertificaat al hebt geüpload aan de hand van de instructies in deze sectie, wordt u ten zeerste aangeraden het te verwijderen. U kunt dit doen door de stappen te volgen die worden beschreven in de documentatie voor toegewezen hybride Exchange-apps implementeren.

Vervolgens moet u Windows PowerShell gebruiken om het on-premises autorisatiecertificaat dat u in de vorige stap hebt geëxporteerd, te uploaden naar Microsoft Azure Active Directory Access Control Services (ACS). Hiervoor moet de ad-module (Microsoft Azure Active Directory) voor Windows PowerShell cmdlets zijn geïnstalleerd. Als deze niet is geïnstalleerd, gaat u naar https://aka.ms/aadposh om de module Microsoft Azure AD te installeren. Voer de volgende stappen uit nadat de module Microsoft Azure AD is geïnstalleerd.

Klik op de snelkoppeling Microsoft Azure Active Directory Module voor Windows PowerShell om een Windows PowerShell werkruimte te openen waarop de Microsoft Azure AD cmdlets zijn geïnstalleerd. Alle opdrachten in deze stap worden uitgevoerd met behulp van de Windows PowerShell voor Microsoft Azure Active Directory-console.

Sla de volgende tekst op in een PowerShell-scriptbestand met de naam, bijvoorbeeld UploadAuthCert.ps1.


Connect-MsolService
Import-Module msonlineextended
$CertFile = "$env:SYSTEMDRIVE\OAuthConfig\OAuthCert.cer"
$objFSO = New-Object -ComObject Scripting.FileSystemObject
$CertFile = $objFSO.GetAbsolutePathName($CertFile)
$cer = New-Object System.Security.Cryptography.X509Certificates.X509Certificate$cer.Import($CertFile)
$binCert = $cer.GetRawCertData()
$credValue = [System.Convert]::ToBase64String($binCert)
$ServiceName = "00000002-0000-0ff1-ce00-000000000000"
$p = Get-MsolServicePrincipal -ServicePrincipalName $ServiceNameNew-MsolServicePrincipalCredential -AppPrincipalId $p.AppPrincipalId -Type asymmetric -Usage Verify -Value $credValue

Voer het PowerShell-script uit dat u in de vorige stap hebt gemaakt. Bijvoorbeeld:


.\UploadAuthCert.ps1

Nadat u het script hebt gestart, wordt het dialoogvenster Referenties weergegeven. Voer de referenties in voor het tenantbeheerdersaccount in uw Microsoft Online Microsoft Azure AD-organisatie. Nadat u het script hebt uitgevoerd, laat u de Windows PowerShell voor Microsoft Azure Active Directory sessie geopend. In de volgende stap gebruikt u dit om een PowerShell-script uit te voeren.

Stap 5: Registreer alle hostnaaminstanties voor uw externe on-premises Exchange HTTP-eindpunten met Microsoft Entra ID

U moet een script uitvoeren voor elk eindpunt in uw on-premises Exchange-organisatie dat openbaar toegankelijk is. We raden u aan om, indien mogelijk, jokerkaarten te gebruiken. Stel dat Exchange extern beschikbaar is op https://mail.contoso.com/ews/exchange.asmx. In dit geval kan één jokerteken worden gebruikt: *.contoso.com. Dit geldt voor autodiscover.contoso.com- en mail.contoso.com-eindpunten. Het heeft echter geen betrekking op het domein op het hoogste niveau , contoso.com. In gevallen waarin uw Exchange 2013-clienttoegangsservers extern toegankelijk zijn met de instantie van de hostnaam op het hoogste niveau, moet deze hostnaam-instantie ook worden geregistreerd als contoso.com. Er is geen limiet voor het registreren van extra externe hostnaaminstanties.

Als u niet zeker bent van de externe Exchange-eindpunten in uw on-premises Exchange-organisatie, kunt u een lijst met de extern geconfigureerde webservices-eindpunten ophalen door de volgende opdracht uit te voeren in Exchange PowerShell in uw on-premises Exchange-organisatie:


Get-WebServicesVirtualDirectory | FL ExternalUrl

Opmerking

Voor het uitvoeren van het volgende script moet de Windows PowerShell voor Microsoft Azure Active Directory zijn verbonden met uw Microsoft Online Microsoft Azure AD-tenant, zoals uitgelegd in stap 4 in de vorige sectie.

Sla de volgende tekst op in een PowerShell-scriptbestand met de naam, bijvoorbeeld RegisterEndpoints.ps1. In dit voorbeeld wordt een jokerteken gebruikt om alle eindpunten voor contoso.com te registreren. Vervang contoso.com door een hostnaaminstantie voor uw on-premises Exchange-organisatie.


$externalAuthority="*.contoso.com"
$ServiceName = "00000002-0000-0ff1-ce00-000000000000"
$p = Get-MsolServicePrincipal –ServicePrincipalName $ServiceName
$spn = [string]::Format("{0}/{1}", $ServiceName, $externalAuthority)
$p.ServicePrincipalNames.Add($spn)
Set-MsolServicePrincipal –ObjectID $p.ObjectId –ServicePrincipalNames $p.ServicePrincipalNames

Voer in Windows PowerShell voor Microsoft Azure Active Directory het PowerShell-script uit dat u in de vorige stap hebt gemaakt. Bijvoorbeeld:


.\RegisterEndpoints.ps1

Stap 6: maak een IntraOrganizationConnector van uw on-premises organisatie naar Microsoft 365

U moet een doeladres definiëren voor uw postvakken die worden gehost in Exchange Online. Dit doeladres wordt automatisch gemaakt wanneer uw Microsoft 365-tenant wordt gemaakt. Als het domein van uw organisatie dat wordt gehost in de Microsoft 365-tenant bijvoorbeeld 'contoso.com' is, is uw doelserviceadres 'contoso.partner.mail.onmschina.cn'.

Voer met Behulp van Exchange PowerShell de volgende cmdlet uit in uw on-premises organisatie:


New-IntraOrganizationConnector -name ExchangeHybridOnPremisesToOnline -DiscoveryEndpoint https://partner.outlook.cn/autodiscover/autodiscover.svc -TargetAddressDomains <your service target address>

Stap 7: een IntraOrganizationConnector maken van uw Microsoft 365-tenant naar uw on-premises Exchange-organisatie

U moet een doeladres definiëren voor uw postvakken die worden gehost in uw on-premises organisatie. Als het primaire SMTP-adres van uw organisatie 'contoso.com' is, is dit 'contoso.com'.

U moet ook het externe autodiscover-eindpunt voor uw on-premises organisatie definiëren. Als uw bedrijf 'contoso.com' is, is dit meestal een van de volgende:

  • https://autodiscover.<uw primaire SMTP-domein>/autodiscover/autodiscover.svc
  • <https:// uw primaire SMTP-domein>/autodiscover/autodiscover.svc

Opmerking

U kunt de cmdlet Get-IntraOrganizationConfiguration in zowel uw on-premises als Microsoft 365-tenants gebruiken om de eindpuntwaarden te bepalen die nodig zijn voor de cmdlet New-IntraOrganizationConnector .

Voer met Windows PowerShell de volgende cmdlet uit:


$UserCredential = Get-Credential

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://partner.outlook.cn/powershell-liveid/ -Credential $UserCredential

Import-PSSession $Session

New-IntraOrganizationConnector -name ExchangeHybridOnlineToOnPremises -DiscoveryEndpoint <your on-premises-Autodiscover endpoint> -TargetAddressDomains <your on-premises target address>

Stap 8: Een AvailabilityAddressSpace configureren voor alle pre-Exchange 2013 SP1-servers

Wanneer u een hybride implementatie configureert in een organisatie vóór Exchange 2013, moet u ten minste één Exchange 2013 SP1-server of hoger installeren met de serverfuncties Clienttoegang en Postvak in uw bestaande Exchange-organisatie. De exchange 2013-clienttoegangs- en postvakservers fungeren als front-endservers en coördineren de communicatie tussen uw bestaande on-premises Exchange-organisatie en de Exchange Online organisatie. Deze communicatie omvat functies voor berichtentransport en berichten tussen de on-premises en Exchange Online organisaties. We raden u ten zeerste aan om meer dan één Exchange 2013-server in uw on-premises organisatie te installeren om de betrouwbaarheid en beschikbaarheid van hybride implementatiefuncties te verbeteren.

In een gemengde implementatie met Exchange 2013/2010 of Exchange 2013/2007 wordt aanbevolen dat alle internetgerichte front-endservers voor uw on-premises organisatie clienttoegangsservers zijn waarop Exchange 2013 SP1 of hoger wordt uitgevoerd. Alle EWS-aanvragen (Exchange-webservices) die afkomstig zijn van Microsoft 365 en Exchange Online moeten verbinding maken met een Exchange 2013-clienttoegangsserver(s) in uw on-premises implementatie. Bovendien moeten alle EWS-aanvragen die afkomstig zijn van uw on-premises Exchange-organisaties voor Exchange Online worden uitgevoerd via een Client Access-server waarop Exchange 2013 SP1 of hoger wordt uitgevoerd. Aangezien deze Exchange 2013-clienttoegangsservers deze extra binnenkomende en uitgaande EWS-aanvragen moeten verwerken, is het belangrijk dat er voldoende Exchange 2013 Client Access-servers beschikbaar zijn om de verwerkingsbelasting af te handelen en redundantie van de verbinding te bieden. Het aantal clienttoegangsservers dat nodig is, is afhankelijk van de gemiddelde hoeveelheid EWS-aanvragen en verschilt per organisatie.

Voordat u de volgende stap voltooit, moet u het volgende controleren:

  • De front-end hybride servers zijn Exchange 2013 SP1 of hoger
  • U hebt een unieke externe EWS-URL voor de Exchange 2013-server(s). De Microsoft 365-tenant moet verbinding maken met deze servers om cloudaanvragen voor hybride functies correct te laten werken.
  • De servers hebben zowel de serverfuncties Postvak als Clienttoegang
  • Op alle bestaande Exchange 2010/2007-postvak- en clienttoegangsservers is de meest recente cumulatieve update (CU) of servicepack (SP) toegepast.

Opmerking

Bestaande Exchange 2010/2007-postvakservers kunnen exchange 2010/2007-clienttoegangsservers blijven gebruiken voor front-endservers voor niet-hybride functieverbindingen. Alleen aanvragen voor hybride implementatiefuncties van de Microsoft 365-tenant hoeven verbinding te maken met Exchange 2013-servers.

Uitgaande Exchange-webservicesproxy configureren voor pre-Exchange 2013-servers

Er moet een AvailabilityAddressSpace worden geconfigureerd die verwijst naar het Exchange-webservices-eindpunt van uw on-premises Exchange 2013 SP1-clienttoegangsserver. Dit eindpunt is hetzelfde eindpunt als eerder beschreven in stap 5 of kan worden bepaald door de volgende cmdlet uit te voeren op uw on-premises Exchange 2013 SP1-clienttoegangsserver:


Get-WebServicesVirtualDirectory | FL AdminDisplayVersion,ExternalUrl

Opmerking

Als informatie over de virtuele map wordt geretourneerd van meerdere servers, moet u ervoor zorgen dat u het eindpunt gebruikt dat wordt geretourneerd voor een Exchange 2013 SP1-clienttoegangsserver. Er wordt 15.0 (build 847.32) of hoger weergegeven voor de parameter AdminDisplayVersion.

Als u AvailabilityAddressSpace wilt configureren, gebruikt u Exchange PowerShell en voert u de volgende cmdlet uit in uw on-premises organisatie:


Add-AvailabilityAddressSpace -AccessMethod InternalProxy –ProxyUrl <your on-premises External Web Services URL> -ForestName <your Office 365 service target address> -UseServiceAccount $True

Hoe weet u of dit heeft gewerkt?

U kunt controleren of de OAuth-configuratie juist is met behulp van de cmdlet Test_OAuthConnectivity . Met deze cmdlet wordt gecontroleerd of de on-premises Exchange- en Exchange Online-eindpunten aanvragen van elkaar kunnen verifiëren.

Belangrijk

Wanneer u verbinding maakt met uw Exchange Online organisatie met behulp van externe PowerShell, moet u mogelijk de parameter AllowClobber gebruiken met de cmdlet Import-PSSession om de meest recente opdrachten in de lokale PowerShell-sessie te importeren.

Als u wilt controleren of uw on-premises Exchange-organisatie verbinding kan maken met Exchange Online, voert u de volgende opdracht uit in Exchange PowerShell in uw on-premises organisatie:


Test-OAuthConnectivity -Service EWS -TargetUri https://partner.outlook.cn/ews/exchange.asmx -Mailbox <On-Premises Mailbox> -Verbose | fl

Als u wilt controleren of uw Exchange Online organisatie verbinding kan maken met uw on-premises Exchange-organisatie, gebruikt u externe PowerShell om verbinding te maken met uw Exchange Online organisatie en voert u de volgende opdracht uit:


Test-OAuthConnectivity -Service EWS -TargetUri <external hostname authority of your Exchange On-Premises deployment> -Mailbox <On-Premises Mailbox> -Verbose | fl

Belangrijk

U kunt de fout 'Aan het SMTP-adres is geen postvak gekoppeld'. Het is alleen belangrijk dat de parameter ResultTask de waarde Geslaagd retourneert. De laatste sectie van de testuitvoer moet bijvoorbeeld als volgt worden gelezen:


ResultType: Success

Identity: Microsoft.Exchange.Security.OAuth.ValidationResultNodeId

IsValid: True

ObjectState: New