api key和id在restful api中

时间:2011-08-31 15:33:34

标签: asp.net asp.net-mvc json api authentication

我有一个asp net mvc网站,我想为一些动作提供一个API(json输出),我想知道我应该在哪里使用api key,api id等。

我认为我可以将api方法拆分为两种类型:简单的get动作,以及需要在我的网站中登录的动作。

对于第一个,不需要身份验证,因此使用我的api的人将被允许而不需要任何检查,不需要任何密钥。可以吗?

对于第二种操作,他必须知道最终用户密码(连接)。那么我应该为api消费者使用api密钥(然后检查我是否可以信任api消费者)?或者我应该使用OAuth和令牌机制(似乎很复杂)?或者我应该使用带有hmac校验和的公钥/私钥?

我知道这种问题经常出现,但在这里我想知道处理我案件的最简单方法是什么,以及在我的情况下什么是无用的。

由于

1 个答案:

答案 0 :(得分:0)

  

对于第一个,不需要身份验证,所以有人   消费我的api将被允许没有任何检查,不需要任何密钥   为了他。可以吗?

  

对于第二种操作,他必须知道最终用户密码   (连接)。那么我应该为api消费者使用api密钥(然后   检查我是否可以信任api消费者)?

那将是最简单的。在数据库中有一个密钥列表,您可以提供给客户,然后要求消费者传递密钥以识别他。