Конечные точки Google с интеграцией Auth0

#google-app-engine #google-cloud-endpoints #swagger-2.0 #auth0

#google-app-engine #google-cloud-конечные точки #swagger-2.0 #auth0

Вопрос:

Я пытаюсь использовать аутентификацию конечных точек Google с интеграцией auth0.

Я не уверен, как я могу это сделать, я использую документ endpoints, но это на самом деле не завершено. Когда я развертываю, это не работает.

Спасибо за любую помощь

это мой файл swagger:

 swagger: "2.0"
info:
  description: "A simple Google Cloud Endpoints API example."
  title: "Endpoints Example"
  version: "1.0.0"
host: "xxx.appspot.com"
basePath: "/"
consumes:
- "application/json"
produces:
- "application/json"
schemes:
- "https"
paths:
  "/echo":
    get:
      description: "Echo back a given message."
      operationId: "echo"
      produces:
      - "application/json"
      responses:
        200:
          description: "Echo"
          schema:
            $ref: "#/definitions/echoMessage"
      security:
        - auth0_jwk: []
definitions:
  echoMessage:
    properties:
      message:
        type: "string"
  authInfoResponse:
    properties:
      id:
        type: "string"
      email:
        type: "string"
# This section requires all requests to any path to require an API key.
security:
- auth0_jwk: []
securityDefinitions:
  # This section configures basic authentication with an API key.
  api_key:
    type: "apiKey"
    name: "key"
    in: "query"
  # This section configures authentication using Google API Service Accounts
  # to sign a json web token. This is mostly used for server-to-server
  # communication.
  auth0_jwk:
    # Update YOUR-ACCOUNT-NAME with your Auth0 account name.
    authorizationUrl: "https://xxx.auth0.com/authorize"
    flow: "implicit"
    type: "oauth2"
    x-issuer: "https://xxx.auth0.com/"
    # Update this with your service account's email address.
    x-jwks_uri: "https://xxx.auth0.com/.well-known/jwks.json"
  

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

1. Какую точную ошибку вы получаете? Какому документу / руководству вы следуете?

2. Я не получаю ошибок, единственное сообщение из командной строки и гласит: «/ echo path не требует apikey». При развертывании я могу вызвать путь echo без ошибок. Я слежу за документами Google для конечных точек.

3. Чего вы ожидаете? Что не работает? Какой учебник вы используете?

Ответ №1:

Вам нужно использовать «x-security» вместо «security». Кроме того, укажите аудитории для auth0-jwk, которые могут быть любой строкой (ваша строка аудитории токена JWT должна соответствовать определенному здесь «YOUR_AUDIENCE»). Например,

     x-security:
      - auth0-jwk:
          audiences:
          - "YOUR_AUDIENCE"
  

Вы можете найти пример конфигурации swagger по адресу https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/appengine/flexible/endpoints/swagger.yaml.

Ответ №2:

Я работал над интеграцией между «конечными точками Google Cloud» (ESP) и «Auth0» и столкнулся с некоторыми препятствиями. На данный момент в документации не очень понятно, как заставить ее работать, но после некоторых усилий я ее реализовал. Вы можете прочитать мою тему в группах Google, где я задал вопрос об ошибке. Я думаю, что это может быть полезно для вас, поскольку в нем подробно описана базовая настройка. Посмотрите здесь