Dela via


Auktorisera åtkomst för AzCopy med en användaridentitet

Användaridentitetsautentisering är ett enkelt sätt att auktorisera AzCopy-åtgärder med dina personliga Microsoft Entra-ID-autentiseringsuppgifter. Den här autentiseringsmetoden är perfekt för interaktiva scenarier där du manuellt kör AzCopy-kommandon eller arbetar i utvecklingsmiljöer.

Den här artikeln visar hur du autentiserar AzCopy med hjälp av din användaridentitet med miljövariabler, det interaktiva AzCopy-inloggningskommandot eller genom att utnyttja befintliga Azure CLI- eller Azure PowerShell-sessioner.

Andra sätt att auktorisera åtkomst till AzCopy finns i Auktorisera AzCopy.

Verifiera rolltilldelningar

Se till att din användaridentitet har den Azure-roll som krävs för dina avsedda åtgärder:

Anvisningar för rolltilldelning finns i Tilldela en Azure-roll för åtkomst till blobdata (Blob Storage) eller Välj hur du auktoriserar åtkomst till fildata i Azure-portalen (Azure Files).

Anmärkning

Rolltilldelningar kan ta upp till fem minuter att träda i kraft.

Om du överför blobar i ett konto som har ett hierarkiskt namnområde behöver du inte tilldela dessa roller till säkerhetsobjektet om du lägger till säkerhetsobjektet i åtkomstkontrollistan (ACL) för målcontainern eller katalogen. I ACL behöver din säkerhetsentitet skrivbehörighet för målkatalogen och körningsbehörighet för containern och varje överordnad katalog. Mer information finns i Åtkomstkontrollmodell i Azure Data Lake Storage.

Auktorisera med hjälp av miljövariabler

Om du vill auktorisera åtkomst anger du miljövariabler i minnet och kör sedan alla AzCopy-kommandon. AzCopy hämtar den autentiseringstoken som krävs för att slutföra åtgärden. När åtgärden är klar tas token bort från minnet. AzCopy hämtar OAuth-token med hjälp av de autentiseringsuppgifter som du anger.

När du har kontrollerat att användaridentiteten har nödvändig auktorisering anger du följande kommando och trycker sedan på RETUR.

export AZCOPY_AUTO_LOGIN_TYPE=DEVICE

Kör sedan valfritt AzCopy-kommando (till exempel: azcopy list https://contoso.blob.core.windows.net).

Det här kommandot returnerar en autentiseringskod och URL:en för en webbplats. Öppna webbplatsen, ange koden och välj sedan knappen Nästa .

Skapa en container

Ett inloggningsfönster visas. I det fönstret loggar du in på ditt Azure-konto med dina autentiseringsuppgifter för Azure-kontot. När du har loggat in slutförs åtgärden.

Auktorisera med kommandot AzCopy-inloggning

I stället för att använda minnesinterna variabler kan du auktorisera åtkomst med hjälp azcopy login av kommandot .

Kommandot azcopy login hämtar en OAuth-token och placerar sedan denna token i ett hemligt arkiv i systemet. Om operativsystemet inte har något hemligt arkiv, till exempel en Linux-nyckelring, azcopy login fungerar inte kommandot eftersom det inte finns någon plats där token finns.

När du har kontrollerat att användaridentiteten har den auktoriseringsnivå som krävs öppnar du en kommandotolk, skriver följande kommando och trycker sedan på RETUR .

azcopy login

Om du får ett fel kan du prova att inkludera klientorganisations-ID:t för den organisation som lagringskontot tillhör.

azcopy login --tenant-id=<tenant-id>

<tenant-id> Ersätt platshållaren med klientorganisations-ID:t för den organisation som lagringskontot tillhör. Om du vill hitta klientorganisations-ID:t väljer du Klientegenskaper > Klient-ID i Azure-portalen.

Det här kommandot returnerar en autentiseringskod och URL:en för en webbplats. Öppna webbplatsen, ange koden och välj sedan knappen Nästa .

Skapa en container

Ett inloggningsfönster visas. I det fönstret loggar du in på ditt Azure-konto med dina autentiseringsuppgifter för Azure-kontot. När du har loggat in kan du stänga webbläsarfönstret och börja använda AzCopy.

Auktorisera med hjälp av Azure CLI

Om du loggar in med hjälp av Azure CLI hämtar Azure CLI en OAuth-token som AzCopy kan använda för att auktorisera åtgärder.

Om du vill göra det möjligt för AzCopy att använda den token skriver du följande kommando och trycker sedan på RETUR .

export AZCOPY_AUTO_LOGIN_TYPE=AZCLI
export AZCOPY_TENANT_ID=<tenant-id>

Mer information om hur du loggar in med hjälp av Azure CLI finns i Logga in på Azure interaktivt med Hjälp av Azure CLI.

Auktorisera med hjälp av Azure PowerShell

Om du loggar in med Hjälp av Azure PowerShell hämtar Azure PowerShell en OAuth-token som AzCopy kan använda för att auktorisera åtgärder.

Om du vill göra det möjligt för AzCopy att använda den token skriver du följande kommando och trycker sedan på RETUR .

$Env:AZCOPY_AUTO_LOGIN_TYPE="PSCRED"
$Env:AZCOPY_TENANT_ID=<tenant-id>

Mer information om hur du loggar in med hjälp av Azure PowerShell finns i Logga in på Azure PowerShell interaktivt.

Nästa steg