Overview of Microsoft Entra ID for tables
When a security principal (a user, group, or application) attempts to access a table resource, the request must be authorized. With Microsoft Entra ID, access to a resource is a two-step process. First, the security principal's identity is authenticated and an OAuth 2.0 token is returned. Next, the token is passed as part of a request to the Table service and used by the service to authorize access to the specified resource.
The authentication step requires that an application request an OAuth 2.0 access token at runtime. If an application is running from within an Azure entity such as an Azure VM, a virtual machine scale set, or an Azure Functions app, it can use a managed identity to access tables.
The authorization step requires that one or more Azure roles be assigned to the security principal. Azure Storage provides Azure roles that encompass common sets of permissions for table data. The roles that are assigned to a security principal determine the permissions that that principal will have.
The following table points to additional information for authorizing access to data in various scenarios:
| Language | .NET | Java | JavaScript | Python | Go |
|---|---|---|---|---|---|
| Overview of auth with Microsoft Entra ID | How to authenticate .NET applications with Azure services | Azure authentication with Java and Azure Identity | Authenticate JavaScript apps to Azure using the Azure SDK | Authenticate Python apps to Azure using the Azure SDK | N/A |
| Auth using developer service principals | Authenticate .NET apps to Azure services during local development using service principals | Azure authentication with service principal | Auth JS apps to Azure services with service principal | Authenticate Python apps to Azure services during local development using service principals | Azure SDK for Go authentication with a service principal |
| Auth using developer or user accounts | Authenticate .NET apps to Azure services during local development using developer accounts | Azure authentication with user credentials | Auth JS apps to Azure services with dev accounts | Authenticate Python apps to Azure services during local development using developer accounts | Azure authentication with the Azure SDK for Go |
| Auth from Azure-hosted apps | Authenticating Azure-hosted apps to Azure resources with the Azure SDK for .NET | Authenticate Azure-hosted Java applications | Authenticating Azure-hosted JavaScript apps to Azure resources with the Azure SDK for JavaScript | Authenticating Azure-hosted apps to Azure resources with the Azure SDK for Python | Authentication with the Azure SDK for Go using a managed identity |
| Auth from on-premises apps | Authenticate to Azure resources from .NET apps hosted on-premises | N/A | Authenticate on-premises JavaScript apps to Azure resources | Authenticate to Azure resources from Python apps hosted on-premises | N/A |
| Identity client library overview | Azure Identity client library for .NET | Azure Identity client library for Java | Azure Identity client library for JavaScript | Azure Identity client library for Python | Azure Identity client library for Go |
Comments
Post a Comment