OAuth 2.0授权标头

时间:2012-06-17 04:20:53

标签: http oauth-2.0

我想开发一个封装OAuth 2.0功能的SDK。我检查了OAuth 1.0和amp;之间的差异。 2.0,我对授权标题(1.0和}感到困惑 2.0),可以使用HTTP“授权”标头传输OAuth 1.0协议参数,但我找不到当前OAuth 2.0草案中描述的内容。

OAuth 2.0是否支持授权标头?

在OAuth 1.0中,您的标题如下所示:

Authorization: OAuth realm="Example",
    oauth_consumer_key="0685bd9184jfhq22",
    oauth_token="ad180jjd733klru7",
    oauth_signature_method="HMAC-SHA1",
    oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D",
    oauth_timestamp="137131200",
    oauth_nonce="4572616e48616d6d65724c61686176",
    oauth_version="1.0"

2 个答案:

答案 0 :(得分:182)

对于那些寻找如何在标题中传递OAuth2授权(访问令牌)的示例(而不是使用请求或正文参数),以下是它的完成方式:

Authorization: Bearer 0b79bab50daca910b000d4f1a2b675d604257e42

答案 1 :(得分:32)

您仍然可以在OAuth 2.0中使用Authorization标头。授权标头中指定了一个承载类型,用于OAuth承载令牌(意味着客户端应用只需要呈现(“承担”)令牌)。标头的值是客户端从授权服务器接收的访问令牌。

此规范中记录了这些内容:https://tools.ietf.org/html/rfc6750#section-2.1

E.g:

   GET /resource HTTP/1.1
   Host: server.example.com
   Authorization: Bearer mF_9.B5f-4.1JqM

mF_9.B5f-4.1JqM 是您的OAuth访问令牌。