在Android中保护我的REST请求?
我有一个服务器端脚本,它获取我的应用程序使用的一些数据。当然,除了我的应用程序,我不希望其他人访问数据。我听说在使用某个软件时,可以看到设备连接的url。如何防止这些程序看到我呼叫的url?还是有更好的方法来保护请求 我唯一能想到的是在url中使用密码键(并在服务器端检查它是否匹配):在Android中保护我的REST请求?,android,authentication,rest,Android,Authentication,Rest,我有一个服务器端脚本,它获取我的应用程序使用的一些数据。当然,除了我的应用程序,我不希望其他人访问数据。我听说在使用某个软件时,可以看到设备连接的url。如何防止这些程序看到我呼叫的url?还是有更好的方法来保护请求 我唯一能想到的是在url中使用密码键(并在服务器端检查它是否匹配): 但对于安全认证来说,这可能还不够。嗅探器程序仍然可以获取该url。有没有更安全的简单方法?最简单的方法是使用HTTPS。这样,嗅探器只能知道您连接到的服务器 还有其他一些方法使用复杂的方法,使唯一密钥仅在短时间内
但对于安全认证来说,这可能还不够。嗅探器程序仍然可以获取该url。有没有更安全的简单方法?最简单的方法是使用HTTPS。这样,嗅探器只能知道您连接到的服务器
还有其他一些方法使用复杂的方法,使唯一密钥仅在短时间内/单个请求中有效,例如WSSE(请参阅本文)为了保护服务器请求,您所能做的很少。有人总是能够看到你的应用程序点击的URL,在查询字符串中使用密码也无济于事。为了保护应用程序的安全,您需要使用HTTPS和某种形式的身份验证。用户需要提供用户名和密码才能进行连接。如果我理解正确,您应该实施相互身份验证。基本上,客户机和服务器上都有证书。当向服务器发出请求时,服务器将验证该请求是否由已知客户端签名 因此,即使嗅探器知道url并试图向服务器发出相同的请求,它也会被拒绝,因为它没有被已知的客户端签名。我对这一点也很陌生,但这是一般的概念。这个博客有基本的步骤
https://example.com/
我请求的一部分,而不是https://example.com/get?key=1234567
?
http://example.com/getdata?key=897ihrduiuyqewudiew&get=something