Komma åt datalager och filresurser med Windows-autentisering från SSIS-paket i Azure

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!

Du kan använda Windows-autentisering för att komma åt datalager, till exempel SQL-servrar, filresurser, Azure Files osv. från SSIS-paket som körs på din Azure-SSIS Integration Runtime (IR) i Azure Data Factory (ADF) och Azure Synapse. Dina datalager kan finnas lokalt, finnas på virtuella Azure-datorer (VM) eller köras i Azure som hanterade tjänster. Om de finns lokalt måste du ansluta din Azure-SSIS IR till ett virtuellt nätverk (Microsoft Azure Virtual Network) som är anslutet till ditt lokala nätverk. Mer information finns i Ansluta Azure-SSIS IR till ett virtuellt Microsoft Azure-nätverk. Det finns fyra metoder för att komma åt datalager med Windows-autentisering från SSIS-paket som körs på din Azure-SSIS IR:

Anslutningsmetod Effektivt omfång Installationssteg Åtkomstmetod i paket Antal autentiseringsuppsättningar och anslutna resurser Typ av anslutna resurser
Konfigurera en körningskontext på aktivitetsnivå Per kör SSIS-paketaktivitet Konfigurera Windows-autentiseringsegenskapen för att konfigurera en "Körning/Kör som"-kontext när du kör SSIS-paket som Kör SSIS-paketaktiviteter i ADF-pipelines.

Mer information finns i Konfigurera körning av SSIS-paketaktivitet.
Få åtkomst till resurser direkt i paket, till exempel använda UNC-sökväg för att komma åt filresurser eller Azure Files: \\YourFileShareServerName\YourFolderName eller \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName Stöd för endast en uppsättning autentiseringsuppgifter för alla anslutna resurser – Filresurser lokalt/virtuella Azure-datorer

– Azure Files, se Använda en Azure-filresurs

– SQL-servrar lokalt/virtuella Azure-datorer med Windows-autentisering

– Andra resurser med Windows-autentisering
Konfigurera en körningskontext på katalognivå Per Azure-SSIS IR, men åsidosättas när du konfigurerar en körningskontext på aktivitetsnivå (se ovan) Kör en lagrad SSISDB-procedur catalog.set_execution_credential för att konfigurera en "Körning/Kör som"-kontext.

Mer information finns i resten av den här artikeln nedan.
Få åtkomst till resurser direkt i paket, till exempel använda UNC-sökväg för att komma åt filresurser eller Azure Files: \\YourFileShareServerName\YourFolderName eller \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName Stöd för endast en uppsättning autentiseringsuppgifter för alla anslutna resurser – Filresurser lokalt/virtuella Azure-datorer

– Azure Files, se Använda en Azure-filresurs

– SQL-servrar lokalt/virtuella Azure-datorer med Windows-autentisering

– Andra resurser med Windows-autentisering
Spara autentiseringsuppgifter via cmdkey kommando Per Azure-SSIS IR, men åsidosättas när du konfigurerar en aktivitets-/katalog-nivåkörningskontext (se ovan) Kör cmdkey kommandot i ett anpassat installationsskript (main.cmd) när du etablerar din Azure-SSIS IR, till exempel om du använder filresurser, Azure Files eller SQL Server:

cmdkey /add:YourFileShareServerName /user:YourDomainName\YourUsername /pass:YourPassword,

cmdkey /add:YourAzureStorageAccountName.file.core.windows.net /user:azure\YourAzureStorageAccountName /pass:YourAccessKeyEller

cmdkey /add:YourSQLServerFullyQualifiedDomainNameOrIPAddress:YorSQLServerPort /user:YourDomainName\YourUsername /pass:YourPassword.

Mer information finns i Anpassa konfiguration för Azure-SSIS IR.
Få åtkomst till resurser direkt i paket, till exempel använda UNC-sökväg för att komma åt filresurser eller Azure Files: \\YourFileShareServerName\YourFolderName eller \\YourAzureStorageAccountName.file.core.windows.net\YourFolderName Stöd för flera uppsättningar med autentiseringsuppgifter för olika anslutna resurser – Filresurser lokalt/virtuella Azure-datorer

– Azure Files, se Använda en Azure-filresurs

– SQL-servrar lokalt/virtuella Azure-datorer med Windows-autentisering

– Andra resurser med Windows-autentisering
Montering av enheter vid paketkörningstidpunkt (ej beständiga) Per paket Kör net use kommandot i Kör processuppgift som läggs till i början av kontrollflödet i dina paket, till exempel net use D: \\YourFileShareServerName\YourFolderName Få åtkomst till filresurser via mappade enheter Stöd för flera enheter för olika filresurser – Filresurser lokalt/virtuella Azure-datorer

– Azure Files, se Använda en Azure-filresurs

Varning

Om du inte använder någon av ovanstående metoder för att komma åt datalager med Windows-autentisering kan dina paket som är beroende av Windows-autentisering inte komma åt dem och misslyckas vid körning.

Resten av den här artikeln beskriver hur du konfigurerar SSIS-katalog (SSISDB) som finns i SQL Database/SQL Managed Instance för att köra paket på Azure-SSIS IR som använder Windows-autentisering för att komma åt datalager.

Du kan bara använda en uppsättning autentiseringsuppgifter

När du använder Windows-autentisering i ett SSIS-paket kan du bara använda en uppsättning autentiseringsuppgifter. De domänautentiseringsuppgifter som du anger när du följer stegen i den här artikeln gäller för alla paketkörningar – interaktiva eller schemalagda – på din Azure-SSIS IR tills du ändrar eller tar bort dem. Om paketet måste ansluta till flera datalager med olika uppsättningar autentiseringsuppgifter bör du överväga ovanstående alternativa metoder.

Ange domänautentiseringsuppgifter för Windows-autentisering

Gör följande för att ange domänautentiseringsuppgifter som låter paket använda Windows-autentisering för att komma åt datalager lokalt:

  1. Med SQL Server Management Studio (SSMS) eller ett annat verktyg ansluter du till SQL Database/SQL Managed Instance som är värd för SSISDB. Mer information finns i Anslut till SSISDB i Azure.

  2. Öppna ett frågefönster med SSISDB som aktuell databas.

  3. Kör följande lagrade procedur och ange lämpliga autentiseringsuppgifter för domänen:

    catalog.set_execution_credential @user='<your user name>', @domain='<your domain name>', @password='<your password>'
    
  4. Kör dina SSIS-paket. Paketen använder de autentiseringsuppgifter som du angav för att komma åt datalager lokalt med Windows-autentisering.

Visa domänautentiseringsuppgifter

Om du vill visa autentiseringsuppgifterna för den aktiva domänen gör du följande:

  1. Med SSMS eller något annat verktyg ansluter du till SQL Database/SQL Managed Instance som är värd för SSISDB. Mer information finns i Anslut till SSISDB i Azure.

  2. Öppna ett frågefönster med SSISDB som aktuell databas.

  3. Kör följande lagrade procedur och kontrollera utdata:

    SELECT * 
    FROM catalog.master_properties
    WHERE property_name = 'EXECUTION_DOMAIN' OR property_name = 'EXECUTION_USER'
    

Rensa domänautentiseringsuppgifter

Gör följande för att rensa och ta bort de autentiseringsuppgifter som du angav enligt beskrivningen i den här artikeln:

  1. Med SSMS eller något annat verktyg ansluter du till SQL Database/SQL Managed Instance som är värd för SSISDB. Mer information finns i Anslut till SSISDB i Azure.

  2. Öppna ett frågefönster med SSISDB som aktuell databas.

  3. Kör följande lagrade procedur:

    catalog.set_execution_credential @user='', @domain='', @password=''
    

Anslut till en LOKAL SQL Server

Gör följande för att kontrollera om du kan ansluta till en SQL Server lokalt:

  1. Om du vill köra det här testet letar du upp en dator som inte är domänansluten.

  2. På den icke-domänanslutna datorn kör du följande kommando för att starta SSMS med de domänautentiseringsuppgifter som du vill använda:

    runas.exe /netonly /user:<domain>\<username> SSMS.exe
    
  3. Från SSMS kontrollerar du om du kan ansluta till SQL Server lokalt.

Förutsättningar

Gör följande för att få åtkomst till en SQL Server lokalt från paket som körs i Azure:

  1. Aktivera TCP/IP-protokoll i Konfigurationshanteraren för SQL Server.

  2. Tillåt åtkomst via Windows-brandväggen. Mer information finns i Konfigurera Windows-brandväggen för åtkomst till SQL Server.

  3. Anslut din Azure-SSIS IR till ett virtuellt Microsoft Azure-nätverk som är anslutet till SQL Server lokalt. Mer information finns i Ansluta Azure-SSIS IR till ett virtuellt Microsoft Azure-nätverk.

  4. Använd den lagrade SSISDB-proceduren catalog.set_execution_credential för att ange autentiseringsuppgifter enligt beskrivningen i den här artikeln.

Anslut till en filresurs lokalt

Gör följande för att kontrollera om du kan ansluta till en filresurs lokalt:

  1. Om du vill köra det här testet letar du upp en dator som inte är domänansluten.

  2. Kör följande kommandon på den icke-domänanslutna datorn. Dessa kommandon öppnar ett kommandotolkfönster med de domänautentiseringsuppgifter som du vill använda och testar sedan anslutningen till filresursen lokalt genom att hämta en kataloglista.

    runas.exe /netonly /user:<domain>\<username> cmd.exe
    dir \\fileshare
    
  3. Kontrollera om kataloglistan returneras för filresursen lokalt.

Förutsättningar

Gör följande för att få åtkomst till en filresurs lokalt från paket som körs i Azure:

  1. Tillåt åtkomst via Windows-brandväggen.

  2. Anslut din Azure-SSIS IR till ett virtuellt Microsoft Azure-nätverk som är anslutet till filresursen lokalt. Mer information finns i Ansluta Azure-SSIS IR till ett virtuellt Microsoft Azure-nätverk.

  3. Använd den lagrade SSISDB-proceduren catalog.set_execution_credential för att ange autentiseringsuppgifter enligt beskrivningen i den här artikeln.

Anslut till en filresurs på en virtuell Azure-dator

Gör följande för att komma åt en filresurs på en virtuell Azure-dator från paket som körs i Azure:

  1. Med SSMS eller något annat verktyg ansluter du till SQL Database/SQL Managed Instance som är värd för SSISDB. Mer information finns i Anslut till SSISDB i Azure.

  2. Öppna ett frågefönster med SSISDB som aktuell databas.

  3. Kör följande lagrade procedur och ange lämpliga autentiseringsuppgifter för domänen:

    catalog.set_execution_credential @domain = N'.', @user = N'username of local account on Azure virtual machine', @password = N'password'
    

Anslut till en filresurs i Azure Files

Mer information om Azure Files finns i Azure Files.

Gör följande för att komma åt en filresurs i Azure Files från paket som körs i Azure:

  1. Med SSMS eller något annat verktyg ansluter du till SQL Database/SQL Managed Instance som är värd för SSISDB. Mer information finns i Anslut till SSISDB i Azure.

  2. Öppna ett frågefönster med SSISDB som aktuell databas.

  3. Kör följande lagrade procedur och ange lämpliga autentiseringsuppgifter för domänen:

    catalog.set_execution_credential @domain = N'Azure', @user = N'<storage-account-name>', @password = N'<storage-account-key>'