【问题标题】:ASMX Web Service, AndroidASMX 网络服务,安卓
【发布时间】:2013-02-08 05:25:03
【问题描述】:

安卓应用 ksoap2 使用 HttpsTransportSE(SSL) 在标题中传递用户名和密码。 在 asmx Web 服务中验证用户名和密码。

我不希望任何人能够编写自己的应用程序并使用 Web 服务。但是,我不希望用户必须输入用户名和密码。我打算在代码中存储用户名和密码,但我不知道这种方法在 android 上的安全性如何。如果您有更好的建议,我将不胜感激。

谁能告诉我我可以做些什么来保护这个应用程序?

谢谢

【问题讨论】:

    标签: android security service web ksoap2


    【解决方案1】:

    就像我上面已经说过的答案一样,有很多选项可供您选择。

    您可以使用SoapHeaders 来实现您的网络服务的安全性。

    或者,实现您自己的Permimeter Service Router 以确保只有经过身份验证的用户才能访问您的专用网络。

    这是 MSDN 在Web Service Security 上的一篇优秀文章。

    【讨论】:

    • 我在肥皂标题中传递了用户名和密码。这是你的意思吗?
    • 是的,正如您在我提供链接的文章中所看到的那样。
    【解决方案2】:

    一般来说,任何能够在应用程序中读取的内容都没有受到逆向工程的保护。在您的代码中存储用户名和密码不是一个好主意。

    但这取决于应用类型。您可以通过多种方式保护您的网络服务。

    这里有几个:

    • 用户名+密码的基本认证
    • 使用对称密钥进行用户名身份验证
    • 基于令牌的认证
    • SAML

    一些参考资料:

    【讨论】:

    • 我的应用只会获取基本的联系信息。我想避免用户必须输入用户名和密码。
    • 我的应用只会获取基本的联系信息。我有三个目标。 1. 防止某人嗅探我认为可以通过使用 https/ssl 连接解决的数据。 2. 防止未经授权的程序员能够编写应用程序并使用 Web 服务。哪种方法最适合完成第 2 点?我只想在soap标头中硬编码用户名和密码,然后让网络服务验证用户名和密码以防止访问。 3. 我不希望用户必须输入用户名和密码。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 2017-01-16
    • 2013-04-22
    相关资源
    最近更新 更多