OAuth2 Grant Type Password is Revoking other access_token

烂漫一生 提交于 2019-12-20 04:15:42

问题


I've been trying to learn some server side frameworks these days. I am not an expert of oauth2, but I had use an api with a team. They gave me an access using Resource owner credentials grant, with a grant_type as password, client_id and client_secret. I can log in on multiple browsers at the same time. As I have tried sails js oauth 2 and laravel passport oauth2. I got confused. Both of them using grant_type password revoke my old access_token. Using laravel passport and sails js oauth2 with grant_type password. I can log in only on one device or browser at a time. I'm confused which one is the right thing to do.

Is this how oauth2 really works? you can only log in and use one access token?

If this is the standard way, revoking the old access token. What type of grant type should I use. so my multiple devices can log in at the same time?


回答1:


The behavior --- whether issuing a new access token invalidates existing access tokens or not --- depends on OAuth 2.0 server implementations. The OAuth 2.0 specification (RFC 6749) does not impose any restrictions on the behavior.

In fact, a certain OAuth 2.0 server implementation provides a feature to enable server administrators to configure the behavior. The following is a screenshot of the description about the configuration item ("Single Access Token Per Subject").

So, what matters is not grant_type but the implementation policy of the OAuth 2.0 server you are using.



来源:https://stackoverflow.com/questions/39362731/oauth2-grant-type-password-is-revoking-other-access-token

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!