2015-05-20 2 views
-1

Я создаю соединитель, чтобы разрешить использование Google Compute Engine для Cloud Brokerage. Я закодировал различные запросы REST/API, используя C и различные библиотеки HTTP, которые уже используются платформой для подключения к большинству других облачных платформ. Я довольно привык к аутентификации OAuth на других платформах, а также для использования различных криптографических алгоритмов для этой цели. Я сталкиваюсь с препятствием в том, что каждый запрос для гранта маркера отвечает HTTP-ошибкой 400 и сообщением JSON: {"error": "invalid_grant", "error_description": "Bad Request"}. Я пробовал много вещей и нашел несколько двусмысленностей в онлайн-документации по этому поводу (https://developers.google.com/identity/protocols/OAuth2ServiceAccount#callinganapi) и задался вопросом, может ли кто-нибудь помочь мне решить эту проблему. Заранее благодарю.google вычислить двигатель OAUTH через REST/HTTP

ответ

0

Я нашел ответ на свой вопрос. Фактически я использовал HMAC SHA для переваривания содержимого сообщения до его подписания, и вместо этого он должен был выполнять операцию SHA256. Сейчас все работает хорошо. Сообщения заголовка и заявки, отображаемые в виде текстовых JSON-структур, отлично работают, даже если кодированные версии показывают разную информацию при декодировании.