Параметры многодоменной аутентификации для Google App Engine

1

Я ищу несколько предложений по внедрению аутентификации (и авторизации) в нашем приложении GAE. Предполагая, что наше приложение называется someapp, наше требование следующее:

someapp - это в первую очередь для пользователей приложений Google домена, в которых он установлен, но также может выполнять проверку подлинности пользователей из других доменов приложений Google.

Например, можно сказать, что приложения google настроены на domainX.com и domainY.com. Кроме того, admin для domainX.com добавил someapp в свой домен с рынка приложений. Администратор домена domain.com приглашает [email protected] и [email protected] войти в приложение. Оба пользователя домена Google должны иметь возможность использовать свои функции единого входа.

Насколько нам известно, текущие параметры проверки подлинности в движке приложения допускают либо вход в домен, что позволяет только пользователям одного домена регистрироваться в приложении или в федеративном/открытом доступе, что позволит пользователям любого домена регистрироваться в приложение. Не существует промежуточной опции, которая позволяла бы только пользователям ранее разрешенных доменов регистрироваться в приложении. Означает ли это, что наш единственный вариант - оставить в стороне проверку приложений Google и реализовать собственную аутентификацию?

Также в нашем примере выше, что, если domainX.com и domainY.com добавили someapp. Если [email protected] переместится на someapp.appspot.com, где будет установлена ​​установка приложения, то установлена ​​на домене X.com или том, который установлен на доменеY.com.

Теги:
authentication
google-app-engine

1 ответ

0

Аутентификация не подразумевает авторизацию. Все, что система федеративного ID делает для вашего приложения, дает вам имя пользователя/пользователя, которому вы можете доверять. Таким образом, вы можете настроить учетные записи пользователей, привязанные к этой информации, и полагаться на то, что всякий раз, когда вы видите, что userid вы разговариваете с одним и тем же пользователем. Или в случае приложений в домене, когда вы видите кого-то с этим доменом в своем userid.

Это полностью зависит от вашего приложения, чтобы решить, имеет ли этот идентификатор пользователя какое-либо значение в вашем приложении. Если я сейчас прихожу к вашему приложению с моей учетной записью google, он должен сказать: "О, я не видел вас раньше, вы бы хотели присоединиться?"... он должен (в зависимости от вашего приложения) не просто предположить, что я уполномочен использовать ваше приложение, просто потому, что я сказал вам свое имя.

Я не уверен, откуда вы взяли "модель входа в домен"? Единственными двумя вариантами являются учетная запись Google и Open/FederatedID, ни одна из которых не пытается ограничить доступ пользователей.

В вашем последнем примере пользователи, охватывающие несколько учетных записей google, будут видеть разные результаты в зависимости от того, разрешены ли они с несколькими входами или нет. Большинство пользователей будут представлены на экране, чтобы выбрать, какую учетную запись google они имеют в виду, прежде чем продолжить.

  • 0
    Вы можете ограничить доступ только для членов вашего домена, см. Здесь: code.google.com/appengine/articles/auth.html, и я понимаю разницу между аутентификацией и авторизацией. Я говорил о связанной модели аутентификации, которая поставляется с сервисом пользователя.
  • 0
    Ах, Круто, не знал об ограничении одним доменом. Хотя я не вижу времени, когда это будет лучшим вариантом, чем Federated, когда он существует.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню