Hi All, This is related to resolving bug [1].
With the previous API Manager releases, when APIs are accessed using invalid tokens, specific errors for such failures were sent. For example, if the API was accessed using an expired token, response with 900903 as the error code was sent, and if the failure is due to an Invalid token the response code 900901 was sent. In previous releases it was possible to get the token state, since we had direct access to the DB where tokens are stored. But when providing the ability to plug in Third party Authorization Servers, we only have access to information exposed by the Authorization Server. According to [2], an Authorization Server may only state the token as invalid, not exposing specific reasons about the failure. In such cases, API Manager cannot provide exact details on why the failure has occurred. In a security point of view, general practice is to provide least information about a failure, when invalid credentials are used. To make the behaviour consistent, irrespective of whether the Auhtorization Server is a third party one or the default one, with 1.9.0 we’ll be sending a generic failure when the token is invalid. With this change the same error code (900901) will be sent, when the token is expired or inactive. Impact: If there are Client Apps, that take different paths to refresh the token depending on the error code, those have to act upon the general error code (900901) from this release onwards. This has to be done as a part of the migration. Please share your thoughts on this. [1] https://wso2.org/jira/browse/APIMANAGER-3578 [2] https://tools.ietf.org/html/draft-ietf-oauth-introspection-08 [3] https://docs.wso2.com/display/AM190/Error+Handling -- *Amila De Silva* WSO2 Inc. mobile :(+94) 775119302
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev