Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何确保用户在我的应用程序中通过POST请求进行身份验证?

如何确保用户在我的应用程序中通过POST请求进行身份验证?
EN

Stack Overflow用户
提问于 2018-09-04 03:03:27
回答 1查看 116关注 0票数 2

我正在编写一个android应用程序,它通过POST请求连接到我的服务器。到目前为止,我正在使用SHA-256哈希和盐时代时间,并使用它作为第三个参数与用户名和密码,以确保身份验证是从应用程序。但是,攻击者可以对apk进行解压缩,并计算出我要添加到划时代时间的盐分,允许他们从任何地方发出POST请求。

我想知道是否有办法确保帖子请求是从我的应用程序中发出的。注意,我不能从POST中更改服务器的身份验证方法。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-04 22:06:57

HTTP客户端身份验证是一个开放的过程,允许供应商实现不同的身份验证方案。

除了SSL (在HTTP协议下运行时)具有自己的身份验证机制(用于服务器和/或客户端)之外,HTTP协议上的身份验证任务由header协议中的WWW-Authenticate报头管理。该字段反映服务器是否需要某种身份验证,以及如何对对等方进行身份验证。

这允许对等协议身份验证(不仅对客户端,而且对服务器也可以进行身份验证),但它使HTTP方法不可知,因为身份验证过程与请求信息的方法正交。您可以将身份验证与任何(或所有) http方法(GET、POST、CONNECT、HEAD、PUT、DELETE等)一起使用

您需要阅读RFC的文档:七百二百三十七二三一七二三二七二三三七二三四七二五五

您更感兴趣的是七二三四 (它描述协议身份验证),以及您请求的web服务器的文档,以及如何配置该服务,以了解它支持的身份验证方法或您必须提供的认证客户端凭据。

通常情况下,这一过程如下:

  1. 客户端为目标url发出未经身份验证的信息请求。
  2. 服务器拒绝请求,必须使用信令身份验证,并提出身份验证方法和挑战。
  3. 客户端重做请求,但提供来自服务器的请求凭据。
  4. 服务器接受请求或再次拒绝请求。

要注意的是,根据要使用的身份验证方法(例如BASIC是一个简单的用户名/密码方案,而摘要强制用户根据已使用的凭据和某些服务器提供的信息生成摘要),您可以需要一次以上的往返到服务器(服务器可以强迫您(虽然不是很常见)使用链中的两种方法来授予您访问资源的权限)。

在Java的例子中,一个很好的文档来源可能是Apache HttpClient类,它提供了一些来自Apache的教程,这些教程向您展示了如何发出经过身份验证的请求。一个很好的参考是

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52164853

复制
相关文章
【EF】数据表全部字段更新与部分字段更新
在更新数据库的过程中,出现了” 更新条目时出错。有关详细信息,请参见内部异常。“的问题。
全栈程序员站长
2022/08/09
1.8K0
更新Mapx地图的字段
'更新地图的字段   Dim ftr As Feature   Dim rs As ADODB.Recordset   Map1.Layers("油井").KeyField = "name"   For Each ftr In Map1.Layers.Item("油井").AllFeatures     Set rs = oCn.Execute("select * from petro_well where wellname='" & ftr.KeyValue & "'")     If Not rs.EO
用户1075292
2018/01/23
1.1K0
MySQL中"更新时间"字段的更新时点问题
我们在设计表时,通常为了记录数据插入和更新的时间,会定义两个字段,create_time/insert_time和update_time,按照需求,记录插入的时间,会存储到create_time/insert_time字段中,记录更新的时间,会存储到update_time字段中,当创建记录时,会同步更新create_time/insert_time和update_time,然而,当更新记录时,只会更新update_time字段。
bisal
2022/09/29
5.2K0
update自更新字段添加新字段是否会更新旧数据
验证:一张具备自更新字段的表,如果新增一个字段,原表数据的update_time字段是否会更新?
薄刀刀
2022/04/29
1.1K0
MP字段更新策略
添加@TableField(updateStrategy = FieldStrategy.IGNORED)
阿超
2022/10/28
1K0
它来了,它来了,Power BI的5月更新带着【字段参数】向你走来了
https://powerbi.microsoft.com/en-us/blog/power-bi-may-2022-feature-summary/
陈学谦
2022/05/25
8660
它来了,它来了,Power BI的5月更新带着【字段参数】向你走来了
hibernateTemplate update 只更新被修改字段
如果你用hibernateTemplate操作数据库,感觉的确很省代码,一行代码解决数据库增改删查,但当你做到一个功能只更新一个字段,你就有点懵逼了,怎么试就是不行,总的就是下面的异常报错。
全栈程序员站长
2022/09/07
7850
突击并发编程JUC系列-原子更新字段类AtomicStampedReference
他来了,他来了,他带着 ABA 问题走来了,小伙伴们,大家好,我们又见面了,突击并发编程 JUC 系列实战原子更新数组类马上就要发车了。
山间木匠
2020/09/25
3790
突击并发编程JUC系列-原子更新字段类AtomicStampedReference
mongodb 更新删除内嵌list字段值
查询结果如下,现在需要把 “证券代码” =》 “code” ; “发行人中文名称” =》 “COMP_NAME”
周小董
2019/03/25
3.1K0
MongoDB数据插入、删除、更新、批量更新某个字段
查询出hospitalName是xx医院和openId以2开头的所有记录,并且更新my_booking表中的payType为1.
周小董
2019/03/25
26.8K0
MongoDB数据插入、删除、更新、批量更新某个字段
PostgreSQL update/delete/upsert关联更新字段数据
update ori_table_name a set col = (select col from new_table b where a.rel_col=b.rel_col);
chimchim
2023/10/17
3270
Power BI 重大更新:字段参数详解 - 基础篇
虽说是一个点,且在官方说明的篇幅非常少,但是这个特性却意义重大而深刻。我们会用不同的文章来说明这个特性的各种特点。
BI佐罗
2022/07/07
4.2K0
Power BI 重大更新:字段参数详解 - 基础篇
Spring Data JPA: 更新字段采坑记
三个注解缺一不可!!! 缺少@Modifying.报错如下!
JavaEdge
2018/08/02
2.3K0
Spring Data JPA: 更新字段采坑记
Rafy 框架 - 实体支持只更新部分变更的字段
Rafy 快一两年没有大的更新了。并不是这个框架没人维护了。相反,主要是因为自己的项目、以及公司在使用的项目,都已经比较稳定了,也没有新的功能添加。但是最近因为外面使用了 Rafy 的几个公司,找到我,提出了一些明确的需求,期望我做一些相应的升级。所以可能最近几个月,会陆续更新 Rafy 框架。
用户1172223
2021/10/15
1.2K0
mysql更新字段中的部分内容
在实践中,会出现某些字段中的内容变了,比如三方提供的图标地址变了,那么或许对字段中存储的图片域名进行更新,此时就需要用到mysql更新字段中的部分内容的功能。
程序新视界
2020/05/18
2.4K0
Golang MongoDB Driver 更新符合条件的数组元素的字段
在 MongoDB 的 Shell 里修改文档里某个符合条件的数组里的值的字段,可以这样:
饶文津
2020/08/05
4.1K0
DRF中多对多ManytoMany字段的更新和添加
drf的序列化器给模型输出带来了便利但是对于多对多字段网上查询的内容却是很少(也有可能是本人不会搜答案)
对你的承诺
2023/09/07
9790
sql server 更新两个表的某个字段
--临时表 create table tmp_cup ( a varchar(20), b varchar(50), c varchar(20) ) select * from t_customer --//更新简称字列 update t_customer set SHORTNAME=(select shortname from tmp_cup where a=custid) 不过如此的话, 如果子查询的某个查询返回多条数据的话就有可能报错:消息 512,级别 16,状态 1,
乔达摩@嘿
2020/09/11
2.1K0
mysql更新同一个表的同个字段
需求: 数据表express_log的字段option_time,将状态为30的更新为状态为0的加上2秒
用户1571008
2022/11/18
2.3K0
点击加载更多

相似问题

Sitecore字段的编程更新

25

Sitecore以编程方式更新NameValueList

12

如何使用编辑器以编程方式发布已更新的Sitecore项

31

以编程方式更新Drupal CCK字段

20

能否以编程方式更新ACF Wysiwyg字段?

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文