首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >OAuth和握手混淆

OAuth和握手混淆
EN

Stack Overflow用户
提问于 2012-05-15 15:12:29
回答 1查看 252关注 0票数 0

我刚接触OAuth,很难理解它背后的工作流程。

据我所知,当我尝试通过OAuth验证凭据时,我会向登录服务器发送一个请求,它会接管并让用户登录到站点本身。如果凭据有效,则访问OAuth请求的回调URL,并将令牌附加到该回调URL。此令牌必须与所有将来的HTTP请求一起传递到服务器,并用作用户凭据的验证。

我感到困惑的是,如何使此过程适用于没有服务器的桌面应用程序?我使用什么作为回调URL,如果我只是在桌面上运行.NET应用程序,我如何检索令牌?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-15 18:59:14

这取决于您希望支持哪些服务提供商。

谷歌在这里很好地描述了如何在“已安装的应用程序”中使用OAuth 2.0:https://developers.google.com/accounts/docs/OAuth2InstalledApp

一般来说,有几种不同的策略:

  1. 按照您上面描述的方式执行OAuth流程--使用标准的URL处理程序弹出浏览器,但要求用户将授权代码从浏览器复制/粘贴回您的应用程序。这需要提供程序对浏览器窗口的urn:ietf:wg:oauth:2.0:oob.
  2. Open的redirect_url的支持,并自动从浏览器的标题窗口捕获服务器返回的授权码,而不需要复制/粘贴。这还需要在您的应用程序中支持OOB redirect_url.
  3. Do OAuth请求作为嵌入式浏览器窗口,并捕获授权码,如#2所示。

如果您的OOB2.0提供商不支持OAuth,您也可以重定向到您自己的web服务器来完成类似的任务。

最大的问题是,您这样做是为了身份验证(获取用户身份)还是授权(通过web API访问用户数据)。如果您正在尝试对用户进行身份验证,则需要一些可以信任的服务器端逻辑来传递用于验证的授权码或访问令牌。

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

https://stackoverflow.com/questions/10603729

复制
相关文章
SimpleMembershipProvider 和 OAuth
ASP.NET MVC 4带了一个新的Membership 系统,Jon Galloway 写了一篇很详细的博客《SimpleMembership, Membership Providers, Universal Providers and the new ASP.NET 4.5 Web Forms and ASP.NET MVC 4 templates》,这个虽然叫做SimpleMembership,可扩展性却非常的好,而且还支持OAuth。下面这张图说明了SimpleMembership 集成 ASP.
张善友
2018/01/29
9300
SimpleMembershipProvider 和 OAuth
android混淆和反编译
混淆 Android Studio: 只需在build.gradle(Module:app)中的buildTypes中增加release的编译选项即可,如下: <code class="hljs bash has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undef
xiangzhihong
2018/02/01
7200
SSL协议概述和握手过程
SSL协议的机密性主要依靠的是对称加密体质,在通信过程中,使用对称密码进行加密解密保证信息的安全性。
全栈程序员站长
2022/09/01
2.4K0
OpenID 和 OAuth 的区别
OpenID是Authentication(认证) OAuth是Authorization(授权) 对比 OpenID 用户希望访问其在example.com的账户。 example.com (在OpenID的黑话里面被称为“Relying Party”) 提示用户输入他/她/它的OpenID。 用户给出了他的OpenID,比如说 http://user.myopenid.com。 example.com 跳转到了用户的OpenID提供商 mypopenid.com,(example.com向myope
sean.liu
2022/08/03
3190
Android 代码混淆 混淆方案
本篇文章:自己在混淆的时候整理出比较全面的混淆方法,比较实用,自己走过的坑,淌出来的路。请大家不要再走回头路,可能只要我们代码加混淆,一点不对就会导致项目运行崩溃等后果,有许多人发现没有打包运行好好地,打包完成以后而又不不可以了,导致了许多困惑,本片文章来问大家解决困惑,希望对大家有帮助。
全栈程序员站长
2022/09/02
2.7K0
js混淆与反混淆
由于设计原因,前端的js代码是可以在浏览器访问到的,那么因为需要让代码不被分析和复制从而导致更多安全问题,所以我们要对js代码进行混淆。
ek1ng
2023/03/08
11.9K0
js混淆与反混淆
[PHP] Oauth授权和本地加密
1.Oauth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方
唯一Chat
2019/09/10
6210
混淆的行迁移和行链接
开发提出需求,要向一张已经包含100多个字段的表再新增字段,技术上可行,但是这种操作,究竟有何副作用?
bisal
2019/06/22
8110
3次握手和4次挥手
client发送了第一个连接的请求报文,但是由于网络不好,这个请求没有立即到达服务端,而是在某个网络节点中滞留了,知道某个时间才到达server,本来这已经是一个失效的报文,但是server端接收到这个请求报文后,还是会想client发出确认的报文,表示同意连接。假如不采用三次握手,那么只要server发出确认,新的建立就连接了,但其实这个请求是失效的请求,client是不会理睬server的确认信息,也不会向服务端发送确认的请求,但是server认为新的连接已经建立起来了,并一直等待client发来数据,这样,server的很多资源就没白白浪费掉了,采用三次握手就是为了防止这种情况的发生,server会因为收不到确认的报文,就知道client并没有建立连接。这就是三次握手的作用。
葆宁
2019/04/18
3800
3次握手和4次挥手
[译] 深入 OAuth2.0 和 JWT
从基于计算机的应用出现伊始,几乎每个开发者在其职业生涯内都会面对的一个最常见也是最复杂的问题,就是安全性(security)。这类问题意味着要考虑理解由谁提供什么数据/信息,此外还有关乎时间、校验、再校验等诸如此类的很多其他方面的事情。
江米小枣
2020/06/15
3.2K0
OAuth2.0理解和用法
现在网络的资料到处都是,很容易搜索到自己想要的答案。但答案通常只能解决自己一部分的问题。如果自己想要有一套自己的解决方案,还得重新撸一遍靠谱。
Ryan-Miao
2021/04/19
1.3K0
OAuth2.0理解和用法
使用tcpdump和Wireshark看下TCP握手
tcpdump 和 Wireshark 是最常用的网络抓包和分析工具,作为经常和网络打交道的划水选手,怎么能不了解下呢?补篇博文回顾下相关操作。这里以 example.com 的一次 GET 请求为例,先使用 tcpdump 抓个包,再使用 Wireshark 看下 TCP 的握手。
Cloud-Cloudys
2020/11/16
1.7K0
使用tcpdump和Wireshark看下TCP握手
iOS代码混淆(Python混淆脚本)
最近一直在看Python,也很喜欢Python的灵活性;今天主要想说的是iOS的代码混淆,为什么想做代码混淆?为了APP的安全,为了防止别人破壳轻易破解我们代码;还有就是做马甲包了,我们知道马甲包的市场需求很大,但是不能花费过多的精力在开发上,毕竟只是个马甲,没必要花费太多的成本!
用户6004386
2019/08/09
3.6K0
iOS代码混淆(Python混淆脚本)
websocket握手过程,和socket的区别
如果是写后端的,或者服务器的,肯定都知道socket是什么,套接字,其实就是对TCP和UDP协议封装的接口,相当于是一个库,提供很多函数接口API供我们使用。
opencode
2022/12/26
7140
websocket握手过程,和socket的区别
详解JWT和Session,SAML, OAuth和SSO,
了解什么是 OAuth,什么是 SSO, SSO 下不同策略 OAuth 和 SAML 的不同,以及 OAuth 与 OpenID 的不同,更重要的是区分 authorisation和 authentication。
php007
2019/08/20
3.3K0
详解JWT和Session,SAML, OAuth和SSO,
【Android 安全】DEX 加密 ( ProGuard 混淆 | -keepclassmembers 混淆效果 | -keepclasseswithmembernames 混淆效果 )
更多 ProGuard 混淆配置参考 : https://www.guardsquare.com/en/products/proguard/manual/usage
韩曙亮
2023/03/28
4.5K0
【Android 安全】DEX 加密 ( ProGuard 混淆 | -keepclassmembers 混淆效果 | -keepclasseswithmembernames 混淆效果 )
混淆矩阵
混淆矩阵是一个表,经常用来描述分类模型(或“分类器”)在已知真实值的一组测试数据上的性能。混淆矩阵本身比较容易理解,但是相关术语可能会令人混淆。
用户3577892
2020/06/17
1.4K0
混淆矩阵
OAuth 详解<1> 什么是 OAuth?
从高层次开始,OAuth 不是API或服务:它是授权的开放标准,任何人都可以实施它。
用户1418987
2023/04/10
4.7K0
OAuth 详解<1> 什么是 OAuth?
ProGuard混淆
1.压缩(shrinks) :检查并移除代码中无用的类,字段,方法,属性。 2.优化(optimizes):对字节码进行优化,移除无用的指令。 3.混淆(obfuscates):使用a,b,c,d等简短而无意义的名称,对类,字段和方法进行重名,这样即使代码被逆向工程,对方也比较难以读懂。 4.预检测(Preveirfy):在java平台上对处理后的代码进行再次检测。
acc8226
2022/05/17
3.2K1
点击加载更多

相似问题

单点登录和OAuth混淆

10

OAuth握手复制错误

11

谷歌OAuth混淆

12

OAuth和OWIN身份验证-混淆

19

OAuth和OpenID在索赔和访问方面的混淆

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档