Articles of oauth

如何使用android中的woocomerce Api进行改造来实现OAuth 1.0a

您好我正在研究woocommerce api,我需要使用改造来集成api。 该网站使用HTTP,因此不能在普通HTTP上使用HTTP基本身份validation,因为密钥容易被拦截。 API使用OAuth 1.0a“单脚”身份validation来确保您的API密钥无法被截获。 我已经通过这个艺术来了解在http上使用哪个OAuth方法。 我已经使用Scribe成功实现了api但是我想使用改进来实现api,在goggling之后我发现Interceptor是Jake Wharton Oauth1SigningInterceptor 。 所以我在身份validation的改造中实现了这个,但api调用返回 {“code”:”woocommerce_rest_cannot_view”,”message”:”Sorry, you cannot list resources.”,”data”:{“status”:401}} 如果我使用Scribe调用返回成功的响应,则相同的api 以下是我称之为Api的方式 BasicAuthInterceptor.java (从jake wharton Oauth1SigningInterceptor修改) public class BasicAuthInterceptor implements Interceptor { private static final Escaper ESCAPER = UrlEscapers.urlFormParameterEscaper(); private static final String OAUTH_CONSUMER_KEY = “oauth_consumer_key”; private static final String OAUTH_NONCE = “oauth_nonce”; private static final String OAUTH_SIGNATURE = […]

如何使用Android使用authrequest在LinkedIn注销?

我开发了一个与linkedIn集成的应用程序..! 我使用OAuth服务在linkedIn中进行SignIn身份validation以发布网络更新..但现在如何自动注销(解除身份validation)到LinkedIn? 谢谢你…

Android:Google SSO – OAuth还是AccountManager? 或两者?

在阅读各种Stackoverflowpost和各种文档(包括http://code.google.com/p/google-api-java-client/网站上的一些文档)后,我感到非常困惑。 那么有人可以向我解释实现以下目标的最佳方法: 让用户批准我的应用。 如果通过访问帐户/设置中的注册Google帐户并批准应用程序(首选方式)或致电Google OAuth身份validation页面,我真的不在乎 获取可用于与Google Reader通信的身份validation令牌 另一个令我困惑的地方 – 我能够使用AccountManager批准我的应用程序并从中获取身份validation令牌,但它不适用于Google阅读器。 那么如何平衡AccountManager和OAuth的账户信息呢? 我在AccountManager设置中获得用户批准后,是否仍需要对OAuth执行任何操作? 代码示例会很好但我看起来更清楚地解释了所有这些部分是如何相互关联的

在android中的woocommerce rest api OAuth身份validation

android中OAuth 1.0a(单腿)身份validation的示例代码是什么? 它有一个图书馆吗? 。 我使用eclipse,我是android的新手。 任何人都可以为我澄清道路吗?

使用Google Fit api时,Google Oauth 2.0 RESULT_CANCELED

我想在我的Android应用程序中使用google fit api。 我按照本指南使用我的jdk 1.8 bin文件夹中的keytool.exe创建了SHA-1证书。 我现在已经创建了Oauth客户端ID 。 在我的应用中,我在这里得到RESULT_CANCELED: @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if( requestCode == REQUEST_OAUTH ) { authInProgress = false; if( resultCode == RESULT_OK ) { if( !mClient.isConnecting() && !mClient.isConnected() ) { mClient.connect(); } } else if( resultCode == RESULT_CANCELED ) {/// HERE Toast.makeText(MainActivity.this,”RESULT_CANCELED”,Toast.LENGTH_SHORT).show(); […]

使用Auth Cookie以编程方式发送Gmail

我想实现类似于此问题中提供的解决方案,允许应用程序在不使用ACTION_SEND Intent的情况下发送电子邮件。 但是,我宁愿使用AccountsManager类来允许用户通过一键批准来访问Google帐户,而不是提示用户输入他们的gmail凭据。 我熟悉一旦用户允许访问他们的帐户,如何获取身份validation令牌/ cookie,但我无法find的信息(如果可能的话)是如何validation和发送电子邮件给定auth cookie而不是用户名和密码。 有关如何执行此操作的任何信息/如果可能的话,将非常感谢。 提前致谢。

如何在Android设备上使用Samsung OAuth登录?

我有兴趣在Android设备上为Samsung Accounts添加OAuth 2.0登录,但我似乎找不到任何关于此的文档。 您能否分享一下有关如何为三星帐户实现此目的的任何API,文档?

自定义Chrome标签OAuth拦截redirect_uri

我似乎无法弄清楚如何拦截我使用Fitbit OAuth 2.0的redirect_uri。 这是我为我的一个活动定义的intent-filter: 在使用自定义Chrome标签登录并授权用户后,我被重定向到track :: //我想拦截的fitbit URI并将该意图发送到我的Activity,但redirect_uri已加载到标签中,显示“ERR_UKNOWN_URL_SCHEME”错误。 编辑#1: 在https://code.google.com/p/chromium/issues/detail?id=536037上发现了类似的讨论。 我清除了Chrome的默认值,但是该选项卡的redirect_uri似乎没有触发一个Intent,询问哪个应用程序打开了URI。

OAuth在手机上使用代理服务器太麻烦了吗?

我花了最近几天才开始运行OAuth。 不是在Android上,而是在我的网络服务器上,它将充当OAuth保护服务的代理。 我正准备实施我的Android客户端,而我的头脑仍在努力解决安全性和实施问题。 当客户端只是一个Web浏览器时,OAuth就足够混乱了。 您有以下一系列步骤: (客户端Web浏览器)向我的代理服务器发出请求 (代理服务器)从OAuth提供程序请求未经授权的令牌(例如 – Web服务API) (代理服务器)要求OAuth提供商让用户授权令牌。 将Web浏览器重定向到OAuth提供程序的“授权”URI (OAuth提供商)用户完成授权后,将浏览器重定向到您的回调URI (代理服务器::回调URI)访问令牌的Exchange授权令牌,然后将其存储以供将来调用 对OAuth提供程序进行API调用并将响应文档返回给客户端Web浏览器 现在这已经足够了。 但是当使用与移动应用程序相同的机制作为客户端时,它会更加复杂。 问题当然是你必须做一些杂技,以便在进行OAuth舞蹈时将浏览器会话注入到移动应用程序的代码流中。 这意味着你必须进一步复杂化OAuth舞蹈如下(我在这个例子中使用Android应用程序来使事情具体化): (移动Web应用程序::本机代码)使用Java / HTTP从代理服务器发出请求 (代理服务器)从OAuth提供程序请求未经授权的令牌(例如 – Web服务API) (代理服务器)将响应文档返回到移动Web应用程序,该应用程序包含OAuth提供商用户授权的重定向URI,最好是模糊化以隐藏消费者密钥和其他细节以阻止“无线”窥探。 (移动Web应用程序)使用已安装intentfilter的授权URL启动Web浏览器活动。 但是,存储然后用一个特殊的“假冒”URI替换代理服务器的指定回调URI,以便通过意图filter轻松识别URI(请参阅以下步骤) (OAuth提供商)在用户完成授权后,将浏览器重定向到您的“假冒”回调URI。 (移动网络应用程序)意图filter检测“假”回调URI并使用该信号重新获得控制权。 重建代理服务器的回调URI并使用Java / HTTP执行请求。 (代理服务器::回调URI)访问令牌的Exchange授权令牌,然后像以前一样将其存储以供将来调用 对OAuth提供程序进行API调用,并将响应文档返回到移动Web应用程序 你可以看到这很可怕。 如果有一个更简单的方法,那么我渴望听到它。 据我所知,只有两个其他选择,每个都有自己的重大问题。 1)忘记代理服务器并直接从移动Web应用程序执行所有操作。 这里最大的安全漏洞就是你需要在你的OAuth消费者密钥中“烘焙”并秘密进入你的应用程序。 如果攻击者反编译您的代码并搜索这些字符串,对于具有逆向工程经验的人来说,这是一个相当简单的操作,它们会对您的应用程序和用户造成严重破坏。 2)切换到XAuth,用户在那里向您提供他们的登录名和密码,并且您“同意”不存储它们并直接与XAuth服务器交换它们以获取访问令牌。 第一个问题是获得用户信任以提供该信息,创建OAuth以解决问题,当然还有那些不履行其放弃登录详细信息的承诺的人呢? 更糟糕的是,XAuth服务器必须支持XAuth并提供HTTPS(SSL)连接,而且我看到大量的Web API都不支持。 当然,SSL连接是必要的,因为在没有它的情况下,您在发出XAuth请求时会以纯文本forms通过网络发送用户的登录名和密码。 http://blog.zyber17.com/post/1283741364/why-xauth-is-a-really-dumb-idea 仅供参考,虽然它不使用代理服务器,但以下示例说明了我将上述用于将浏览器会话注入您的移动应用OAuth交互并拦截回调URI的技术: http://blog.doityourselfandroid.com/2010/11/10/oauth-flow-in-android-app/ 所以你看它看起来很丑陋,我甚至没有为用户创建和管理你自己的用户ID而烦恼,这样你就可以正确查找存储在代理Web服务器上的访问权限(包括一个PIN或访问代码的混乱,供用户管理)。 有趣的注意事项:在对Android Web浏览器会话安全性进行一些研究时,我很高兴地发现您不能访问当前的网页HTML。 如果您可以访问它,那么恶意的Android编码器可以轻松地嗅出用户的登录名和密码,从而完全破坏OAuth的目的和意图。 我很沮丧地发现可能有办法通过CacheManager对象获取HTML。 奇怪的是,根据Android文档,该对象现已被弃用并计划删除,因此希望这意味着Google发现了(潜在的)安全漏洞,并正在采取措施在即将推出的版本中将其删除: http://developer.android.com/reference/android/webkit/CacheManager.html […]

浏览器回调和Android Activity堆栈疯狂

我正在努力使用自定义scheme-> intent_filter技术的无处不在的回调来获得OAuth授权的特定行为。 我的应用程序注册SEND操作,并在调用时启动服务,该服务反过来检查用户是否已获得授权,如果没有,则生成一个活动(OAuthActivity)以请求登录。 请记住,在此之前发生的前台活动可能是任何事情。 然后,活动启动VIEW意图以在浏览器中打开auth页面; 后者调用精心设计的回调(使用manifest中定义的自定义方案)并唤醒OAuthActivity。 OAuthActivity目前有launchMode=”singleTask”但这与堆栈视角没有区别(当回调时它会在顶部)。 有没有办法可以清除活动堆栈并回到用户正在做的事情,而不是强迫他“推回”浏览器活动? (然后,我会在后台成功提交内容时显示通知) 有没有人有任何指针? 感谢您的阅读