Data & More

EWS-åtkomst för Data & More – Exchange-konfiguration på plats

8 min läsning

Denna artikel beskriver hur EWS-åtkomst konfigureras för Data & More:s skanningsserver mot en lokal Exchange-miljö (version 2010 SP2 till och med Subscription Edition), inklusive tjänstkonto, roller, autentisering, begränsningspolicyer och nätverkskrav. Konfigurationen gäller för såväl Data & More-driftsatt som egeninstallerad toolbox-modell.

Exchange 2010 SP2 – 2019 och Subscription Edition (SE). Data & More:s skanningsserver ansluter via HTTPS till https://<host>/EWS/Exchange.asmx, autentiserar som ett tjänstkonto och personifierar de postlådor som ingår i scope. Ingen Autodiscover, ingen MAPI/RPC och ingen agent installeras på era Exchange-servrar.

Välj driftsättningsmodell

Exchange-konfigurationen (§1–§5) är identisk i båda fallen. Endast nätverksdelen (§6) och ett fåtal fält i returformuläret (§7) skiljer sig åt.

A – Driftsatt av Data & More

B – Egeninstallerad toolbox

Var skanningsservern körs

Data & More:s infrastruktur (Hetzner, EU)

Ert nätverk (VM eller server som ni tillhandahåller)

Vem ansluter till EWS

Data & More, via internet

Toolboxen, inom ert nätverk

EWS publicerad mot internet

Ja

Nej – intern URL är tillräcklig

Brandväggsregel

TCP 443 från Data & More:s utgående IP-adresser

TCP 443 från toolboxens IP-adress

Värdnamn

Måste vara offentligt resolvbart (eller ange värdnamn → IP till oss)

Måste vara resolvbart från toolboxen (intern DNS fungerar)

Omvänd proxy med förautentisering (WAP, F5 APM, NetScaler)

Måste vidarebefordra tjänstkontot

Vanligtvis inte inblandad – anslut direkt till Exchange-servern eller intern lastbalanserare

Förutsättningar

  • Exchange Server 2010 SP2, 2013, 2016, 2019 eller Subscription Edition (SE), lokalt installerad

  • Ett postlådeaktiverat AD-tjänstkonto som skanningsservern autentiserar som (§1)

  • Rollerna ApplicationImpersonation och Mailbox Search tilldelade kontot (§2)

  • EWS-katalogen med Basic- eller NTLM-autentisering aktiverad (§3, §4)

  • En begränsningspolicy för kontot så att en fullständig skanning inte överskrider tillgänglig kvot (§5)

  • Nätverksväg från skanningsservern till EWS på TCP 443, giltigt TLS-certifikat (§6)

    • A – Driftsatt: EWS nåbar från internet för våra utgående IP-adresser

    • B – Egeninstallerad: EWS nåbar från toolboxen; ingen exponering mot internet krävs

Avsnitt 1–6 beskriver konfigurationen. Avsnitt 7 är formuläret som ska skickas tillbaka.

1. Tjänstkonto

Ett dedikerat AD-konto med aktiverad postlåda (det autentiserar som sig självt innan det personifierar andra), med lösenord inställt att aldrig upphöra. Ingen lokal administratörsbehörighet, ingen interaktiv inloggning.

powershell

New-Mailbox -Name "svc-dataandmore" `
            -UserPrincipalName "svc-dataandmore@example.com" `
            -Password (Read-Host "Password" -AsSecureString)

2. Roller

Personifiering – en tilldelning täcker samtliga postlådor:

powershell

New-ManagementRoleAssignment -Name "DataAndMore-Impersonation" `
                             -Role "ApplicationImpersonation" `
                             -User "svc-dataandmore@example.com"

Begränsa scope om endast en del av organisationen ska ingå:

powershell

New-ManagementScope -Name "DataAndMore-Scope" `
                    -RecipientRoot "example.com/Company Users" `
                    -RecipientRestrictionFilter { RecipientType -eq "UserMailbox" }

New-ManagementRoleAssignment -Name "DataAndMore-Impersonation" `
                             -Role "ApplicationImpersonation" `
                             -User "svc-dataandmore@example.com" `
                             -CustomRecipientWriteScope "DataAndMore-Scope"

Postlådeidentifiering – postlådor räknas upp via EWS-operationen GetSearchableMailboxes, vilket kräver rollen Mailbox Search:

powershell

New-ManagementRoleAssignment -Name "DataAndMore-MailboxSearch" `
                             -Role "Mailbox Search" `
                             -User "svc-dataandmore@example.com"

Denna roll är att föredra framför rollgruppen Discovery Management, som även beviljar Legal Hold. Om ni inte kan tilldela rollen skickar ni oss postlådelistan i stället – det är enbart automatisk identifiering som faller bort.

Rolländringar cachas; vänta en timme eller återstarta MSExchangeServicesAppPool.

Utan personifiering: Add-MailboxPermission -AccessRights FullAccess -AutoMapping:$false per postlåda fungerar också, men måste köras på nytt för varje ny postlåda.

3. EWS-slutpunkt

powershell

Get-WebServicesVirtualDirectory | fl Server,InternalUrl,ExternalUrl,BasicAuthentication,WindowsAuthentication

Vilken URL som ska anges till oss:

  • A – Driftsatt: ExternalUrl (externt nåbar).

  • B – Egeninstallerad: InternalUrl, eller valfritt internt värdnamn som når EWS-katalogen från toolboxen (t.ex. namn på intern lastbalanserare).

Basic- eller NTLM-autentisering måste vara aktiverad – enbart Kerberos, enbart certifikat samt enbart OAuth/ADFS stöds inte. Om en omvänd proxy med förautentisering (WAP, F5 APM, NetScaler) finns i anslutningsvägen måste den vidarebefordra tjänstkontot. Vid egeninstallation bör toolboxen om möjligt anslutas förbi proxyn direkt.

powershell

Set-WebServicesVirtualDirectory -Identity "EXCH01\EWS (Default Web Site)" -BasicAuthentication $true
iisreset /noforce

Versionshuvudvärden vi accepterar: EXCHANGE_2007 … EXCHANGE_2013_SP1, EXCHANGE_2016. Exchange 2019 och SE använder EXCHANGE_2016 – inget separat värde finns.

4. EWS-åtkomstpolicy

powershell

Get-OrganizationConfig | fl EwsEnabled,EwsApplicationAccessPolicy,EwsAllowList,EwsBlockList
Get-CASMailbox svc-dataandmore | fl EwsEnabled,EwsApplicationAccessPolicy

EwsEnabled får inte vara $false. Om policyn är EnforceAllowList ska vår klient läggas till – dess User-Agent är JWebServices for Exchange 2.2.140, www.independentsoft.com:

powershell

Set-OrganizationConfig -EwsAllowList @{Add="JWebServices*"}

5. Begränsning (throttling)

Standardkvoterna för EWS är dimensionerade för interaktiva klienter och kommer att hindra en fullständig postlådegenomsökning. Tilldela en policy enbart till tjänstkontot (2013 och senare):

powershell

New-ThrottlingPolicy -Name "DataAndMore-EWS" -ThrottlingPolicyScope Regular `
                     -EwsMaxConcurrency Unlimited -EwsMaxBurst Unlimited `
                     -EwsRechargeRate Unlimited -EwsCutoffBalance Unlimited

Set-ThrottlingPolicyAssociation -Identity "svc-dataandmore@example.com" `
                                -ThrottlingPolicy "DataAndMore-EWS"

Begränsat alternativ: EwsMaxConcurrency 50, EwsMaxBurst 300000, EwsRechargeRate 900000, EwsCutoffBalance 600000. Ange vilket alternativ ni valde – vi anpassar vår parallellitet efter det. På 2010 SP2 heter parametrarna EWSMaxConcurrency, EWSPercentTimeInAD, EWSPercentTimeInCAS, EWSPercentTimeInMailboxRPC; sätt dem till $null.

Skanningsservern kör 3–8 parallella anslutningar per källa, backar automatiskt vid 429 / "server cannot service this request right now" och kan begränsas under ett kontorstidsfönster som ni väljer.

6. Nätverk och TLS

Gäller båda modellerna

  • Skanningsservern ansluter enbart till EWS. Ingenting ansluter från Exchange till skanningsservern.

  • Läs-/anslutningstidsgränsen är 300 s – ingen brandvägg, proxy eller lastbalanserare mellan skanningsservern och EWS får stänga inaktiva anslutningar tidigare.

  • TLS 1.2 eller senare; certifikatet måste vara giltigt för det värdnamn som skanningsservern ansluter till.

A – Driftsatt av Data & More

  • TCP 443 inkommande till EWS-slutpunkten från våra utgående IP-adresser (lämnas separat).

  • EWS-värdnamnet måste vara offentligt resolvbart, eller ange värdnamn → IP till oss så mappar vi det i vår driftsmiljö.

  • Certifikat utfärdat av intern CA: skicka certifikatkedjan i PEM-format till oss.

B – Egeninstallerad toolbox

  • EWS behöver inte exponeras mot internet. Toolboxen behöver enbart nå er Exchange-server (eller intern lastbalanserare) på TCP 443.

  • Tillåt TCP 443 från toolboxens IP-adress till EWS-värden i eventuella interna brandväggar eller segmentgränser däremellan.

  • Toolboxen måste kunna resolva EWS-värdnamnet – via er interna DNS, eller ange värdnamn → IP till oss så mappar vi det på toolboxen.

  • Om toolboxen använder en utgående HTTP-proxy ska EWS-värden undantas från den (direktanslutning).

  • Certifikat utfärdat av intern CA (vanligt för interna URL:er): skicka kedjan i PEM-format så att den kan betraktas som betrodd på toolboxen. Värdnamnet i URL:en måste stämma överens med certifikatet – använd det namn som anges i certifikatet, inte en IP-adress.

7. Returformulär

Inloggningsuppgifter skickas via lösenordsvalv eller annan säker kanal, inte via okrypterad e-post.

Fält

Värde

Driftsättningsmodell

A – Driftsatt av Data & More / B – Egeninstallerad toolbox

EWS-URL

https://mail.example.com/EWS/Exchange.asmx (A: extern URL, B: intern URL)

Exchange-version

EXCHANGE_2016

Autentiseringsmetod

Basic / NTLM (+ NetBIOS-domän vid NTLM)

Tjänstkonto

svc-dataandmore@example.com + lösenord

Åtkomstmodell

Personifiering / Full åtkomst

Mailbox Search beviljad

ja / nej – om nej, bifoga postlådelista

Arkiv ingår i scope

ja / nej

Testpostlåda för vår åtkomstkontroll

testuser@example.com

Begränsningspolicyns värden

Begränsningstidsfönster för kontorstid

t.ex. 07:00–18:00 CET

Intern CA-kedja bifogad

ja / nej / ej tillämpligt

Värdnamn → IP-mappning krävs

nej / ja: mail.example.com → 10.0.0.25

A: Brandvägg öppnad för våra utgående IP-adresser

ja / nej / ej tillämpligt

B: Toolboxens IP och brandvägg öppnad mot EWS

toolboxens IP + ja / nej / ej tillämpligt

Teknisk kontaktperson

namn, e-postadress, telefonnummer

Verifiera innan ni skickar

På Exchange-servern:

powershell

Test-WebServicesConnectivity -ClientAccessServer EXCH01 `
    -MailboxCredential (Get-Credential example\svc-dataandmore) -TrustAnySSLCertificate

Sedan från den plats skanningsservern ansluter från – A: en dator utanför ert nätverk; B: toolboxen själv:

bash

curl -sS -o /dev/null -w '%{http_code}\n' -u 'svc-dataandmore@example.com' \
     https://mail.example.com/EWS/Exchange.asmx      # 200 = ok, 401 = fel autentisering

Vid NTLM, lägg till --ntlm och använd DOMAIN\svc-dataandmore. En timeout innebär att nätverksvägen är blockerad (§6); ett certifikatfel innebär att CA-kedjan eller värdnamnet är felaktigt (§6).

Personifieringen verifierar vi från vår sida mot testpostlådan.

Arkiv

Lokala arkiv (in-place archives) kräver ingen extra behörighet – personifiering täcker dem. Bekräfta vilka postlådor som har ett arkiv (Get-Mailbox -Archive) och att de är lokalt driftsatta; ett molnarkiv kopplat till en lokal postlåda är en separat källa. Postlådor utan arkiv hoppas automatiskt över.

Verkställighet (endast om avtalat)

Med verkställighet av lagringspolicyer aktiverad raderar skanningsservern objekt som matchar en borttagningspolicy som ni definierar och aktiverar. Inget flyttas, kopieras eller skrivs till postlådan. Personifiering ger redan raderingsrätt – inget extra behöver konfigureras. Ange om ni enbart önskar inmatning.

EWS-operationer som används

Operation

Syfte

Typ

GetSearchableMailboxes

räkna upp postlådor

läsning

FindFolder / GetFolder

traversera mappträdet inkl. arkivrot

läsning

FindItem / GetItem

lista objekt, hämta meddelande med brödtext

läsning

GetAttachment

hämta bilaga för analys

läsning

DeleteItem

radera ett objekt enligt lagringspolicy

skrivning – endast vid verkställighet

Inga prenumerationer, ingen SendItem, ingen UpdateItem, ingen MoveItem, inga mappar skapas i postlådan och ingen åtkomst sker utanför det konfigurerade scopet.

Felmeddelanden

Meddelande

Orsak

Åtgärd

401 Unauthorized

felaktigt lösenord, Basic/NTLM inaktiverat, förautentiserande proxy

§3

The account does not have permission to impersonate the requested user.

roll saknas, är cachad eller postlådan ligger utanför scope

§2

Access is denied on discovery

Mailbox Search saknas

§2

429 / The server cannot service this request right now / Too many concurrent connections opened

begränsningskvoten är uttömd

§5

Read timed out / Connect timed out / Socket closed

inaktivitetstimeout under 300 s, brandvägg som blockerar skanningsservern (A: utgående IP-adresser, B: toolboxens IP), eller slutpunkten är inte nåbar

§6

UnknownHostException / name not resolved

värdnamnet går inte att resolva från skanningsservern (B: toolboxen använder inte intern DNS)

§6

PKIX / certificate errors

intern CA inte betrodd, eller värdnamnet stämmer inte med certifikatet

§6

The SMTP address has no mailbox associated with it. / Mailbox does not exist.

e-postaktiverad användare utan postlåda, eller postlådan har flyttats till molnet

förväntat, hoppas över

The defaultFolder cannot be created by XSO

arkiv begärdes men postlådan saknar ett

förväntat, hoppas över

The message exceeds the maximum supported size.

objekt överstiger bearbetningsgränsen

förväntat, registreras som överhoppad

Was this article helpful?