Управление затратами Power Bi Azure — токен oauth

Я использую соединитель Azure Cost Management для получения данных непосредственно из Power Bi. Существует процесс аутентификации, который на основе личной учетной записи генерирует токен OAuth (автоматически). Токен действителен только 1 час. Могу ли я иметь более длительный срок действия? Я добавил новую политику, но она предназначена только для субъекта-службы, а не для личной учетной записи.

1 ответ

Подход 1 По умолчанию токен срока действия доступен в течение 1 часа или максимум 60–75 минут в зависимости от надежности службы, и вы не можете увеличить время жизни сеанса токена доступа для учетных записей пользователей, поскольку политики срока действия токена доступа могут применяться только к службе. основной, а не учетной записи пользователя. Также не рекомендуется увеличивать сеанс пользователя, чтобы избежать злонамеренной активности. См. этот документ: https://learn.microsoft.com/en-us/azure/active-directory/develop/configure-token-lifetimes#create-a-policy-for-web-sign-in «Это может быть установить для всех приложений в вашей организации или для определенного субъекта-службы. Они также могут быть установлены для нескольких организаций (мультитенантное приложение)».

Подход 2 Вместо увеличения срока действия маркера доступа можно обновить маркер доступа до истечения срока его действия.

Способ 1. Вы можете настроить одну настраиваемую функцию для создания токена обновления и получения токена доступа в ответ для ваших учетных записей пользователей, как ответ, представленный на этом форуме Power BI — [https://community.powerbi.com/t5/Power- Query/Channel-Advisor-API-Connection-with-auth-key-creation/td-p/2208091], введите описание изображения здесьа затем используйте токен ответа для доступа к данным выставления счетов Azure в Power BI.

Способ 2. Токены доступа представляют собой либо токен Azure AD для пользователей организации, либо токен внедрения, который можно отправлять клиентам, получающим доступ к вашим данным. Поскольку вы используете токен Azure AD, вы можете обновить токен следующими способами:

  1. Напрямую черезsetAccessTokenAPIawait report.setAccessToken (newAccessToken)

  2. Вручную черезgetNewUserAccessToken(). Эта функция вызовет приложение на серверной части и сгенерирует и обновит токен доступа.

введите описание изображения здесь

  1. Автоматически путем установки обработчика событий в конфигурации внедрения и вызова обработчика событий для создания нового токена до истечения срока действия текущего набора токенов.accessTokenProviderпараметр функции в конфигурации внедрения. Когда срок действия токена близок к истечению, он встраивает config, вызываетaccesstokenProviderи получает новый токен.
Другие вопросы по тегам