Мы находимся в сложной среде аутентификации, и нам необходимо поддерживать аутентификацию по нескольким разнородным источникам в разрабатываемых нами приложениях. Поскольку мы не хотим дублировать код аутентификации повсеместно, мы рассматриваем обертывание различных источников аутентификации одним провайдером OpenID, а затем зависимость всех приложений от этой службы.
Источниками, с которыми мы должны разрешить аутентификацию, являются такие вещи, как имя пользователя / пароль Active Directory, Kerberos, универсальный LDAP, внешние поставщики OpenID и т. Д.
Например, в случае Kerberos, когда пользователь переходит на страницу аутентификации провайдера OpenID, если он (-ы) может быть аутентифицирован с помощью Kerberos и уже дал разрешение запрашивающему приложению, пользователь будет прозрачно аутентифицирован как если бы пароль был введен и передан обратно запрашивающему приложению.
Итак, вопрос в том, можем ли мы создать провайдера OpenID, который обрабатывает аутентификацию с помощью всех этих различных методов ? Должен ли провайдер реализовать как аутентифицировать пользователей определенным образом?