Delen via


Toegang tot tabellen autoriseren met behulp van Microsoft Entra-id

Azure Storage biedt ondersteuning voor het gebruik van Microsoft Entra ID om aanvragen voor tabelgegevens te autoriseren. Met Microsoft Entra-id kunt u op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) gebruiken om machtigingen te verlenen aan een beveiligingsprincipaal. Dit kan een gebruikers-, groep- of toepassingsservice-principal zijn. De beveiligingsprincipaal wordt geverifieerd door de Microsoft Entra-id om een OAuth 2.0-token te retourneren. Het token kan vervolgens worden gebruikt om een aanvraag voor de Table-service te autoriseren.

Het autoriseren van aanvragen voor Azure Storage met Microsoft Entra ID biedt superieure beveiliging en gebruiksgemak ten opzichte van autorisatie van gedeelde sleutels. Microsoft raadt u aan microsoft Entra-autorisatie te gebruiken met uw tabeltoepassingen, indien mogelijk om toegang te garanderen met minimale vereiste bevoegdheden.

Autorisatie met Microsoft Entra ID is beschikbaar voor alle algemene doeleinden in alle openbare regio's en nationale clouds. Alleen opslagaccounts die zijn gemaakt met het Azure Resource Manager-implementatiemodel ondersteunen Microsoft Entra-autorisatie.

Overzicht van Microsoft Entra-id voor tabellen

Wanneer een beveiligingsprincipaal (een gebruiker, groep of toepassing) toegang probeert te krijgen tot een tabelresource, moet de aanvraag worden geautoriseerd. Met Microsoft Entra ID is de toegang tot een resource een proces in twee stappen. Eerst wordt de identiteit van de beveiligingsprincipaal geverifieerd en wordt een OAuth 2.0-token geretourneerd. Vervolgens wordt het token doorgegeven als onderdeel van een aanvraag voor de Table-service en gebruikt door de service om toegang tot de opgegeven resource te autoriseren.

Voor de verificatiestap is vereist dat een toepassing tijdens runtime een OAuth 2.0-toegangstoken aanvraagt. Als een toepassing wordt uitgevoerd vanuit een Azure-entiteit, zoals een Azure-VM, een virtuele-machineschaalset of een Azure Functions-app, kan deze een beheerde identiteit gebruiken voor toegang tot tabellen.

Voor de autorisatiestap moeten een of meer Azure-rollen worden toegewezen aan de beveiligingsprincipaal. Azure Storage biedt Azure-rollen die algemene sets machtigingen voor tabelgegevens omvatten. De rollen die zijn toegewezen aan een beveiligingsprincipaal bepalen de machtigingen die de principal heeft. Zie Een Azure-rol toewijzen voor toegang tot tabellen voor meer informatie over het toewijzen van Azure-rollen voor toegang tot tabelgegevens.

De volgende tabel verwijst naar aanvullende informatie voor het autoriseren van toegang tot gegevens in verschillende scenario's:

Taal .NET Java JavaScript Python Go
Overzicht van verificatie met Microsoft Entra-id .NET-toepassingen verifiëren met Azure-services Azure-verificatie met Java en Azure Identity JavaScript-apps verifiëren bij Azure met behulp van de Azure SDK Python-apps verifiëren bij Azure met behulp van de Azure SDK
Verificatie met service-principals voor ontwikkelaars .NET-apps verifiëren bij Azure-services tijdens lokale ontwikkeling met behulp van service-principals Azure-verificatie met service-principal JS-apps met service-principal naar Azure-services authent Python-apps verifiëren bij Azure-services tijdens lokale ontwikkeling met behulp van service-principals Azure SDK voor Go-verificatie met een service-principal
Verificatie met ontwikkelaars- of gebruikersaccounts .NET-apps verifiëren bij Azure-services tijdens lokale ontwikkeling met behulp van ontwikkelaarsaccounts Azure-verificatie met gebruikersreferenties JS-apps verifiëren bij Azure-services met dev-accounts Python-apps verifiëren bij Azure-services tijdens lokale ontwikkeling met behulp van ontwikkelaarsaccounts Azure-verificatie met de Azure SDK voor Go
Verificatie vanuit door Azure gehoste apps Door Azure gehoste apps verifiëren bij Azure-resources met de Azure SDK voor .NET Door Azure gehoste Java-toepassingen verifiëren Door Azure gehoste JavaScript-apps verifiëren bij Azure-resources met de Azure SDK voor JavaScript Door Azure gehoste apps verifiëren bij Azure-resources met de Azure SDK voor Python Verificatie met de Azure SDK voor Go met behulp van een beheerde identiteit
Verificatie vanuit on-premises apps Verifiëren bij Azure-resources vanuit .NET-apps die on-premises worden gehost On-premises JavaScript-apps verifiëren bij Azure-resources Verifiëren bij Azure-resources vanuit Python-apps die on-premises worden gehost
Overzicht van identiteitsclientbibliotheek Azure Identity-clientbibliotheek voor .NET Azure Identity-clientbibliotheek voor Java Azure Identity-clientbibliotheek voor JavaScript Azure Identity-clientbibliotheek voor Python Azure Identity-clientbibliotheek voor Go

Azure-rollen toewijzen voor toegangsrechten

Microsoft Entra autoriseert toegangsrechten voor beveiligde resources via op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC). Azure Storage definieert een set ingebouwde Azure-rollen die algemene sets machtigingen omvatten die worden gebruikt voor toegang tot tabelgegevens. U kunt ook aangepaste rollen definiëren voor toegang tot tabelgegevens.

Wanneer een Azure-rol is toegewezen aan een Microsoft Entra-beveiligingsprincipaal, verleent Azure toegang tot deze resources voor die beveiligingsprincipaal. Een Microsoft Entra-beveiligingsprincipaal kan een gebruiker, een groep, een toepassingsservice-principal of een beheerde identiteit voor Azure-resources zijn.

Resourcebereik

Voordat u een Azure RBAC-rol toewijst aan een beveiligingsprincipaal, bepaalt u het toegangsbereik dat de beveiligingsprincipaal moet hebben. Uit best practices blijkt dat het het beste is om het nauwst mogelijke bereik toe te wijzen. Azure RBAC-rollen die zijn gedefinieerd in een breder bereik, worden overgenomen door de onderliggende resources.

U kunt toegang tot Azure-tabelbronnen op de volgende niveaus instellen, te beginnen met het smalste bereik:

  • Een afzonderlijke tabel. In dit bereik is een roltoewijzing van toepassing op de opgegeven tabel.
  • Het opslagaccount. In dit bereik is een roltoewijzing van toepassing op alle tabellen in het account.
  • De resourcegroep. In dit bereik is een roltoewijzing van toepassing op alle tabellen in alle opslagaccounts in de resourcegroep.
  • Het abonnement. In dit bereik is een roltoewijzing van toepassing op alle tabellen in alle opslagaccounts in alle resourcegroepen in het abonnement.
  • Een beheergroep. In dit bereik is een roltoewijzing van toepassing op alle tabellen in alle opslagaccounts in alle resourcegroepen in alle abonnementen in de beheergroep.

Zie Bereik voor Azure RBAC-roltoewijzingen begrijpen voor meer informatie over het bereik voor Azure RBAC.

Ingebouwde Azure-rollen voor tabellen

Azure RBAC biedt ingebouwde rollen voor het autoriseren van toegang tot tabelgegevens met behulp van Microsoft Entra ID en OAuth. Ingebouwde rollen die machtigingen bieden voor tabellen in Azure Storage zijn onder andere:

  • Inzender voor opslagtabelgegevens: gebruik deze optie om lees-/schrijf-/verwijdermachtigingen toe te kennen aan Table Storage-resources.
  • Opslagtabelgegevenslezer: hiermee kunt u alleen-lezenmachtigingen verlenen voor Table Storage-resources.

Zie Een Azure-rol toewijzen voor toegang tot tabelgegevens voor meer informatie over het toewijzen van een ingebouwde Azure-rol aan een beveiligingsprincipaal. Zie Lijst met Azure-roldefinities voor meer informatie over het weergeven van Azure RBAC-rollen en hun machtigingen.

Zie Roldefinities begrijpen voor meer informatie over hoe ingebouwde rollen worden gedefinieerd voor Azure Storage. Zie Aangepaste Azure-rollen voor informatie over het maken van aangepaste Azure-rollen.

Alleen rollen die expliciet zijn gedefinieerd voor gegevenstoegang, geven een beveiligingsprincipaal toegang tot tabelgegevens. Ingebouwde rollen zoals Eigenaar, Inzender en Inzender voor opslagaccounts staan een beveiligingsprincipaal toe om een opslagaccount te beheren, maar bieden geen toegang tot de tabelgegevens binnen dat account via Microsoft Entra-id. Als een rol echter Microsoft.Storage/storageAccounts/listKeys/action bevat, kan een gebruiker aan wie die rol is toegewezen toegang krijgen tot gegevens in het opslagaccount via autorisatie met gedeelde sleutels met de toegangssleutels van het account.

Voor gedetailleerde informatie over ingebouwde rollen van Azure voor Azure Storage voor zowel de gegevensservices als de beheerservice raadpleegt u de sectie Storage in Ingebouwde Azure-rollen voor Azure RBAC. Zie daarnaast Azure-rollen, Microsoft Entra-rollen en klassieke abonnementsbeheerdersrollen voor informatie over de verschillende typen rollen die machtigingen bieden in Azure.

Belangrijk

Het kan tot 30 minuten duren voordat Azure-roltoewijzingen zijn doorgegeven.

Toegangsmachtigingen voor gegevensbewerkingen

Zie Machtigingen voor het aanroepen van gegevensbewerkingen voor meer informatie over de machtigingen die nodig zijn voor het aanroepen van specifieke tabelservicebewerkingen.

Volgende stappen