有没有办法在不使用authToken的情况下将android联系人与服务器同步,只需用户名和密码?怎么办呢?
我希望每次同步联系人时都使用用户名和密码进行身份验证,而不使用authToken。
让我们说SampleSyncAdapter
,我应该做些什么来改变这一点。
答案 0 :(得分:2)
您可以使用帐户名作为用户名,并将密码另存为令牌或其他信息。在SampleSyncAdapter中,只需替换发送到服务器的内容。
答案 1 :(得分:1)
请注意,使用密码而不是身份验证令牌很容易,但由于以下几个原因,(discussion)非常不安全:
这意味着使用您的AuthenticationAdapter进行身份验证的恶意应用程序会提交您的实际密码的副本,该密码可用于登录并执行任何操作,或者可以发送您喜欢的任何人的用户名和密码。请注意,由于身份验证和令牌使用的解耦方式,人们可以编写可以从您的身份验证器请求凭据的第三方应用程序。如果您提供密码而不是令牌,那么您只需将用户的密码分发给应用程序开发人员,您可能并不是每个人都听说过或知道存在。
这意味着如果您使用的是http传输,则通过网络以明文形式发送密码。这会使密码受到窥探。 (再次,任何使用您作为身份验证者的第三方开发人员可能都不知道将http用于密码有多糟糕。)