我有一个asp net mvc网站,我想为一些动作提供一个API(json输出),我想知道我应该在哪里使用api key,api id等。
我认为我可以将api方法拆分为两种类型:简单的get动作,以及需要在我的网站中登录的动作。
对于第一个,不需要身份验证,因此使用我的api的人将被允许而不需要任何检查,不需要任何密钥。可以吗?
对于第二种操作,他必须知道最终用户密码(连接)。那么我应该为api消费者使用api密钥(然后检查我是否可以信任api消费者)?或者我应该使用OAuth和令牌机制(似乎很复杂)?或者我应该使用带有hmac校验和的公钥/私钥?
我知道这种问题经常出现,但在这里我想知道处理我案件的最简单方法是什么,以及在我的情况下什么是无用的。
由于
答案 0 :(得分:0)
对于第一个,不需要身份验证,所以有人 消费我的api将被允许没有任何检查,不需要任何密钥 为了他。可以吗?
是
对于第二种操作,他必须知道最终用户密码 (连接)。那么我应该为api消费者使用api密钥(然后 检查我是否可以信任api消费者)?
那将是最简单的。在数据库中有一个密钥列表,您可以提供给客户,然后要求消费者传递密钥以识别他。