Alex Osborne created AMBER-53:
---------------------------------

             Summary: "expires_in" field in JSON responses should be a number 
not a string
                 Key: AMBER-53
                 URL: https://issues.apache.org/jira/browse/AMBER-53
             Project: Amber
          Issue Type: Bug
          Components: OAuth 2.0 - Authorization Server
            Reporter: Alex Osborne


The JSON generated by Amber makes "expires_in" a string.  For example this:

    OAuthASResponse.tokenResponse(200)
      .setTokenType("bearer")
      .setAccessToken("sometoken")
      .setExpiresIn("3600")
      .buildJSONMessage()
      .getBody()

Results in this JSON:

    {
      "expires_in":"3600",
      "token_type":"bearer",
      "access_token":"sometoken"
    }

Whereas the examples in sections 4.1.4 and 4.3.3 of the OAuth 2.0 (draft 26) 
spec suggest it should be a number:

     {
       "access_token":"2YotnFZFEjr1zCsicMWpAA",
       "token_type":"example",
       "expires_in":3600,
       "refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA",
       "example_parameter":"example_value"
     }

    https://tools.ietf.org/html/draft-ietf-oauth-v2-26#section-4.1.4
    https://tools.ietf.org/html/draft-ietf-oauth-v2-26#section-4.3.3

Confusingly the spec actually uses "3600" in the body text, but I assume the 
quotes are there to distinguish it as literal value rather than meaning it 
should be a JSON string:

   expires_in
         RECOMMENDED.  The lifetime in seconds of the access token.  For
         example, the value "3600" denotes that the access token will
         expire in one hour from the time the response was generated.
         If omitted, the authorization server SHOULD provide the
         expiration time via other means or document the default value.

    https://tools.ietf.org/html/draft-ietf-oauth-v2-26#section-4.2.2
    https://tools.ietf.org/html/draft-ietf-oauth-v2-26#section-5.1

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to