Delen via


Azure Blob Storage integreren met Service Connector

Op deze pagina ziet u de ondersteunde verificatietypen, clienttypen en voorbeeldcode van Azure Blob Storage met behulp van Service Connector. Op deze pagina ziet u ook de standaardnamen en waarden van omgevingsvariabelen (of Spring Boot-configuratie) die u krijgt wanneer u de serviceverbinding maakt.

Ondersteunde rekenservices

Serviceconnector kan worden gebruikt om de volgende rekenservices te verbinden met Azure Blob Storage:

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

Ondersteunde verificatietypen en clienttypen

In de onderstaande tabel ziet u welke combinaties van verificatiemethoden en clients worden ondersteund voor het verbinden van uw rekenservice met Azure Blob Storage met behulp van Service Connector. Een 'Ja' geeft aan dat de combinatie wordt ondersteund, terwijl een 'Nee' aangeeft dat deze niet wordt ondersteund.

Client-type Door het systeem toegewezen beheerde identiteit Door de gebruiker toegewezen beheerde identiteit Geheim/verbindingsreeks Service-principal
.NET Ja Ja Ja Ja
Java Ja Ja Ja Ja
Java - Spring Boot Ja Ja Ja Ja
Node.js Ja Ja Ja Ja
Python Ja Ja Ja Ja
Go Ja Ja Ja Ja
Geen Ja Ja Ja Ja

Deze tabel geeft duidelijk aan dat alle combinaties van clienttypen en verificatiemethoden worden ondersteund, met uitzondering van het Java - Spring Boot-clienttype, dat alleen de methode Secret/verbindingsreeks ondersteunt. Alle andere clienttypen kunnen elk van de verificatiemethoden gebruiken om verbinding te maken met Azure Blob Storage met behulp van serviceconnector.

Namen van standaardomgevingsvariabelen of toepassingseigenschappen en voorbeeldcode

Verwijs naar de verbindingsgegevens en voorbeeldcode in de volgende tabellen, volgens het verificatietype en het clienttype van uw verbinding, om rekenservices te verbinden met Azure Blob Storage. Meer informatie over naamgevingsconventie voor omgevingsvariabelen van serviceconnector.

Door het systeem toegewezen beheerde identiteit

SpringBoot-client

Verificatie met een door het systeem toegewezen beheerde identiteit is alleen beschikbaar voor Spring Cloud Azure versie 4.0 of hoger.

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
spring.cloud.azure.storage.blob.credential.managed-identity-enabled Of beheerde identiteit moet worden ingeschakeld True
spring.cloud.azure.storage.blob.account-name Naam voor het opslagaccount storage-account-name
spring.cloud.azure.storage.blob.endpoint Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/

Andere clients

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
AZURE_STORAGEBLOB_RESOURCEENDPOINT Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/

Voorbeeldcode

Raadpleeg de stappen en code hieronder om verbinding te maken met Azure Blob Storage met behulp van een door het systeem toegewezen beheerde identiteit.

U kunt deze gebruiken azure-identity om te verifiëren via een beheerde identiteit of service-principal. Haal de Azure Blob Storage-eindpunt-URL op uit de omgevingsvariabele die is toegevoegd door Service Connector. Als u de onderstaande code gebruikt, moet u het gedeelte van het codefragment verwijderen voor het verificatietype dat u wilt gebruiken.

Afhankelijkheden installeren

dotnet add package Azure.Identity

Hier volgt voorbeeldcode om verbinding te maken met Blob Storage met behulp van een beheerde identiteit of service-principal.

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);

Door de gebruiker toegewezen beheerde identiteit

SpringBoot-client

Verificatie met een door de gebruiker toegewezen beheerde identiteit is alleen beschikbaar voor Spring Cloud Azure versie 4.0 of hoger.

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
spring.cloud.azure.storage.blob.credential.managed-identity-enabled Of beheerde identiteit moet worden ingeschakeld True
spring.cloud.azure.storage.blob.account-name Naam voor het opslagaccount storage-account-name
spring.cloud.azure.storage.blob.endpoint Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/
spring.cloud.azure.storage.blob.credential.client-id Client-id van de door de gebruiker toegewezen beheerde identiteit 00001111-aaaa-2222-bbbb-3333cccc4444

Andere clients

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
AZURE_STORAGEBLOB_RESOURCEENDPOINT Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/
AZURE_STORAGEBLOB_CLIENTID Uw client-id <client-ID>

Voorbeeldcode

Raadpleeg de stappen en code hieronder om verbinding te maken met Azure Blob Storage met behulp van een door de gebruiker toegewezen beheerde identiteit.

U kunt deze gebruiken azure-identity om te verifiëren via een beheerde identiteit of service-principal. Haal de Azure Blob Storage-eindpunt-URL op uit de omgevingsvariabele die is toegevoegd door Service Connector. Als u de onderstaande code gebruikt, moet u het gedeelte van het codefragment verwijderen voor het verificatietype dat u wilt gebruiken.

Afhankelijkheden installeren

dotnet add package Azure.Identity

Hier volgt voorbeeldcode om verbinding te maken met Blob Storage met behulp van een beheerde identiteit of service-principal.

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

Waarschuwing

Microsoft raadt u aan de veiligste verificatiestroom te gebruiken die beschikbaar is. De verificatiestroom die in deze procedure wordt beschreven, vereist een zeer hoge mate van vertrouwen in de toepassing en brengt risico's met zich mee die niet aanwezig zijn in andere stromen. U moet deze stroom alleen gebruiken wanneer andere veiligere stromen, zoals beheerde identiteiten, niet haalbaar zijn.

SpringBoot-client

Toepassingseigenschappen Beschrijving Voorbeeldwaarde
azure.storage.account-name De naam van uw Blob Storage-account <storage-account-name>
azure.storage.account-key De sleutel van uw Blob Storage-account <account-key>
azure.storage.blob-endpoint Uw Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/
spring.cloud.azure.storage.blob.account-name Uw Blob Storage-accountnaam voor Spring Cloud Azure versie 4.0 of hoger <storage-account-name>
spring.cloud.azure.storage.blob.account-key Uw Blob Storage-accountsleutel voor Spring Cloud Azure versie 4.0 of hoger <account-key>
spring.cloud.azure.storage.blob.endpoint Uw Blob Storage-eindpunt voor Spring Cloud Azure versie 4.0 of hoger https://<storage-account-name>.blob.core.windows.net/

Andere clients

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
AZURE_STORAGEBLOB_CONNECTIONSTRING Blob Storage-verbindingsreeks DefaultEndpointsProtocol=https;AccountName=<account name>;AccountKey=<account-key>;EndpointSuffix=core.windows.net

Voorbeeldcode

Raadpleeg de stappen en code hieronder om verbinding te maken met Azure Blob Storage met behulp van een verbindingsreeks.

Haal de Azure Blob Storage-verbindingsreeks op uit de omgevingsvariabele die is toegevoegd door Service Connector.

Afhankelijkheden installeren

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);

Service-principal

SpringBoot-client

Verificatie met een service-principal is alleen beschikbaar voor Spring Cloud Azure versie 4.0 of hoger.

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
spring.cloud.azure.storage.blob.account-name Naam voor het opslagaccount storage-account-name
spring.cloud.azure.storage.blob.endpoint Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/
spring.cloud.azure.storage.blob.credential.client-id Client-id van de Service Principal 00001111-aaaa-2222-bbbb-3333cccc4444
spring.cloud.azure.storage.blob.credential.client-secret Clientgeheim voor het uitvoeren van service-principalverificatie Aa1Bb~2Cc3.-Dd4Ee5Ff6Gg7Hh8Ii9_Jj0Kk1Ll2

Andere clients

Naam van standaardomgevingsvariabele Beschrijving Voorbeeldwaarde
AZURE_STORAGEBLOB_RESOURCEENDPOINT Blob Storage-eindpunt https://<storage-account-name>.blob.core.windows.net/
AZURE_STORAGEBLOB_CLIENTID Uw client-id <client-ID>
AZURE_STORAGEBLOB_CLIENTSECRET Uw clientgeheim <client-secret>
AZURE_STORAGEBLOB_TENANTID Uw tenant-id <tenant-ID>

Voorbeeldcode

Raadpleeg de stappen en code hieronder om verbinding te maken met Azure Blob Storage met behulp van een service-principal.

U kunt deze gebruiken azure-identity om te verifiëren via een beheerde identiteit of service-principal. Haal de Azure Blob Storage-eindpunt-URL op uit de omgevingsvariabele die is toegevoegd door Service Connector. Als u de onderstaande code gebruikt, moet u het gedeelte van het codefragment verwijderen voor het verificatietype dat u wilt gebruiken.

Afhankelijkheden installeren

dotnet add package Azure.Identity

Hier volgt voorbeeldcode om verbinding te maken met Blob Storage met behulp van een beheerde identiteit of service-principal.

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);

Volgende stappen

Volg de zelfstudies voor meer informatie over Service Connector.