Модуль OpenID PAM
Я ищу модуль PAM, который может использовать OpenID для аутентификации. Моя идея состоит в том, что я хочу войти в систему с помощью моей учетной записи и пароля для своей учетной записи. Я обнаружил, что в Google Code есть проект с открытым исходным кодом, который, кажется, делает то, что я хочу, но я не вижу никакого кода для загрузки.
Я видел, что существует так много примеров или реализаций, но все они касаются веб-приложений. Есть ли в мире какие-либо приложения OpenID, основанные на веб-сайтах? Технически ли возможно сделать приложение OpenID, не основанное на веб-интерфейсе? Я наивно думаю, что это должно быть возможно. Я могу эмулировать любые пакеты, отправленные браузером поставщику OpenID, и вернуть результат. Пока мой Linux-ящик подключен к Интернету, я должен использовать мой OpenID для входа.
Оцените любые комментарии, предложения или указатели о том, как сделать модуль OpenID PAM.
Спасибо!
Ответы
Ответ 1
Я могу неправильно понять запрос, но Google (например) предоставляет возможность разрешить стороне клиента и установленному приложению проверять подлинность через Google API с использованием стандартов OpenAUTH 2.0.
Как вы можете видеть в Использование OAuth 2.0 для установленных приложений или даже больше в Использование OAuth 2.0 для устройств.
Да, вам все еще нужно использовать взаимодействие с браузером и т.д., но python, а также ASP.NET могут обрабатывать веб-запрос и часть Linux, Gnome тоже с помощью инструментов WebKitGTK +.
Это может быть поводом для ваших исследований.
О, и, кстати, о WebServices и OpenID и т.д., модуль pam может записываться в Python (для части WebServer) и легко интегрироваться в Gnome 3.2 (также Python для модификации API Gnome-Keyring) и ASP.NET для стороны окна.
Но еще раз, я не специалист по этому вопросу, просто очень заинтересованный.; -)
Ответ 2
Это не проблема поставщика, доверяющего полагающейся стороне.
Проблема заключается в том, что пользователь должен доверять ему.
Однако есть еще три проблемы:
- Что бы вы ни делали, вы не можете гарантировать, что ваш пользовательский модуль не украдет его пароль.
- Поскольку между поставщиками нет единого механизма аутентификации, вам все равно нужно отобразить интерактивное окно браузера. Однако я не думаю, что модули pam могут быть интерактивными.
- Модуль должен быть http-сервером, чтобы иметь возможность получать ответы.
Ответ 3
Я нашел этот.
JumpCloud
Похоже, что это может сделать трюк, если вы используете LDAP.
Хорошо, идея JumpCloud заключается в том, что они предоставляют соединение OAUTH для LDAP-to-Google, поэтому, если вы настроите свою систему на аутентификацию через LDAP, но установите ее, чтобы проверить JumpCloud LDAP, а не вашу локальную систему, тогда вы должны иметь возможность входа в систему с помощью учетной записи домена Google.