В настоящее время мы используем библиотеку adal python и хотели узнать, есть ли способ (или планы реализации способа) использовать вошедшего в систему пользователя (windows) для потока федеративной аутентификации.
Такой поток возможен с использованием пакета .Net связь
Конечная цель будет вместо acquire_token_with_username_password
, может быть, что-то вроде acquire_token_with_signed_in_user
?
Вы можете получить accessToken и refreshToken, используя метод Acquire_token_with_username_password. В соответствии с приведенной ниже документацией не существует такого метода получения токена с вошедшим в систему пользователем, но вы можете использовать Acquire_token_with_refresh_token для получения нового токена доступа, используя токен обновления, который вы получили при первом вызове. Вы можете использовать класс TokenCache для кэширования accessToken и refreshToken.
Обновить токен в адаловом питоне и https://adal-python.readthedocs.io/en/latest/
Надеюсь, это поможет.
Спасибо за ваши усилия по исследованию этого ценного вопроса (проголосовали за)!
Это правда, что ни ADAL Python, ни его двоюродный брат MSAL Python не поддерживают «подбор зарегистрированного пользователя Windows и его использование». Эта функция известна как IWA, традиционно доступный только в нашем .Net/C# SDK на платформах Windows.. Теоретически возможно добавить это и в Python. В настоящее время у нас нет этого в нашей дорожной карте, в основном потому, что никто не спрашивал об этом раньше. В этом смысле, не стесняйтесь идти вперед и создайте для него задачу в нашем репозитории MSAL Python на github (и ты сделал), чтобы люди в мире (или ваш супруг) могли проголосовать за него, а затем мы будем отсортировать их по +1 голосам, когда будем проводить наши будущие раунды планирования.
С другой стороны, уже есть поведение кэша токенов в ADAL Python и в MSAL Python. Если вы используете его, а также создаете свой собственный слой постоянства поверх него (что очень просто в MSAL Python), вы можете кэшировать токены, чтобы конечному пользователю не нужно было каждый раз проходить аутентификацию. PS: в настоящее время предпринимаются некоторые усилия по созданию помощника еще более высокого уровня для сохранения кэша токенов, но это другая тема.
Also thanks @mohitdhingra-msft for providing another answer here which is also correct.