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:YourAccessKey ellercmdkey /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:
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 Ansluta till SSISDB i Azure.
Öppna ett frågefönster med SSISDB som aktuell databas.
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>'
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:
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 Ansluta till SSISDB i Azure.
Öppna ett frågefönster med SSISDB som aktuell databas.
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:
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 Ansluta till SSISDB i Azure.
Öppna ett frågefönster med SSISDB som aktuell databas.
Kör följande lagrade procedur:
catalog.set_execution_credential @user='', @domain='', @password=''
Ansluta till en SQL Server lokalt
Gör följande för att kontrollera om du kan ansluta till en SQL Server lokalt:
Om du vill köra det här testet letar du upp en dator som inte är domänansluten.
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
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:
Aktivera TCP/IP-protokoll i Konfigurationshanteraren för SQL Server.
Tillåt åtkomst via Windows-brandväggen. Mer information finns i Konfigurera Windows-brandväggen för åtkomst till SQL Server.
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.
Använd den lagrade SSISDB-proceduren
catalog.set_execution_credential
för att ange autentiseringsuppgifter enligt beskrivningen i den här artikeln.
Ansluta till en filresurs lokalt
Gör följande för att kontrollera om du kan ansluta till en filresurs lokalt:
Om du vill köra det här testet letar du upp en dator som inte är domänansluten.
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
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:
Tillåt åtkomst via Windows-brandväggen.
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.
Använd den lagrade SSISDB-proceduren
catalog.set_execution_credential
för att ange autentiseringsuppgifter enligt beskrivningen i den här artikeln.
Ansluta 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:
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 Ansluta till SSISDB i Azure.
Öppna ett frågefönster med SSISDB som aktuell databas.
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'
Ansluta 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:
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 Ansluta till SSISDB i Azure.
Öppna ett frågefönster med SSISDB som aktuell databas.
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>'
Relaterat innehåll
- Distribuera dina paket. Mer information finns i Distribuera ett SSIS-projekt till Azure med SSMS.
- Kör paketen. Mer information finns i Köra SSIS-paket i Azure med SSMS.
- Schemalägg dina paket. Mer information finns i Schemalägga SSIS-paket i Azure.