Авторизация в Azure EventHub через Microsoft Identity - PullRequest
0 голосов
/ 06 ноября 2019

Мне нужно отправить данные в концентратор событий, но для этого необходимо авторизовать пользователя.

В настоящее время я использую следующий код для достижения своей цели.

var ehClient = EventHubClient.CreateWithAzureActiveDirectory(
                new Uri($"sb://{EventHubNamespace}.servicebus.windows.net/"),
                EventHubName,
                async (audience, authority, state) =>                {
                    var app = PublicClientApplicationBuilder.Create(ClientId)
                        .Build();                  

                    var authResult = await app.AcquireTokenInteractive(new[] { $"{audience}/.default" }).ExecuteAsync();


                    return authResult.AccessToken;
                },
                $"https://login.windows.net/{TenantId}");

await ehClient.SendAsync(new EventData(Encoding.UTF8.GetBytes("test data")));

В этом решении пользователь должен выполнять проверку подлинности при каждой отправке данных в EventHub. Нет ли решения, которое позволяет отправлять AcessToken вместо authCallback? Кажется, есть бесконечные примеры того, как запросить AcessToken, но я не могу найти тот, где токен используется для доступа к ресурсам, соответственно. EventHub.

...