Sdílet prostřednictvím


Integrace služby Azure Blob Storage s konektorem služby

Na této stránce jsou uvedeny podporované typy ověřování, typy klientů a ukázkový kód služby Azure Blob Storage pomocí konektoru služby. Tato stránka také zobrazuje výchozí názvy proměnných prostředí a hodnoty (nebo konfiguraci Spring Boot), které získáte při vytváření připojení služby.

Podporované výpočetní služby

Konektor služby se dá použít k připojení následujících výpočetních služeb ke službě Azure Blob Storage:

  • Azure App Service
  • Azure Container Apps
  • Azure Functions
  • Azure Kubernetes Service (AKS)
  • Azure Spring Apps

Podporované typy ověřování a typy klientů

Následující tabulka ukazuje, které kombinace metod ověřování a klientů se podporují pro připojení výpočetní služby ke službě Azure Blob Storage pomocí konektoru služby. "Ano" označuje, že kombinace je podporována, zatímco "Ne" označuje, že není podporována.

Typ klienta Spravovaná identita přiřazená systémem Spravovaná identita přiřazená uživatelem Tajný kód / připojovací řetězec Instanční objekt
.NET Ano Ano Ano Yes
Java Ano Ano Ano Yes
Java – Spring Boot Ano Ano Ano Yes
Node.js Ano Ano Ano Yes
Python Ano Ano Ano Yes
Go Ano Ano Ano Yes
Nic Ano Ano Ano Yes

Tato tabulka jasně označuje, že jsou podporovány všechny kombinace typů klientů a metod ověřování s výjimkou typu klienta Java – Spring Boot, který podporuje pouze metodu Secret / připojovací řetězec. Všechny ostatní typy klientů můžou pro připojení ke službě Azure Blob Storage pomocí konektoru služby použít některou z metod ověřování.

Výchozí názvy proměnných prostředí nebo vlastnosti aplikace a ukázkový kód

Odkazujte na podrobnosti o připojení a vzorový kód v následujících tabulkách podle typu ověřování a typu klienta vašeho připojení a připojte výpočetní služby ke službě Azure Blob Storage. Další informace o konvenci vytváření názvů proměnných prostředí konektoru Service Connector.

Spravovaná identita přiřazená systémem

Klient SpringBoot

Ověřování pomocí spravované identity přiřazené systémem je k dispozici pouze pro Spring Cloud Azure verze 4.0 nebo vyšší.

Výchozí název proměnné prostředí Popis Příklad hodnoty
spring.cloud.azure.storage.blob.credential.managed-identity-enabled Jestli se má povolit spravovaná identita True
spring.cloud.azure.storage.blob.account-name Název účtu úložiště storage-account-name
spring.cloud.azure.storage.blob.endpoint Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/

Ostatní klienti

Výchozí název proměnné prostředí Popis Příklad hodnoty
AZURE_STORAGEBLOB_RESOURCEENDPOINT Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/

Ukázkový kód

Projděte si následující kroky a kód a připojte se ke službě Azure Blob Storage pomocí spravované identity přiřazené systémem.

K ověření můžete použít azure-identity spravovanou identitu nebo instanční objekt. Získejte adresu URL koncového bodu služby Azure Blob Storage z proměnné prostředí přidané konektorem služby. Při použití následujícího kódu odkomentujte část fragmentu kódu pro typ ověřování, který chcete použít.

Instalace závislostí

dotnet add package Azure.Identity

Tady je ukázkový kód pro připojení k úložišti objektů blob pomocí spravované identity nebo instančního objektu.

using Azure.Identity;
using Azure.Storage.Blobs;

// get Blob endpoint
var blobEndpoint = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_RESOURCEENDPOINT");

// Uncomment the following lines corresponding to the authentication type you want to use.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();

// user-assigned managed identity
// var credential = new DefaultAzureCredential(
//     new DefaultAzureCredentialOptions
//     {
//         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTID");
//     });

// service principal 
// var tenantId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);

var blobServiceClient = new BlobServiceClient(
        new Uri(blobEndpoint),
        credential);

Spravovaná identita přiřazená uživatelem

Klient SpringBoot

Ověřování pomocí spravované identity přiřazené uživatelem je k dispozici pouze pro Spring Cloud Azure verze 4.0 nebo vyšší.

Výchozí název proměnné prostředí Popis Příklad hodnoty
spring.cloud.azure.storage.blob.credential.managed-identity-enabled Jestli se má povolit spravovaná identita True
spring.cloud.azure.storage.blob.account-name Název účtu úložiště storage-account-name
spring.cloud.azure.storage.blob.endpoint Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/
spring.cloud.azure.storage.blob.credential.client-id ID klienta spravované identity přiřazené uživatelem 00001111-aaaa-2222-bbbb-3333cccc4444

Ostatní klienti

Výchozí název proměnné prostředí Popis Příklad hodnoty
AZURE_STORAGEBLOB_RESOURCEENDPOINT Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/
AZURE_STORAGEBLOB_CLIENTID ID klienta <client-ID>

Ukázkový kód

Projděte si následující kroky a kód a připojte se ke službě Azure Blob Storage pomocí spravované identity přiřazené uživatelem.

K ověření můžete použít azure-identity spravovanou identitu nebo instanční objekt. Získejte adresu URL koncového bodu služby Azure Blob Storage z proměnné prostředí přidané konektorem služby. Při použití následujícího kódu odkomentujte část fragmentu kódu pro typ ověřování, který chcete použít.

Instalace závislostí

dotnet add package Azure.Identity

Tady je ukázkový kód pro připojení k úložišti objektů blob pomocí spravované identity nebo instančního objektu.

using Azure.Identity;
using Azure.Storage.Blobs;

// get Blob endpoint
var blobEndpoint = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_RESOURCEENDPOINT");

// Uncomment the following lines corresponding to the authentication type you want to use.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();

// user-assigned managed identity
// var credential = new DefaultAzureCredential(
//     new DefaultAzureCredentialOptions
//     {
//         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTID");
//     });

// service principal 
// var tenantId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);

var blobServiceClient = new BlobServiceClient(
        new Uri(blobEndpoint),
        credential);

Connection string

Upozorňující

Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Ověřovací tok popsaný v tomto postupu vyžaduje velmi vysoký stupeň důvěryhodnosti v aplikaci a nese rizika, která nejsou přítomna v jiných tocích. Tento tok byste měli použít jenom v případě, že jiné bezpečnější toky, jako jsou spravované identity, nejsou přijatelné.

Klient SpringBoot

Vlastnosti aplikace Popis Příklad hodnoty
azure.storage.account-name Název účtu úložiště objektů blob <storage-account-name>
azure.storage.account-key Klíč účtu služby Blob Storage <account-key>
azure.storage.blob-endpoint Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/
spring.cloud.azure.storage.blob.account-name Název účtu úložiště objektů blob pro Spring Cloud Azure verze 4.0 nebo novější <storage-account-name>
spring.cloud.azure.storage.blob.account-key Klíč účtu služby Blob Storage pro Spring Cloud Azure verze 4.0 nebo novější <account-key>
spring.cloud.azure.storage.blob.endpoint Koncový bod služby Blob Storage pro Spring Cloud Azure verze 4.0 nebo novější https://<storage-account-name>.blob.core.windows.net/

Ostatní klienti

Výchozí název proměnné prostředí Popis Příklad hodnoty
AZURE_STORAGEBLOB_CONNECTIONSTRING Připojovací řetězec služby Blob Storage DefaultEndpointsProtocol=https;AccountName=<account name>;AccountKey=<account-key>;EndpointSuffix=core.windows.net

Ukázkový kód

Informace o připojení ke službě Azure Blob Storage pomocí připojovací řetězec najdete v následujících krocích a kódu.

Získejte připojovací řetězec Azure Blob Storage z proměnné prostředí přidané konektorem služby.

Instalace závislostí

dotnet add package Azure.Storage.Blob
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using System; 

// get Blob connection string
var connectionString = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CONNECTIONSTRING");

// Create a BlobServiceClient object 
var blobServiceClient = new BlobServiceClient(connectionString);

Instanční objekt

Klient SpringBoot

Ověřování pomocí instančního objektu je k dispozici pouze pro Spring Cloud Azure verze 4.0 nebo vyšší.

Výchozí název proměnné prostředí Popis Příklad hodnoty
spring.cloud.azure.storage.blob.account-name Název účtu úložiště storage-account-name
spring.cloud.azure.storage.blob.endpoint Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/
spring.cloud.azure.storage.blob.credential.client-id ID klienta instančního objektu. 00001111-aaaa-2222-bbbb-3333cccc4444
spring.cloud.azure.storage.blob.credential.client-secret Tajný klíč klienta pro ověřování instančního objektu Aa1Bb~2Cc3.-Dd4Ee5Ff6Gg7Hh8Ii9_Jj0Kk1Ll2

Ostatní klienti

Výchozí název proměnné prostředí Popis Příklad hodnoty
AZURE_STORAGEBLOB_RESOURCEENDPOINT Koncový bod služby Blob Storage https://<storage-account-name>.blob.core.windows.net/
AZURE_STORAGEBLOB_CLIENTID ID klienta <client-ID>
AZURE_STORAGEBLOB_CLIENTSECRET Tajný klíč klienta <client-secret>
AZURE_STORAGEBLOB_TENANTID ID vašeho tenanta <tenant-ID>

Ukázkový kód

Informace o připojení ke službě Azure Blob Storage pomocí instančního objektu najdete v následujících krocích a kódu.

K ověření můžete použít azure-identity spravovanou identitu nebo instanční objekt. Získejte adresu URL koncového bodu služby Azure Blob Storage z proměnné prostředí přidané konektorem služby. Při použití následujícího kódu odkomentujte část fragmentu kódu pro typ ověřování, který chcete použít.

Instalace závislostí

dotnet add package Azure.Identity

Tady je ukázkový kód pro připojení k úložišti objektů blob pomocí spravované identity nebo instančního objektu.

using Azure.Identity;
using Azure.Storage.Blobs;

// get Blob endpoint
var blobEndpoint = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_RESOURCEENDPOINT");

// Uncomment the following lines corresponding to the authentication type you want to use.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();

// user-assigned managed identity
// var credential = new DefaultAzureCredential(
//     new DefaultAzureCredentialOptions
//     {
//         ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTID");
//     });

// service principal 
// var tenantId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_STORAGEBLOB_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);

var blobServiceClient = new BlobServiceClient(
        new Uri(blobEndpoint),
        credential);

Další kroky

Další informace o konektoru Service Connector najdete v kurzech.