Onelogin API - проверьте фактор для утверждения SAML при использовании Duo

Я разрабатываю приложение, которое попадает в api / 1 / saml_assertion, https://developers.onelogin.com/api-docs/1/saml-assertions/generate-saml-assertion, конечная точка OneLogin с Duo в качестве моего MFA. Есть пара элементов устройства, которые возвращаются, и я не уверен, что с ними делать, и не могу найти по ним никакой документации. Это элементы duo_sig_request и duo_api_hostname.

duo_sig_request выглядит так:

'duo_sig_request': 'TX|<base64 encoded elements>|<what looks like a sha1 hash>:APP|<base64 encoded elements>|<what looks like a sha1 hash>'

duo_api_hostname - это просто URL-адрес API для Duo.

Элементы в кодировке base64 - это электронная почта пользователя, я предполагаю, что это Duo ID пользователя и число, в котором я не уверен, поскольку он меняется с каждым запросом.

Я предполагаю, что эта информация предназначена для использования против https://duo.com/docs/authapi#/auth, чтобы активировать push, текст или вызов Duo, и этот sha1 является подписью hmac для Duo auth.

Кто-нибудь успешно сделал то, что я пытаюсь сделать, и может ли подтвердить, что то, что я предполагаю, правильно? Также может кто-нибудь сказать мне, что это за третий элемент (может быть, идентификатор устройства, который меняется в зависимости от запроса?) И что такое TX и APP?

Заранее благодарю за любую помощь!!


person Ben Grantham    schedule 11.10.2017    source источник
comment
Вы проверили developers.onelogin.com/api-docs/1 / Начало работы / client-sdks?   -  person smartin    schedule 12.10.2017
comment
Вы получаете информацию MFA, чтобы вы могли позвонить в Duo и получить токен OTP, который будет предоставлен OneLogin для завершения вашего входа в систему.   -  person smartin    schedule 12.10.2017
comment
@smartin - спасибо за ответ. Я посмотрел на sdk и заметил, что он, похоже, не учитывает Duo, или, по крайней мере, так кажется, когда я смотрю на github.com/onelogin/onelogin-python-sdk/blob/master/src/. Кажется, он не ожидает duo_sig_request или duo_api_hostname, и я не могу найти нигде в SDK, где они могли бы использоваться. Несмотря на то, что у меня включен автоматический запуск, похоже, что это не срабатывает   -  person Ben Grantham    schedule 13.10.2017
comment
OneLogin SDK взаимодействует с OneLogin API, а не со сторонними сервисами. Вам нужно будет использовать DUO API, чтобы предоставить им данные, которые он ожидает, чтобы получить действительный токен OTP, который будет использоваться в OneLogin ..   -  person smartin    schedule 12.11.2017


Ответы (2)


Обратился в службу поддержки OneLogin по этому поводу, и, похоже, она еще не поддерживается.

Существует ограничение на двухфакторный режим Duo, поскольку наш текущий интерфейс с Duo не позволяет использовать его с помощью API и всегда требует взаимодействия с веб-графическим интерфейсом. Все остальные устройства MFA должны работать.

person Faisal Mansoor    schedule 17.01.2018
comment
OneLogin стремится расширить поддержку этого через API. Не уверен в сроках. - person John Offenhartz; 02.02.2018

Duo теперь поддерживается через OneLogin API. Вам необходимо создать приложение API через консоль администратора Duo. Затем используйте ключ и секрет из этого приложения в конфигурации OneLogin Duo, которая задается через портал администрирования OneLogin.

person Rich    schedule 13.12.2019