Java 为我的API实现API键
我已经创建了一个api,我想控制谁使用它,多久使用一次等等。我想有一个api密钥策略,以便用户必须提供密钥才能使用api。但是我不知道如何实现它。用户使用用户名和密码注册。我想到的是在用户登录时分配UUID,并将其存储在数据库的表中。然后每个请求都包含这个uuid,并在服务器上对每个请求进行检查 然而,这似乎并不正确。有人能解释一下创建api密钥的步骤吗,比如dropbox、twitter、facebook等等?我想自己尝试实现这一点 有人能解释一下创建api的步骤吗 像按键、dropbox、twitter、facebook等有什么功能? 我想自己尝试实现这一点 生成API密钥Java 为我的API实现API键,java,javascript,spring,node.js,api-key,Java,Javascript,Spring,Node.js,Api Key,我已经创建了一个api,我想控制谁使用它,多久使用一次等等。我想有一个api密钥策略,以便用户必须提供密钥才能使用api。但是我不知道如何实现它。用户使用用户名和密码注册。我想到的是在用户登录时分配UUID,并将其存储在数据库的表中。然后每个请求都包含这个uuid,并在服务器上对每个请求进行检查 然而,这似乎并不正确。有人能解释一下创建api密钥的步骤吗,比如dropbox、twitter、facebook等等?我想自己尝试实现这一点 有人能解释一下创建api的步骤吗 像按键、dropbox、t
sha1(“某个秘密”。“某个其他信息位”。“etc”。“etc”)
然后API使用者有责任生成自己的密钥。因此,只有当他们拥有构建它所需的必要部件/信息时,他们才能访问
使用API
以Stripe的API为例:
您想要OAuth实现吗?或者你只是想生成一个随机密钥?我假设您想要一个公共/私有配对?有哪些常用的加密/解密方法可供使用?我想你不能用单向散列函数来处理这个问题?是否有必要将日期、角色等编码在密钥中?我不能创建一个密钥并添加一个salt,然后将其散列并将其提供给用户吗。在每次请求时,我都会用钥匙找到我需要的东西?事实上,不,并不总是需要的。我个人认为这是必要的。但是,如果您只在其中存储静态数据(永远不会更改的数据),那么您可以使用哈希而不是加密,这是单向的,几乎不可破解。参见编辑