Поддержка ADAL Python для окон, вошедших в систему пользователя - PullRequest
2 голосов
/ 07 апреля 2019

В настоящее время мы используем библиотеку adal python и хотели бы узнать, есть ли какой-либо способ (или планы по реализации способа) использовать зарегистрированного пользователя (windows) для федеративного потока аутентификации.

Такой поток возможен при использовании пакета .Net ссылка

Конечной целью будет вместо acquire_token_with_username_password, может быть, что-то вроде acquire_token_with_signed_in_user?

Ответы [ 2 ]

1 голос
/ 08 апреля 2019

Спасибо за ваши исследования по этому ценному вопросу (голосование одобрено)!

Это правда, что ни ADAL Python, ни его двоюродный брат MSAL Python не поддерживают "подбор окон вошедшего в систему пользователя и его использование". Эта функция известна как IWA, традиционно доступная только в нашем .Net / C # SDK на платформах Windows . Теоретически возможно добавить это и в Python. В настоящее время его нет в нашей дорожной карте, в основном потому, что никто не просит об этом раньше. В этом смысле не стесняйтесь идти вперед и создайте проблему для этого в нашем репозитории MSAL Python github вы сделали ), чтобы люди в мире (или ваш супруг / супруга) может поднять его, и тогда мы будем отсортировать их по +1 голосу , когда будем делать наши будущие раунды планирования.

С другой стороны, уже есть поведение кэша токенов в ADAL Python и в MSAL Python . Если вы используете его, а также создаете свой собственный уровень персистентности поверх него (, что очень просто в MSAL Python ), вы можете кэшировать токены, чтобы конечному пользователю не приходилось каждый раз проходить аутентификацию. PS: в настоящее время предпринимаются некоторые усилия по обеспечению помощника еще более высокого уровня для сохранения кэша токенов, но это уже другая тема.

Также спасибо @ mohitdhingra-msft за предоставленный здесь другой ответ, который также является правильным.

0 голосов
/ 08 апреля 2019

Вы можете получить accessToken и refreshToken, используя acqu_token_with_username_password . Согласно приведенным ниже документам, такого метода для получения токена с вошедшим пользователем не существует, но вы можете использовать acqu_token_with_refresh_token , чтобы получить новый токен доступа, используя токен обновления, полученный вами при первом вызове. Вы можете использовать класс TokenCache для кэширования accessToken и refreshToken.

Обновить токен в adal python и https://adal -python.readthedocs.io / ен / последний /

Надеюсь, это поможет.

...