问题标签 [2-legged]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
747 浏览

ios - Objective C 中的 2-legged OAuth 1.0a - ios 应用程序开发

我正在用 Objective-C 开发一个 iphone 应用程序,而且里面很新。我只有请求 URL、消费者密钥和秘密。我该如何进行 2 腿身份验证,请您提供一些代码。我已经检查了 AFNetworking 项目和其他示例,但我认为它们对于像我这样的菜鸟来说太复杂了。

谢谢。

0 投票
1 回答
1138 浏览

java - 对 Oauth 2-leged 系统进行身份验证

我正在尝试使用 2legged oauth 对 Web 服务进行身份验证。我有下一个使用路标库创建经过身份验证的 URL 的 Java 示例:

这会生成一个这样的 URL

http://example.com/my/method?oauth_consumer_key=KEY&oauth_nonce=4779611081457530684&oauth_signature=v19lL74VVMTibCMja5vnwIE2q5g%3D&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1368778106&oauth&1.token=KEY

我正在尝试使用 ruby​​ 的oauth重新创建它。我的代码现在看起来像这样:

并生成如下 URL:

http://example.com/my/method?oauth_signature_method=HMAC-SHA1&oauth_nonce=7eQe4cAE27uBE9Bftfx7Pcjj1kqfuXHPWt5d3NZw0&oauth_version=1.0&oauth_consumer_key=KEY&oauth_timestamp=1368778250&oauth_signature=EbM0BjseC1zB

但我总是收到未经授权的错误,即使我手动将 oauth_token 设置为密钥(就像路标一样)。看起来随机数无效,但它们都是 oauth 的有效库

谁能帮我?

提前致谢

0 投票
1 回答
180 浏览

google-oauth - Google Shortener with oauth 2.0 2-legged

我在创建我的移动应用程序时被阻止。
我希望能够在我的应用程序中使用谷歌缩短器和他的分析功能,问题是我想使用 2-legged Oauth2.0 并且我不知道是否有可能通过这个谷歌服务实现这个目标。
我尝试实现一个 3-legged Oauth 2.0,并且一切正常。但这不是我想要的。我在网上搜索了很多,但我没有找到一个好的解决方案。有人可以帮助我吗?

0 投票
1 回答
1547 浏览

ruby-on-rails - 如何使用 2-legged OAuth 构建 Rails REST API?

两天来,我一直在使用 OAuth 和 RSpec 来使用 2-legged OAuth 身份验证获得经过适当测试的 RESTful API,因此我考虑将其发布在这里并防止发生更多痛苦。

所以在这里,在答案中。

0 投票
1 回答
152 浏览

google-api - 适用于 Google Marketplace 用户的 Google Calendar v3 API

我们正在为 Google 市场用户开发一个与 Google 日历集成的应用程序。文档https://developers.google.com/google-apps/marketplace/best_practices中的许多链接都不起作用。任何人都可以指点我为市场用户使用带有 RESTful Google Calendar API V3 的 2-Legged OAuth 工作吗?TIA, 里亚兹 .A

0 投票
1 回答
462 浏览

ruby - 使用 2lo 从 Marketplace 应用程序访问 Google Directory API

在过去的几天里,我一直试图在 Ruby 中访问 Google 的 Directory API,但无法使其正常工作。根据文档,可以使用 2lo 对 Directory API 进行授权:

如果您的应用程序有某些不寻常的授权要求,例如在请求数据访问(混合)或域范围授权 (2LO) 的同时登录,那么您目前无法使用 OAuth 2.0 令牌。在这种情况下,您必须改为使用 OAuth 1.0 令牌和 API 密钥。您可以在 Google API 控制台的 API 访问窗格的简单 API 访问部分中找到应用程序的 API 密钥。

我目前有可以使用 2lo 访问 Provisioning API 的工作代码。从文档看来,我可以使用相同的代码访问 Directory API,只需将 API 访问密钥参数添加到请求并启用一些权限即可。但是,它不起作用,我不知道为什么。

这是请求代码:

这让我得到了回应:

我已将所需范围添加到清单文件中,

并且还在 API 控制台中为我的项目启用了 Admin SDK。

Faraday.default_connection.response :logger这是添加到我的 development.rb 文件后的日志输出:

在过去一天在互联网上搜索后,我不知道为什么这不起作用。任何人的想法?

0 投票
1 回答
5988 浏览

oauth - OAuth 1.0 - how to implement both 2-legged and 3-legged authentication?

I have implemented an OAuth 1.0a provider and have OAuth clients that can successfully authenticate against it, using the standard 3-legged authentication.

OAuth protects a REST API on my server and I have a mobile app consuming it.

In my mobile app, I have some functionalities (endpoints) that can be accessible even before the end-user logins to their private account.
Some user may even just want to use the public functionalities without creating an account.

I would like to protect with OAuth both "public" and "private-to-the-user" endpoints.

Therefore I think the way to go is to use OAuth the following way (but I may be wrong...very wrong).

The mobile app will first do 2-legged authentication as soon as the app is launched the first time. That way the mobile app will get a "2-legged" token. The mobile app will use this token to access public endpoints.

When (and if) the user requests to login to the application, the mobile app will do a 3-legged authentication and will get a "3-legged token". From now on, the app will forget about the previous 2-legged token and use the 3-legged token to access both public and private endpoints.

1) First question. Does that make sense? Is there another good way to do that?

Now my problem is: how can I (the server provider) know whether the mobile app wants to authenticate using 2-legged? I guess, as the provider, I need to know that in order to decide whether I will redirect the client to the login form for the user to fill (in the case of 3-legged) or I will just issue an already-authorised request token (in the case of 2-legged) so that that can be exchanged for an access token (as for the 3-legged).

My idea for doing that was to provide the client with 2 consumer keys: one to use when they want 2-legged and one to use when they want 3-legged. Me, as a provider, I will know which flow to provide based on the consumer key I receive.

2) Second (and last question). Is this sensible? Is there a better way to implement it?

I have seen people implementing 2-legged by just allowing the client (consumer) to send an empty access token. Is that the way, instead?

Thanks.

0 投票
0 回答
417 浏览

c# - 2-legged OAuth 和 Yahoo Sports API

如此简单的事情变得如此困难,这绝对是荒谬的。据我所知,尝试了多个示例,Yahoo 没有遵循大多数现有 C# 库所遵循的 OAuth 约定,例如,Google 实现不起作用,我在网上找到的许多其他示例也不起作用.

我想做的只是对雅虎统计数据进行简单查询。这些数据是公开可访问的,因此不需要任何类型的 3 腿握手,一个简单的 2 腿模型应该可以工作,但不能。我发现了这个例子:http ://andy.edinborough.org/C-OAuth-Implementation/这看起来是一个非常有前途的轻量级解决方案,但如果它曾经有效,它不再有效,无论如何我都会收到“400-Bad Request”我试试。

有没有人用 Java 或 C# 成功地实现了这一点,我只想拉回给定球员的统计数据(例如,给我 Aaron Rodgers 本赛季的统计数据)。

0 投票
1 回答
252 浏览

oauth - 带有市场的 Admin-sdk 不起作用

我试图用 admin-sdk 构建一个市场应用程序。

阅读文档,就市场应用程序而言,两条腿身份验证似乎是唯一的方法。

想检查当前用户是否是管理员,所以我想使用

https://www.googleapis.com/admin/directory/v1/users/(useremail)?xoauth_requestor_id=(admin-email)

我试图既是一样的又是管理员

Authorization 标头也如下所示。

当向 url 发出此请求时,我收到错误消息。

我寻找 api 来完成它,但找不到两条腿的 admin-sdk。有人可以帮我解决这个问题吗?

也可以通过使用服务帐户来完成这样的功能吗?

我也想,最后有 admin-sdk 最终可以使用 golang。

0 投票
1 回答
327 浏览

oauth - 访问令牌和 2-legged OAuth2

我是第一次学习 oAuth2。我将使用它通过两条腿的方法为一些简单的 Web 服务提供身份验证。

根据我所阅读的内容,流程应该是这样的:Web 服务客户端向 oAuth 服务器提供某种凭据(我正在考虑使用 JWT)。如果凭据有效,则 oAuth 服务器会返回访问令牌。然后,Web 服务客户端在尝试使用 Web 服务端点时提供访问令牌。

这是我的问题,为什么在向端点发出请求时不提供 JWT?为什么 oAuth 的流程是这样构思的。为什么不直接将 JTW 提供给端点并将其用于身份验证?获得访问令牌的额外步骤有什么好处?

谢谢!