我为我的Web应用程序创建了一个API,现在我有了一个想法,可以集成OAuth2协议来安全访问我的API。有可能或者我可能会重写所有API吗?
由于
答案 0 :(得分:1)
完全可以集成OAuth2层,但这取决于您编写API的方式。让我们从开始就开始吧。
您使用的是哪种语言? 根据这一点,有许多组件可以集成OAuth安全层。
但是,如果您想自己动手,我会告诉您我是如何在某个项目中完成的。
在我的例子中,该协议的实现涉及4个表:oauth_access_token
(其中存储了用户的访问令牌),oauth_client
(可以访问令牌并刷新令牌的客户端) ,oauth_refresh_token
(其中存储了刷新令牌,最终可以交换访问令牌)和oauth_auth_code
。
之后,您需要为API创建至少2个端点:
现在您需要创建一个CRUD,供开发人员用来注册他们的应用程序,这些应用程序将与您的应用程序集成。记得询问回调网址。注册后,您将为他们提供clientID和clientSecret。有了这个凭证,他们可以要求授权。
请记住,您的API必须使用access_token检查Authorization
标头。如果它有效,则可以授予您API访问权限。
可能会在所有API调用中检查此图层,因此您需要一个中间件。根据您使用的语言或框架,实现起来非常简单。
希望这有所帮助:)