OAuth-сервер платформы идентификации Google

#google-cloud-platform #google-identity

#google-облачная платформа #google-identity

Вопрос:

Я хочу использовать платформу идентификации Google в качестве решения CIAM для нашего облачного сервиса на базе GKE. У нас есть требование разрешить сторонним пользователям доступ к нашим облачным API, используя учетные данные, которые они получают через OAuth.

Например, наш облачный сервис предоставляет API, к которым Google Assistant или Amazon Alexa могут получить доступ от имени наших пользователей. Поэтому мы хотим предоставить менеджер токенов на основе OAuth, который использует идентификаторы наших клиентов, определенные в платформе идентификации Google.

Возможен ли этот тип службы OAuth с использованием платформы идентификации Google или базовой службы Firebase, которая управляет ею?

Комментарии:

1. Используют ли пользователи учетные записи Google?

2. @MabelA. — наличие учетной записи Google не является обязательным. мы хотим, чтобы пользователи могли создавать учетные записи на нашей платформе напрямую.

Ответ №1:

На основе документации для Google Assistant вам необходимо будет реализовать собственные конечные точки OAuth2. В потоке кода авторизации вам нужны две конечные точки:

  1. Конечная точка аутентификации должна войти в систему пользователя и получить его разрешение, чтобы разрешить третьей стороне (например. Google) для вызова API клиента от их имени. Если пользователь дает разрешение, он возвращает код авторизации, который может быть реализован путем создания пользовательского токена с помощью Cloud Identity Platform.
  2. Также необходима конечная точка обмена токенами, которая выполняет две функции. Первый заключается в обмене кода авторизации, созданного первой конечной точкой, на токен обновления и токен идентификатора. Второй способ — обменять токен обновления на новый токен идентификатора. Обе эти функции могут быть делегированы Cloud Identity Platform.

Дополнительное примечание:

Я бы предложил использовать пользовательские утверждения, чтобы гарантировать, что эти токены могут использоваться только по назначению, т.Е.. для выполнения действий, которые должен выполнить помощник Google. Пользователям не должно быть разрешено выполнять другие действия, например, изменять пароль пользователя или предоставлять коды авторизации другим третьим лицам.

Также убедитесь, что эта конечная точка не может быть использована злонамеренными третьими сторонами. Например, вы можете проверить, соответствует ли указанный URL перенаправления ожидаемому, поскольку именно на него будет отправлен код авторизации.