流行的应用程序如何验证从移动应用程序发送到服务器的用户请求?

2024-01-29

假设我有一个 Android 应用程序,它连接到 .Net API 来接收/设置数据。我的困惑在于如何首次注册/登录用户并在每次向 API 发出请求时进行身份验证。

  • 如果我只使用基于用户名/密码的身份验证,它们将不安全 足够的?
  • 我无法在设备中保存该用户名/密码 当然是出于安全原因?
  • 我是否应该在注册时为每个用户颁发一个 GUID,将其保存在他们的设备中并在每次 API 请求期间检索?

还有哪些可用的模式以及哪些是最有效和最安全的,我只需要一个流程。 有人可以告诉我 Facebook、FourSquare 或 Twitter 等著名 Android 应用程序使用什么方法来验证从其移动应用程序发送到服务器的每个请求吗?

如果这不是一些公开信息,请提前抱歉。


我想他们使用基于“令牌”的安全系统,因此密码实际上从未存储在任何地方,只是第一次用于身份验证。因此,应用程序最初发布用户名/密码(通过 ssl),服务器返回应用程序存储的令牌。对于后续同步尝试,首先发送令牌,服务器检查其是否有效,然后允许发布其他数据。

令牌应该有一个过期时间,以便服务器可以重新请求身份验证尝试。

如果您从 Android 框架内连接到同步适配器,您将能够在后台同步和验证所有内容。

http://developer.android.com/training/sync-adapters/creating-sync-adapter.html http://developer.android.com/training/sync-adapters/creating-sync-adapter.html

如果您检查设备上“设置”下的帐户,您就会明白我的意思。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

流行的应用程序如何验证从移动应用程序发送到服务器的用户请求? 的相关文章

  • 从历史堆栈中删除活动

    我的应用程序在用户第一次运行应用程序时显示注册活动 如下所示 活动启动画面 欢迎来到游戏 注册帐户 ActivitySplashScreenSignUp 很好 填写此信息 ActivityGameMain 游戏主屏幕 因此 当用户单击每个屏
  • 需要使用手机后退按钮返回 Web 视图的帮助

    这是我的代码 package com testappmobile import android app Activity import android os Bundle import android view KeyEvent impor
  • 导入已经创建的sqlite数据库(xamarin)

    我正在使用 Xamarin 想知道如何导入我已经创建的 sqlite 数据库 到目前为止 我已将其添加到资产文件夹中 但不知道下一步从哪里开始 string localPath Path Combine System Environment
  • 如何访问android库项目中的资源

    我正在构建一个 android 库项目 它内部需要一些静态资源 图像 xml 等 然后我想知道我可以把这些资源放在哪里以及如何访问它们 既然我把资源放到了assets文件夹 我使用 AssetManager 来访问资源 public cla
  • 位图内存不足错误

    我对这个错误有疑问 我从 URL 制作网站图标解析器 我这样做是这样的 public class GrabIconsFromWebPage public static String replaceUrl String url StringB
  • Android:如何使用后台线程?

    我开发了一个应用程序 它从互联网获取内容并相应地在设备的屏幕上显示它 该程序运行得很好 就是有点慢 加载并显示内容大约需要 3 4 秒 我想将获取内容并将其显示在后台线程中的所有代码放在一起 当程序执行这些功能时 我想显示一个进度对话框 你
  • 如何向开发人员发送崩溃报告?

    我开发 Android 应用程序 但在某些情况下我的应用程序force close 如果出现以下情况 我如何向开发人员发送包含详细信息的电子邮件force close随时发生 The ACRA https github com ACRA a
  • 我想从 android 中服务器的视频 url 创建缩略图

    My code public static Bitmap retriveVideoFrameFromVideo String videoPath throws Throwable Bitmap bitmap null MediaMetada
  • 如何在 NumberPicker 中一次显示 3 个以上的值

    我正在创建一个数字选择器 如下图所示 但如果有可用空间 我想显示 3 个以上的值 该选择器有 20 个项目 并且有足够的空间来显示 3 个以上的值 这可以使用 NumberPicker 来完成吗 只需以编程方式设置numberPicker
  • 使用 Android Studio 进行调试永远停留在“等待调试器”状态

    UPDATE The supposed重复是一个关于陷入 等待调试器 执行时Run 而这个问题就陷入了 等待调试器 执行时Debug 产生问题的步骤不同 解决方案也不同 每当我尝试使用Android Studio的调试功能时 运行状态总是停
  • TortoiseSVN 不要求身份验证?

    我已经在conf文件中设置了一个新的SVN存储库 运行SVNServe anon access none SVNServe 忠实地正确地做到了这一点 但是当我尝试使用 TortoiseSVN 浏览存储库时 它只是说不允许访问 它不应该要求我
  • 如何从android中的外部存储中获取所选文件的文件路径?

    我在选择文件的文件路径时遇到问题 我搜索了整个堆栈溢出 但问题没有解决 从设备中选择文件的代码如下所示 Intent intent new Intent Intent ACTION GET CONTENT intent setType in
  • android中listview显示数据库中的数据

    我是安卓新手 我想知道如何在列表视图中显示数据库中的数据 它不会向数据库添加数据 我只是显示我们存储在数据库中的任何内容 请帮助我实现这一目标 提前致谢 使用这些课程可能会对您有所帮助 用于数据库创建 package com example
  • android textview 有字符限制吗?

    我正在尝试在 android TextView 中输入超过 2000 3000 个字符 它不显示任何内容 任何一份指南是否对 android textview 有字符限制或什么 我在G3中做了一些小测试 我发现 如果activtiy布局中有
  • 未解决的包含:“cocos2d.h” - Cocos2dx

    当我在 Eclipse 中导入 cocos2dx android 项目时 我的头文件上收到此警告 Unresolved inclusion cocos2d h 为什么是这样 它实际上困扰着我 该项目可以正确编译并运行 但我希望这种情况消失
  • Android Root 执行 su 带参数

    我在使用参数执行 su 时遇到问题 包含空格 我的 Command java 看起来像这样 public class Command Process process public String executeCommand String c
  • Android 地理围栏无法正常工作(未调用 IntentService)

    这是我的代码 安卓清单
  • 如何在Android中创建一个简洁的两栏输入表单?

    我想创建一个整洁的两列输入表单 如下所示 到目前为止我的 xml 布局代码
  • 通过 AJP 将 REMOTE_USER 转发到 tomcat(例如用于 shibboleth)

    今天我刚刚遇到了以下问题 1 我将apache配置为基本身份验证 需要有效用户 这有效 2 我进一步配置 apache 将某些路径 在我的例子中为 idp 的请求转发到 tomcat servlet shibboleth IDP 结果是 s
  • 如何正确编写AttributeSet的XML?

    我想创建一个面板适用于 Android 平台的其他小部件 http code google com p android misc widgets 在运行时 XmlPullParser parser getResources getXml R

随机推荐

  • Objective C 使用字符串动态调用方法

    我只是想知道是否有一种方法可以调用一个方法 我可以用字符串动态构建方法的名称 例如我有一个名为 loaddata 的方法 void loadData 我通常会这样称呼它 self loadData 但我希望能够使用字符串动态调用它 例如 N
  • AngularJS:为什么 ng-bind 在角度上比 {{}} 更好?

    我参加了一场有角度的演讲 其中提到了会议中的一位人士ng bind比 捆绑 原因之一 ng bind将变量放入监视列表中 只有当模型发生更改时 数据才会推送到视图 另一方面 每次都会对表达式进行插值 我猜是角度周期 并推送该值 无论该值是否
  • 枢轴标题样式

    C UWP Windows 10 项目 I need to set Pivot header style to something like this 我尝试使用这个例子堆栈溢出 https stackoverflow com questi
  • Bash 中的布尔运算符( &&、-a、||、-o )

    两者有什么区别 a and oUnix 运算符 这两种类型的使用有何限制 难道仅仅是因为 and 在条件中使用标志时应该使用运算符吗 As in 1 yes r 2 txt versus 1 yes a 2 lt 3 经验法则 Use a
  • 如何在页面刷新时保留 javascript/jquery 对 DOM 所做的更改

    我的问题是当我单击链接时 例如第二页 它将在屏幕上显示第二页 但是当我重新加载页面时 当前页面不会保存 并且会恢复为默认页面 如何防止所需页面刷新到默认页面 JavaScript
  • 使用 PM2 和 Vscode 进行调试

    Visual Studio Code 内置了一些很棒的调试功能 可以轻松使用 Node js 调试应用程序 但是 我的应用程序配置为使用 PM2 版本 3 4 1 节点版本 6 17 1 如何设置 Visual Studio Code 来使
  • 使用 UIKit 绘制复选标记 NSString 不考虑填充颜色

    我试图用 UIKit 绘制绿色的复选标记 但它是用黑色绘制的 这是代码 UIColor greenColor set drawAtPoint CGPointZero withFont UIFont systemFontOfSize UIFo
  • Django 测试框架中的login()

    我已经开始使用 Django 的测试框架 一切都工作正常 直到我开始测试经过身份验证的页面 为了简单起见 我们假设这是一个测试 class SimpleTest TestCase def setUp self user User objec
  • boost::进程间线程安全吗?

    目前 我有 2 个进程使用 message queue 和共享内存形式 boost 进行通信 一切都按参加的方式进行 现在我需要使这个进程之一成为多线程 再次感谢boost 我想知道是否需要在线程之间使用保护机制 例如互斥体 或者boost
  • Android 快速位图加载

    我有一块图像想要加载到屏幕上 所有图像都是我下载并存储在 SD 卡上的文件 到目前为止 我找到了两种方法来做到这一点 首先是在活动开始时将它们加载到主线程上 我得到了大约 70 张图像 大约需要 2 1 秒才能加载它们 另一种方法是我现在正
  • 使用面板或占位符

    有什么区别
  • 单例实现 - 为什么需要复制构造函数?

    我在网上找到了单例设计模式的代码 class Foo public static Foo getInstance static Foo instance return instance private Foo Foo Foo const F
  • 摆脱 HTML/CSS 中输入框的蓝色焦点矩形?

    我运行的是 Mac 操作系统 因此我无法真正判断 Windows 计算机上是否存在此效果 因此如果您没有看到此效果 我深表歉意 输入和文本字段在聚焦时似乎有一个蓝色矩形 至少在 Mac 上的 Firefox 和 Chrome 上是这样 我在
  • 在 Swift 3 中滚动动态 UISegmentedControl

    您好 我想创建一个包含 20 多个项目的动态 UISegmented 视图 我尝试了一下 但输出是这样的 文本被切片 不完全可见 我希望它向左和向右滚动并显示全文 有人可以帮我解决这个问题吗 tnx 视图控制器 override func
  • Stackoverflow 风格的 Facebook 帐户登录

    您好 我正在尝试为用户提供使用他们的 Facebook 帐户登录我的网站的选项 据我在 facebook api 中阅读 我只发现通过弹出窗口登录 http developers facebook com docs guides web l
  • 在 Mac OS X 上构建 z3

    我正在尝试建立Z3 http z3 codeplex com releases view 95640在 Mac OS X 上 按照 README 文件 我刚刚执行了 autoconf configure make 收到错误 omp h 文件
  • .NET / Windows Forms:记住窗口大小和位置

    我有一个带有普通窗口的 Windows 窗体应用程序 现在 当我关闭应用程序并重新启动它时 我希望主窗口出现在屏幕上的同一位置 并且大小与关闭时的大小相同 Windows 窗体中是否有一种简单的方法来记住屏幕位置和窗口大小 如果可能的话 还
  • relativelayout重心不起作用

    我正在尝试将多个视图水平居中RelativeLayout那是一个基地
  • 如何使用 Ramda 通过键值查找数组中匹配的对象

    Ramda REPL 示例 http ramdajs com repl var 20port 20 3D 20 5B 7Bticker 3A 22aa 22 7D 2C 20 7Bticker 3A 22bb 22 7D 5D 0A 0Av
  • 流行的应用程序如何验证从移动应用程序发送到服务器的用户请求?

    假设我有一个 Android 应用程序 它连接到 Net API 来接收 设置数据 我的困惑在于如何首次注册 登录用户并在每次向 API 发出请求时进行身份验证 如果我只使用基于用户名 密码的身份验证 它们将不安全 足够的 我无法在设备中保