Проблема
Я пишу автономное настольное приложение в Haskell, и я хотел бы иметь поддержку аутентификации в нем. Я хочу, чтобы пользователь мог войти в это приложение с помощью учетной записи google/facebook/etc.
Некоторые исследования
Я нашел несколько протоколов и связанных библиотек haskell:
- OpenID (openid, authenticate), но, как отметил @Changaco, этот протокол подключен к веб-браузеру.
- OAuth (authenticate-oauth, hoauth), но первый, по-видимому, сильно связан с
Yesod
(веб-каркас), а второй поддерживаетOAuth
version1.0
(в настоящее время существует версия2.0
)
Вопрос
Возможно ли создать такую проверку подлинности в автономном приложении Haskell? Какую библиотеку я должен использовать? Или, может быть, я должен написать его на С++ и использовать его из Haskell?
Основные требования:
- Механизм аутентификации должен работать в автономном приложении на всех основных платформах (Linux, Windows, Darwin).
- Механизм аутентификации должен работать с приложением без gui.