Een toepassing verifiëren met Azure Active Directory om toegang te krijgen tot Event Hubs resourcesAuthenticate an application with Azure Active Directory to access Event Hubs resources

Microsoft Azure biedt geïntegreerde toegangs beheer voor bronnen en toepassingen op basis van Azure Active Directory (Azure AD).Microsoft Azure provides integrated access control management for resources and applications based on Azure Active Directory (Azure AD). Een belang rijk voor deel van het gebruik van Azure AD met Azure Event Hubs is dat u uw referenties niet meer hoeft op te slaan in de code.A key advantage of using Azure AD with Azure Event Hubs is that you don't need to store your credentials in the code anymore. In plaats daarvan kunt u een OAuth 2,0-toegangs token aanvragen bij het micro soft Identity-platform.Instead, you can request an OAuth 2.0 access token from the Microsoft Identity platform. De resource naam voor het aanvragen van een token is https://eventhubs.azure.net/ en is hetzelfde voor alle Clouds/tenants (voor Kafka-clients is de resource voor het aanvragen van een token https://<namespace>.servicebus.windows.net ).The resource name to request a token is https://eventhubs.azure.net/, and it's the same for all clouds/tenants (For Kafka clients, the resource to request a token is https://<namespace>.servicebus.windows.net). Azure AD verifieert de beveiligingsprincipal (een gebruiker, groep of Service-Principal) die de toepassing uitvoert.Azure AD authenticates the security principal (a user, group, or service principal) running the application. Als de verificatie slaagt, retourneert Azure AD een toegangs token voor de toepassing en kan de toepassing vervolgens het toegangs token gebruiken om een aanvraag voor Azure Event Hubs-resources te autoriseren.If the authentication succeeds, Azure AD returns an access token to the application, and the application can then use the access token to authorize request to Azure Event Hubs resources.

Wanneer een rol is toegewezen aan een Azure AD-beveiligings-principal, verleent Azure toegang tot de resources voor die beveiligings-principal.When a role is assigned to an Azure AD security principal, Azure grants access to those resources for that security principal. De toegang kan worden beperkt tot het niveau van het abonnement, de resource groep, de Event Hubs naam ruimte of een andere resource.Access can be scoped to the level of subscription, the resource group, the Event Hubs namespace, or any resource under it. Een Azure AD-beveiliging kan rollen toewijzen aan een gebruiker, een groep, een service-principal voor de toepassing of een beheerde identiteit voor Azure-resources.An Azure AD security can assign roles to a user, a group, an application service principal, or a managed identity for Azure resources.

Notitie

Een roldefinitie is een verzameling machtigingen.A role definition is a collection of permissions. Azure RBAC (op rollen gebaseerd toegangs beheer) bepaalt hoe deze machtigingen worden afgedwongen via roltoewijzing.Azure role-based access control (Azure RBAC) controls how these permissions are enforced through role assignment. Een roltoewijzing bestaat uit drie elementen: beveiligings-principal, roldefinitie en bereik (ook wel scope of niveau genoemd).A role assignment consists of three elements: security principal, role definition, and scope. Zie informatie over de verschillende rollenvoor meer informatie.For more information, see Understanding the different roles.

Ingebouwde rollen voor Azure Event HubsBuilt-in roles for Azure Event Hubs

Azure biedt de volgende ingebouwde rollen van Azure voor het machtigen van toegang tot Event Hubs gegevens met behulp van Azure AD en OAuth:Azure provides the following Azure built-in roles for authorizing access to Event Hubs data using Azure AD and OAuth:

Zie schema register rollenvoor ingebouwde rollen in het schema register.For Schema Registry built-in roles, see Schema Registry roles.

Belangrijk

De preview-versie ondersteunt het toevoegen van Event Hubs rechten voor gegevens toegang aan de rol eigenaar of bijdrager.Our preview release supported adding Event Hubs data access privileges to Owner or Contributor role. De bevoegdheden voor gegevens toegang voor de rol eigenaar en Inzender worden echter niet meer nageleefd.However, data access privileges for Owner and Contributor role are no longer honored. Als u de rol eigenaar of Inzender gebruikt, schakelt u over naar het gebruik van de functie Azure Event Hubs-gegevens eigenaar.If you are using the Owner or Contributor role, switch to using the Azure Event Hubs Data Owner role.

Verifiëren vanuit een toepassingAuthenticate from an application

Een belang rijk voor deel van het gebruik van Azure AD met Event Hubs is dat uw referenties niet meer in uw code hoeven te worden opgeslagen.A key advantage of using Azure AD with Event Hubs is that your credentials no longer need to be stored in your code. In plaats daarvan kunt u een OAuth 2,0-toegangs token aanvragen bij het micro soft Identity-platform.Instead, you can request an OAuth 2.0 access token from Microsoft identity platform. Azure AD verifieert de beveiligingsprincipal (een gebruiker, een groep of Service-Principal) die de toepassing uitvoert.Azure AD authenticates the security principal (a user, a group, or service principal) running the application. Als de verificatie slaagt, retourneert Azure AD het toegangs token voor de toepassing en kan de toepassing vervolgens het toegangs token gebruiken om aanvragen voor Azure Event Hubs te autoriseren.If authentication succeeds, Azure AD returns the access token to the application, and the application can then use the access token to authorize requests to Azure Event Hubs.

In de volgende secties ziet u hoe u uw systeem eigen toepassing of webtoepassing kunt configureren voor verificatie met het micro soft Identity-platform 2,0.Following sections shows you how to configure your native application or web application for authentication with Microsoft identity platform 2.0. Zie overzicht van micro soft Identity platform (v 2.0)voor meer informatie over micro soft identity platform 2,0.For more information about Microsoft identity platform 2.0, see Microsoft identity platform (v2.0) overview.

Zie toegang tot Azure Active Directory webtoepassingen verlenen met behulp van de oauth 2,0 code Grant flowvoor een overzicht van de OAuth 2,0-code subsidie stroom.For an overview of the OAuth 2.0 code grant flow, see Authorize access to Azure Active Directory web applications using the OAuth 2.0 code grant flow.

Uw toepassing registreren bij een Azure AD-TenantRegister your application with an Azure AD tenant

De eerste stap bij het gebruik van Azure AD om Event Hubs resources te autoriseren, registreert uw client toepassing met een Azure AD-Tenant vanuit de Azure Portal.The first step in using Azure AD to authorize Event Hubs resources is registering your client application with an Azure AD tenant from the Azure portal. Wanneer u uw client toepassing registreert, geeft u informatie over de toepassing op AD.When you register your client application, you supply information about the application to AD. Azure AD biedt vervolgens een client-ID (ook wel een toepassings-ID genoemd) die u kunt gebruiken om uw toepassing te koppelen aan Azure AD runtime.Azure AD then provides a client ID (also called an application ID) that you can use to associate your application with Azure AD runtime. Zie voor meer informatie over de client-ID toepassings-en Service-Principal-objecten in azure Active Directory.To learn more about the client ID, see Application and service principal objects in Azure Active Directory.

De volgende afbeeldingen tonen stappen voor het registreren van een webtoepassing:The following images show steps for registering a web application:

Een toepassing registreren

Notitie

Als u uw toepassing registreert als een systeem eigen toepassing, kunt u een geldige URI voor de omleidings-URI opgeven.If you register your application as a native application, you can specify any valid URI for the Redirect URI. Voor systeem eigen toepassingen hoeft deze waarde geen echte URL te zijn.For native applications, this value does not have to be a real URL. Voor webtoepassingen moet de omleidings-URI een geldige URI zijn, omdat deze de URL specificeert waarnaar de tokens worden opgegeven.For web applications, the redirect URI must be a valid URI, because it specifies the URL to which tokens are provided.

Nadat u uw toepassing hebt geregistreerd, ziet u de toepassings-id (client) onder instellingen:After you've registered your application, you'll see the Application (client) ID under Settings:

Toepassings-ID van de geregistreerde toepassing

Zie toepassingen integreren met Azure Active Directoryvoor meer informatie over het registreren van een toepassing met Azure AD.For more information about registering an application with Azure AD, see Integrating applications with Azure Active Directory.

Een clientgeheim makenCreate a client secret

De toepassing heeft een client geheim nodig om de identiteit ervan te bewijzen wanneer een token wordt aangevraagd.The application needs a client secret to prove its identity when requesting a token. Voer de volgende stappen uit om het client geheim toe te voegen.To add the client secret, follow these steps.

  1. Ga naar de registratie van uw app in de Azure Portal.Navigate to your app registration in the Azure portal.

  2. Selecteer de instelling certificaten & geheimen .Select the Certificates & secrets setting.

  3. Onder client geheimen selecteert u Nieuw client geheim om een nieuw geheim te maken.Under Client secrets, select New client secret to create a new secret.

  4. Geef een beschrijving op voor het geheim en kies het gewenste verloop interval.Provide a description for the secret, and choose the wanted expiration interval.

  5. Kopieer de waarde van het nieuwe geheim direct naar een veilige locatie.Immediately copy the value of the new secret to a secure location. De opvullings waarde wordt slechts één keer weer gegeven.The fill value is displayed to you only once.

    Clientgeheim

Azure-rollen toewijzen met behulp van de Azure PortalAssign Azure roles using the Azure portal

Nadat u de toepassing hebt geregistreerd, wijst u de service-principal van de toepassing toe aan een Event Hubs Azure AD-rol die wordt beschreven in de sectie rollen voor azure Event hubs .After you register the application, you assign the application's service principal to an Event Hubs Azure AD role described in the Build-in roles for Azure Event Hubs section.

  1. Navigeer in het Azure Portalnaar uw event hubs naam ruimte.In the Azure portal, navigate to your Event Hubs namespace.

  2. Selecteer op de pagina overzicht de Event hub waarvoor u een rol wilt toewijzen.On the Overview page, select the event hub for which you want to assign a role.

    Selecteer uw Event Hub

  3. Selecteer Access Control (IAM) om instellingen voor toegangs beheer voor de Event hub weer te geven.Select Access Control (IAM) to display access control settings for the event hub.

  4. Selectter het tabblad Roltoewijzingen om de lijst met roltoewijzingen te zien.Select the Role assignments tab to see the list of role assignments. Selecteer de knop toevoegen op de werk balk en selecteer vervolgens functie toewijzing toevoegen.Select the Add button on the toolbar and then select Add role assignment.

    Knop toevoegen op de werk balk

  5. Voer op de pagina roltoewijzing toevoegen de volgende stappen uit:On the Add role assignment page, do the following steps:

    1. Selecteer de Event hubs rol die u wilt toewijzen.Select the Event Hubs role that you want to assign.

    2. Zoek naar de beveiligingsprincipal (gebruiker , groep, Service-Principal) waaraan u de rol wilt toewijzen.Search to locate the security principal (user, group, service principal) to which you want to assign the role. Selecteer de geregistreerde toepassing in de lijst.Select the registered application from the list.

    3. Selecteer Opslaan om de roltoewijzing op te slaan.Select Save to save the role assignment.

      Rol toewijzen aan een gebruiker

    4. Ga naar het tabblad roltoewijzingen en bevestig de roltoewijzing.Switch to the Role assignments tab and confirm the role assignment. In de volgende afbeelding ziet u bijvoorbeeld dat mywebapp zich in de rol Azure Event hubs gegevens afzender bevindt.For example, the following image shows that mywebapp is in the Azure Event Hubs Data Sender role.

      Gebruiker in de lijst

U kunt vergelijk bare stappen volgen om een rol toe te wijzen aan Event Hubs naam ruimte, resource groep of abonnement.You can follow similar steps to assign a role scoped to Event Hubs namespace, resource group, or subscription. Wanneer u de rol en het bereik ervan hebt gedefinieerd, kunt u dit gedrag testen met voor beelden in deze github-locatie.Once you define the role and its scope, you can test this behavior with samples in this GitHub location. Raadpleeg dit artikelvoor meer informatie over het beheren van de toegang tot Azure-resources met behulp van Azure RBAC en de Azure Portal.To learn more on managing access to Azure resources using Azure RBAC and the Azure portal, see this article.

Client bibliotheken voor het verkrijgen van tokensClient libraries for token acquisition

Zodra u uw toepassing hebt geregistreerd en de machtiging hebt verleend voor het verzenden/ontvangen van gegevens in azure Event Hubs, kunt u code toevoegen aan uw toepassing om een beveiligingsprincipal te verifiëren en het OAuth 2,0-token te verkrijgen.Once you've registered your application and granted it permissions to send/receive data in Azure Event Hubs, you can add code to your application to authenticate a security principal and acquire OAuth 2.0 token. Als u het token wilt verifiëren en verkrijgen, kunt u een van de micro soft-identiteits platform verificatie bibliotheken of een andere open-source-bibliotheek gebruiken die ondersteuning biedt voor OpenID Connect of verbinding maken met 1,0.To authenticate and acquire the token, you can use either one of the Microsoft identity platform authentication libraries or another open-source library that supports OpenID or Connect 1.0. Uw toepassing kan vervolgens het toegangs token gebruiken om een aanvraag voor Azure Event Hubs te autoriseren.Your application can then use the access token to authorize a request against Azure Event Hubs.

Voor een lijst met scenario's waarvoor het verkrijgen van tokens wordt ondersteund, zie het gedeelte scenario's van de micro soft Authentication Library (MSAL) voor .net github- opslag plaats.For a list of scenarios for which acquiring tokens is supported, see the Scenarios section of the Microsoft Authentication Library (MSAL) for .NET GitHub repository.

VoorbeeldenSamples

Volgende stappenNext steps

Raadpleeg de volgende verwante artikelen:See the following related articles: