Токен, созданный identity.getAuthToken, не может быть проверен удаленным API - PullRequest
0 голосов
/ 11 июня 2019

Моя команда и я недавно разработали хром-расширение для нашего клиента.Мы хотим, чтобы это расширение Chrome могло отправлять запрос POST в API клиента.

Клиент использует проверку токена пользователя Google для проверки содержимого запроса.(https://packagist.org/packages/google/apiclient)

Запрос содержит два важных поля: токен и адрес электронной почты. Токен и адрес электронной почты получены с использованием identity.getAuthToken() и identity.getProfileUserInfo().

Содержимое поля «oauth2»в манифесте это

"oauth2": {
        "client_id": "OUR_CLIENT_ID.apps.googleusercontent.com",
        "scopes": [
            "email"
        ]
    }

Теперь полученный токен не может быть проверен API, и мы не знаем, как создать токен в расширении Chrome, который можно проверить.

Другой проект от другой команды может генерировать токен из Интернета, используя что-то вроде этого:

{"web":{"client_id":"CLIENT_ID.apps.googleusercontent.com","project_id":"PROJECT_NAME","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://accounts.google.com/o/oauth2/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"SOME_SECRET","javascript_origins":["SOME_URL"]}}

Мы пытались использовать CLIENT_ID, сгенерированный из того же проекта, что и API, но он не работал.

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

Как мы получаем токен:

chrome.identity.getAuthToken({ interactive: true }, (token) => {
        if (chrome.runtime.lastError) {
            return
        }
    return token
})

Наши разрешения в манифесте:

    "permissions": [
        "identity",
        "identity.email",
        "notifications",
        "https://*/*",
        "http://*/*"
    ]

Мы хотели бы знать, возможно ли создать токен в расширении chorme, который будет работать с клиентской библиотекой.

И если это невозможно, мы хотели бызнать, возможно ли сгенерировать рабочий токен из возможного API, который мы разработаем для этого вопроса.

Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...