REST - 用于检查授权的动词

6 authentication rest http

我正在设计一个授权服务,该服务将Authorization在请求中接收标头的其他公共服务内部查询.

此服务处理授权(一对公钥(user_id)和私钥),其任务是重新生成签名(HMAC) - 唯一知道私钥的服务 - 所以我认为这是正确的作为服务器资源.然后我认为没有用户没有授权资源,所以我最终得到了这个基本URI:

/user/:user_id/authorization
Run Code Online (Sandbox Code Playgroud)

然后,我设计了CRUD操作来处理授权,在创建新用户时创建,在请求时更新,在删除用户时读取和删除.

注意:User实体由另一个服务处理,我只使用这个URI以逻辑方式传递公钥(因为它与用户严格相关).

我不确定如何从其他服务中查询此服务说:"嘿,这个关键是对的吗?" 将此请求传递给重新生成签名所需的所有数据.

所以我需要的是一种以安静的方式检查授权的方法

我做过类似的事:

GET /user/:user_id/authorization?signature=SOMETHING&data=JSON-DATA-TO-REGENERATE-KEY
Run Code Online (Sandbox Code Playgroud)

但也许,我们也可以看到它创建一个新的授权资源(如果没有返回任何内容,它也不是令牌系统),从而使PUT或POST更适合此目的.

你的观点是什么?处理这种情况的正确方法是什么?

Aur*_*ien 0

该服务处理授权(一对公钥(user_id)和私钥)

您是否将私钥存储在服务器端?您是否在同一服务上处理授权和身份验证?

我个人更喜欢像 WebID 这样的架构。看: