Kopiera och transformera data från Microsoft 365 (Office 365) till Azure med hjälp av Azure Data Factory eller Synapse Analytics

GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics

Dricks

Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!

Azure Data Factory- och Synapse Analytics-pipelines integreras med Microsoft Graph-dataanslutning så att du kan ta med omfattande organisationsdata i din Microsoft 365-klientorganisation (Office 365) till Azure på ett skalbart sätt och skapa analysprogram och extrahera insikter baserat på dessa värdefulla datatillgångar. Integrering med Privileged Access Management ger säker åtkomstkontroll för värdefulla kurerade data i Microsoft 365 (Office 365). Se den här länken för en översikt över Microsoft Graph-dataanslutning.

Den här artikeln beskriver hur du använder kopieringsaktiviteten för att kopiera data och Dataflöde för att transformera data från Microsoft 365 (Office 365). En introduktion till att kopiera data finns i översikten över kopieringsaktiviteten. En introduktion till att transformera data finns i översikten över mappning av dataflöde.

Kommentar

Microsoft 365 Dataflöde-anslutningsappen är för närvarande i förhandsversion. Om du vill delta använder du det här registreringsformuläret: M365 + Analytics Preview.

Funktioner som stöds

Den här Microsoft 365-anslutningsappen (Office 365) stöds för följande funktioner:

Funktioner som stöds IR
aktiviteten Kopiera (källa/-)
Mappa dataflöde (källa/-)

(1) Azure Integration Runtime (2) Lokalt installerad integrationskörning

ADF Microsoft 365(Office 365)-anslutningsprogram och Microsoft Graph-dataanslutning möjliggör vid skalning inmatning av olika typer av datamängder från Exchange E-postaktiverade postlådor, inklusive adressbokskontakter, kalenderhändelser, e-postmeddelanden, användarinformation, postlådeinställningar och så vidare. Se den fullständiga listan över tillgängliga datamängder här .

För tillfället kan du bara mata in data från Microsoft 365 (Office 365) till Azure Blob Storage, Azure Data Lake Storage Gen1 och Azure Data Lake Storage Gen2 i JSON-format (typ setOfObjects) i en enda kopieringsaktivitet och ett dataflöde. När du kopierar till Azure Blob Storage är utdata en blob som innehåller JSON-text. Om du vill läsa in Microsoft 365 (Office 365) i andra typer av datalager eller i andra format kan du länka den första kopieringsaktiviteten eller dataflödet med en efterföljande aktivitet för att ytterligare läsa in data i något av de ADF-mållager som stöds (se kolumnen "stöds som mottagare" i tabellen "Datalager och format som stöds").

Viktigt!

  • Azure-prenumerationen som innehåller datafabriken eller Synapse-arbetsytan och datalagret för mottagare måste vara under samma Microsoft Entra-klientorganisation som Microsoft 365-klientorganisationen (Office 365).
  • Se till att Azure Integration Runtime-regionen som används för kopieringsaktivitet och målet finns i samma region där Microsoft 365-klientanvändares postlåda (Office 365) finns. Se här för att förstå hur Azure IR-platsen bestäms. I tabellen här finns en lista över Office-regioner som stöds och motsvarande Azure-regioner.
  • Autentisering med tjänstens huvudnamn är den enda autentiseringsmekanism som stöds för Azure Blob Storage, Azure Data Lake Storage Gen1 och Azure Data Lake Storage Gen2 som mållager.

Kommentar

Använd Azure Integration Runtime i både käll- och mottagarlänkade tjänster. Den lokalt installerade integrationskörningen och integreringskörningen för det hanterade virtuella nätverket stöds inte.

Förutsättningar

Om du vill kopiera och transformera data från Microsoft 365 (Office 365) till Azure måste du utföra följande nödvändiga steg:

  • Din Klientadministratör för Microsoft 365 (Office 365) måste slutföra åtgärder vid ombordstigning enligt beskrivningen här.
  • Skapa och konfigurera ett Microsoft Entra-webbprogram i Microsoft Entra-ID. Anvisningar finns i Skapa ett Microsoft Entra-program.
  • Anteckna följande värden som du använder för att definiera den länkade tjänsten för Microsoft 365 (Office 365):
  • Lägg till användaridentiteten som ska göra begäran om dataåtkomst som ägare till Microsoft Entra-webbprogrammet (från Microsoft Entra-webbprogrammet > Inställningar > Ägare > Lägg till ägare).
    • Användaridentiteten måste finnas i den Microsoft 365-organisation (Office 365) som du hämtar data från och får inte vara gästanvändare.

Godkänna nya begäranden om dataåtkomst

Om det här är första gången du begär data för den här kontexten (en kombination av vilken datatabell som används, vilket målkonto är de data som läses in i och vilken användaridentitet som gör begäran om dataåtkomst) ser du kopieringsaktivitetens status som "Pågår" och först när du klickar på länken "Information" under Åtgärder visas statusen som "RequestConsent". En medlem i godkännargruppen för dataåtkomst måste godkänna begäran i Privileged Access Management innan dataextraheringen kan fortsätta.

Läs här om hur godkännaren kan godkänna begäran om dataåtkomst och se här en förklaring av den övergripande integreringen med Privileged Access Management, inklusive hur du konfigurerar godkännargruppen för dataåtkomst.

Komma igång

Dricks

En genomgång av hur du använder Microsoft 365-anslutningsappen (Office 365) finns i artikeln Läsa in data från Microsoft 365 (Office 365).

Du kan skapa en pipeline med kopieringsaktiviteten och dataflödet med något av följande verktyg eller SDK:er. Välj en länk för att gå till en självstudie med stegvisa instruktioner för att skapa en pipeline med en kopieringsaktivitet.

Skapa en länkad tjänst till Microsoft 365 (Office 365) med hjälp av användargränssnittet

Använd följande steg för att skapa en länkad tjänst till Microsoft 365 (Office 365) i Användargränssnittet för Azure-portalen.

  1. Bläddra till fliken Hantera i Din Azure Data Factory- eller Synapse-arbetsyta och välj Länkade tjänster och klicka sedan på Ny:

  2. Sök efter Microsoft 365 (Office 365) och välj anslutningsappen Microsoft 365 (Office 365).

    Screenshot of the Microsoft 365 (Office 365) connector.

  3. Konfigurera tjänstinformationen, testa anslutningen och skapa den nya länkade tjänsten.

    Screenshot of linked service configuration for Microsoft 365 (Office 365).

Anslut eller konfigurationsinformation

Följande avsnitt innehåller information om egenskaper som används för att definiera Data Factory-entiteter som är specifika för Microsoft 365-anslutningsprogram (Office 365).

Länkade tjänstegenskaper

Följande egenskaper stöds för länkad Microsoft 365-tjänst (Office 365):

Property Beskrivning Obligatoriskt
type Typegenskapen måste anges till: Office365 Ja
office365TenantId Azure-klient-ID som Microsoft 365-kontot (Office 365) tillhör. Ja
servicePrincipalTenantId Ange den klientinformation som microsoft Entra-webbappen finns under. Ja
servicePrincipalId Ange programmets klient-ID. Ja
servicePrincipalKey Ange programmets nyckel. Markera det här fältet som en SecureString för att lagra det på ett säkert sätt. Ja
connectVia Integration Runtime som ska användas för att ansluta till datalagret. Om den inte anges använder den standardkörningen för Azure-integrering. Nej

Kommentar

Skillnaden mellan office365TenantId och servicePrincipalTenantId och motsvarande värde som ska anges:

  • Om du utvecklar ett program mot Microsoft 365-data (Office 365) för din egen organisations användning bör du ange samma klientorganisations-ID för båda egenskaperna, vilket är organisationens Klient-ID för Microsoft Entra.
  • Om du är EN ISV-utvecklare som utvecklar ett program för dina kunder blir office365TenantId kundens (programinstallationsprogram) Microsoft Entra-klient-ID och servicePrincipalTenantId blir ditt företags Klient-ID för Microsoft Entra.

Exempel:

{
    "name": "Office365LinkedService",
    "properties": {
        "type": "Office365",
        "typeProperties": {
            "office365TenantId": "<Microsoft 365 (Office 365) tenant id>",
            "servicePrincipalTenantId": "<AAD app service principal tenant id>",
            "servicePrincipalId": "<AAD app service principal id>",
            "servicePrincipalKey": {
                "type": "SecureString",
                "value": "<AAD app service principal key>"
            }
        }
    }
}

Egenskaper för datauppsättning

En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera datauppsättningar finns i artikeln datauppsättningar . Det här avsnittet innehåller en lista över egenskaper som stöds av Microsoft 365-datauppsättningen (Office 365).

Om du vill kopiera data från Microsoft 365 (Office 365) stöds följande egenskaper:

Property Beskrivning Obligatoriskt
type Typegenskapen för datauppsättningen måste anges till: Office365Table Ja
tableName Namnet på datauppsättningen som ska extraheras från Microsoft 365 (Office 365). Här finns en lista över microsoft 365-datauppsättningar (Office 365) som är tillgängliga för extrahering. Ja

Om du ställer in dateFilterColumn, startTime, endTimeoch userScopeFilterUri i datauppsättningen stöds den fortfarande som den är, medan du rekommenderas att använda den nya modellen i aktivitetskällan framöver.

Exempel

{
    "name": "DS_May2019_O365_Message",
    "properties": {
        "type": "Office365Table",
        "linkedServiceName": {
            "referenceName": "<Microsoft 365 (Office 365) linked service name>",
            "type": "LinkedServiceReference"
        },
        "schema": [],
        "typeProperties": {
            "tableName": "BasicDataSet_v0.Event_v1"
        }
    }
}

Kopiera egenskaper för aktivitet

En fullständig lista över avsnitt och egenskaper som är tillgängliga för att definiera aktiviteter finns i artikeln Pipelines . Det här avsnittet innehåller en lista över egenskaper som stöds av Microsoft 365-källan (Office 365).

Microsoft 365 (Office 365) som källa

Om du vill kopiera data från Microsoft 365 (Office 365) stöds följande egenskaper i avsnittet kopieringsaktivitetskälla:

Property Beskrivning Obligatoriskt
type Typegenskapen för kopieringsaktivitetskällan måste anges till: Office365Source Ja
allowedGroups Predikat för gruppval. Använd den här egenskapen för att välja upp till 10 användargrupper för vilka data ska hämtas. Om inga grupper anges returneras data för hela organisationen. Nej
userScopeFilterUri När allowedGroups egenskapen inte har angetts kan du använda ett predikatuttryck som tillämpas på hela klientorganisationen för att filtrera de specifika rader som ska extraheras från Microsoft 365 (Office 365). Predikatformatet ska matcha frågeformatet för Microsoft Graph-API:er, t.ex. https://graph.microsoft.com/v1.0/users?$filter=Department eq 'Finance'. Nej
dateFilterColumn Namnet på filterkolumnen DateTime. Använd den här egenskapen för att begränsa det tidsintervall för vilket Microsoft 365-data (Office 365) extraheras. Ja om datauppsättningen har en eller flera DateTime-kolumner. Här finns en lista över datauppsättningar som kräver det här DateTime-filtret.
startTime Starta DateTime-värdet för att filtrera på. Ja om dateFilterColumn har angetts
endTime End DateTime-värde att filtrera på. Ja om dateFilterColumn har angetts
outputColumns Matris med kolumner som ska kopieras till mottagare. Nej

Exempel:

"activities": [
    {
        "name": "CopyFromO365ToBlob",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Microsoft 365 (Office 365) input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "Office365Source",
                "dateFilterColumn": "CreatedDateTime",
                "startTime": "2019-04-28T16:00:00.000Z",
                "endTime": "2019-05-05T16:00:00.000Z",
                "userScopeFilterUri": "https://graph.microsoft.com/v1.0/users?$filter=Department eq 'Finance'",
                "outputColumns": [
                    {
                        "name": "Id"
                    },
                    {
                        "name": "CreatedDateTime"
                    },
                    {
                        "name": "LastModifiedDateTime"
                    },
                    {
                        "name": "ChangeKey"
                    },
                    {
                        "name": "Categories"
                    },
                    {
                        "name": "OriginalStartTimeZone"
                    },
                    {
                        "name": "OriginalEndTimeZone"
                    },
                    {
                        "name": "ResponseStatus"
                    },
                    {
                        "name": "iCalUId"
                    },
                    {
                        "name": "ReminderMinutesBeforeStart"
                    },
                    {
                        "name": "IsReminderOn"
                    },
                    {
                        "name": "HasAttachments"
                    },
                    {
                        "name": "Subject"
                    },
                    {
                        "name": "Body"
                    },
                    {
                        "name": "Importance"
                    },
                    {
                        "name": "Sensitivity"
                    },
                    {
                        "name": "Start"
                    },
                    {
                        "name": "End"
                    },
                    {
                        "name": "Location"
                    },
                    {
                        "name": "IsAllDay"
                    },
                    {
                        "name": "IsCancelled"
                    },
                    {
                        "name": "IsOrganizer"
                    },
                    {
                        "name": "Recurrence"
                    },
                    {
                        "name": "ResponseRequested"
                    },
                    {
                        "name": "ShowAs"
                    },
                    {
                        "name": "Type"
                    },
                    {
                        "name": "Attendees"
                    },
                    {
                        "name": "Organizer"
                    },
                    {
                        "name": "WebLink"
                    },
                    {
                        "name": "Attachments"
                    },
                    {
                        "name": "BodyPreview"
                    },
                    {
                        "name": "Locations"
                    },
                    {
                        "name": "OnlineMeetingUrl"
                    },
                    {
                        "name": "OriginalStart"
                    },
                    {
                        "name": "SeriesMasterId"
                    }
                ]
            },
            "sink": {
                "type": "BlobSink"
            }
        }
    }
]

Transformera data med Microsoft 365-anslutningsappen

Microsoft 365-datauppsättningar kan användas som en källa med mappning av dataflöden. Dataflödet transformerar data genom att platta ut datauppsättningen automatiskt. På så sätt kan användarna koncentrera sig på att utnyttja den utplattade datamängden för att påskynda sina analysscenarier.

Mappa dataflödesegenskaper

Utför följande steg för att skapa ett mappningsdataflöde med hjälp av Microsoft 365-anslutningsappen som källa:

  1. I ADF Studio går du till avsnittet Dataflöden i author-hubben , väljer knappen ... för att listrutan Dataflödesåtgärder och väljer objektet Nytt dataflöde . Aktivera felsökningsläge med hjälp av felsökningsknappen Dataflöde i det övre fältet på arbetsytan för dataflöden.

    Screenshot of the data flow debug button in mapping data flow.

  2. I redigeraren för dataflödesmappning väljer du Lägg till källa.

    Screenshot of add source in mapping data flow.

  3. På fliken Källinställningar väljer du Infoga i egenskapen Källtyp, Microsoft 365 (Office 365) i datauppsättningstypen Infoga och den Länkade Microsoft 365-tjänst som du skapade tidigare.

    Screenshot of the select dataset option in source settings of mapping data flow source.

  4. På fliken Källalternativ väljer du tabellnamnet för den Microsoft 365-tabell som du vill transformera. Välj också alternativet Automatisk utplatta för att avgöra om du vill att dataflödet ska platta ut källdatauppsättningen automatiskt.

    Screenshot of the source options of mapping data flow source.

  5. För flikarna Projektion, Optimera och Inspektera följer du dataflödet för mappning.

  6. På fliken Dataförhandsgranskning klickar du på knappen Uppdatera för att hämta en exempeldatauppsättning för validering.

En lista över datalager som stöds som källor och mottagare av kopieringsaktiviteten finns i datalager som stöds.