我正在创建一个web服务,允许应用程序开发人员(A.K.A.我的朋友)查询我的数据库。问题是,作为一个安全约束,我希望能够跟踪每个用户。我正在创建一个独特的应用程序ID,就像在FaceBook或谷歌地图中一样。
开发人员必须提交用户名和电子邮件地址,当他们单击generate时,将生成一个唯一的密钥。问题是,如果用户/电子邮件已经存在,首先必须检查数据库,还必须检查密钥是否已经生成(伪随机生成保护)。
要使用will服务,用户必须输入以下内容:
webservice.Authenticate(“这里的应用键”);
来验证身份。提前谢谢。
发布于 2009-08-24 22:08:54
据我所知,Guid.NewGuid()应该足够了。
发布于 2009-08-24 23:28:54
如果您使用GUID解决方案,则始终可以通过查询数据库来确保它是唯一的。如果它不是唯一的,只需生成一个新的。
发布于 2009-08-24 23:27:23
使用salt、用户名和电子邮件地址创建字符串。然后从该字符串生成一个散列(MD5或SHA1)。salt可以是用户it,也可以是其他的东西,只要用户不知道。
GUID很好,但在这种情况下可能有点过分。你会有数十亿的用户吗?你大概可以用一个1到1,000,000之间的随机数过活。然后确保在x次失败尝试之后禁用登录,其中x介于3和6之间。
https://stackoverflow.com/questions/1325025
复制相似问题