【发布时间】:2017-02-14 11:33:53
【问题描述】:
我正在编写一个 JAVA REST Web 服务,我试图了解它是如何工作的,但我已经设法制作了简单的方法,我的客户端将发送一个带有信息的 JSON,而服务器用它做一些事情。很简单。
所以我在做什么:我的客户想要创建一个新对象,例如一个帐户,但我不希望世界上的每个人都简单地向我的网站发送一个 json 并创建一个对象。 但是我不想过滤 IP,因为我不知道谁或什么将使用我的客户端应用程序。
那么我做了什么来阻止每个人简单地发送数据?我为玩家创建了一个密钥,他们像这样使用它: http://[website]/[Applicationname]/Webresources/[SECRETKEY]/create (发送一个带有请求的 json)
这行得通,因为现在只有拥有密钥的人才能创建,而且只有我将密钥提供给他们才能获得密钥。我很确定他们不会将这个秘密密钥提供给其他人,因为如果他们这样做,他们只会搞砸自己,他们的服务将获得大量虚假数据...... 但是我希望它更安全,所以无论如何都没有人可以获取密钥,我不知道HTTPS是否也会隐藏域+参数,我想不会吧?
所以我的问题是:我怎样才能在没有人知道密钥是什么的情况下发送密钥?
【问题讨论】:
-
不要糟糕地重新发明轮子。查找如何进行 OAUTH2
-
我没有重新发明任何东西:P 我这样做是因为我不知道任何其他方法,但是谢谢,我会研究 OAUTH2!
标签: java json rest security secret-key