我到处搜索,但没有找到任何可以提供帮助的东西。
我是 oAuth 的新手。
我正在使用 https://github.com/lucadegasperi/oauth2-server-laravel 。
我正在构建 REST API 服务。 客户端 将是网站。我正在使用 Password Flow 进行身份验证。
个人理解,如有错误请指正
oauth_clients 表(id、 secret 、名称)。 客户 是网站,而不是登录网站的个人用户。我将使用 The Client 的 id 和 secret 以及个人用户的用户名和密码。
我正在按照上面页面上的说明进行操作。
我在 http://api.domain.com/oauth/access_token?grant_type=password&client_id=BCA545A934F5F4528DA3EE567E8E4&client_secret=5184B7C4E11ED3EEF99DA1A1DD9C3&username=email@email.com&scope=password=password=password 上使用 POST 方法scope1,scope2&state=123456789
这可以很好地验证客户端和用户,但这是问题所在。我不知道在哪里设置 scope 或 state
这是响应 {
“错误”:“无效范围”,
"error_description": "请求的范围无效、未知或格式错误。检查\"scope1\"范围。"
}
老实说,我不知道下一步是什么,即使我设置了 Scope 或 State 下一步是什么?
谢谢。
我在作用域表中添加了一条虚拟记录,并将该值添加到 to 作用域中,它起作用了。
我现在确实了解作用域,只是不知道为什么需要它。
我收到了带有访问 token 的响应。我现在真正理解了 oAuth 的概念。我已经实现了登录/访问 token 系统,但我可能会摆脱它并坚持使用 oAuth。 我试图使用 oAuth 向 REST API 服务验证网站,但它看起来不像那样做。
现在我的下一个问题是:有没有办法将访问 token 添加到 header 而不是作为 URL 参数?
最佳答案
发布 OAuth2 服务器 configuration (如果尚未完成)使用
php artisan config:publish lucadegasperi/oauth2-server-laravel
打开文件 app/config/packages/lucadegasperi/oauth2-server-laravel/oauth2.php
如果您不需要作用域,只需将一个名为 basic 的作用域添加到 oauth_scopes 表。
|--------------------------------------------------------------------------
| Default Scope
|--------------------------------------------------------------------------
|
| The default scope to use if not present in the query string
|
*/
'default_scope' => 'basic',
现在不需要在access_token请求中添加scope参数。
Q2:Is there a way to add the access token to the Header instead as a URL parameter?
是的。默认情况下,它会同时检查查询字符串和 http header 。
将以下选项更改为 true 以在作为查询字符串提供时阻止 access_token 验证
|--------------------------------------------------------------------------
| HTTP Header Only
|--------------------------------------------------------------------------
|
| This will tell the resource server where to check for the access_token.
| By default it checks both the query string and the http headers
|
*/
'http_headers_only' => false,
关于php - Laravel 和 oauth 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23883481/
我有一个Rails2.3.5应用程序,其中包含我希望保护的API。没有用户-它是一个应用到应用风格的网络服务(更像是亚马逊服务而不是facebook),所以我想使用两条腿的OAuth方法来实现它。我一直在尝试使用oauth-plugin服务器实现作为开始:http://github.com/pelle/oauth-plugin...但它的构建需要三足(网络重定向流)oauth。在我深入研究对其进行更改以支持两条腿之前,我想看看是否有更简单的方法,或者是否有人有更好的方法让Rails应用程序实现成为两条腿的OAuth提供程序。 最佳答案
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我来自C、php和bash背景,很容易学习,因为它们都有相同的C结构,我可以将其与我已经知道的联系起来。然后2年前我学了Python并且学得很好,Python对我来说比Ruby更容易学。然后从去年开始,我一直在尝试学习Ruby,然后是Rails,我承认,直到现在我还是学不会,讽刺的是那些打着简单易学的烙印,但是对于我这样一个老练的程序员来说,我只是无法将它
我想用一个(自己的)omniauth提供商来衡量每秒可以登录多少次。我需要了解此omniauth/oauth请求的性能如何,以及此身份验证是否具有可扩展性?到目前为止我得到了什么:defperformance_auth(user_count=10)bm=Benchmark.realtimedouser_count.timesdo|n|forkdoclick_on'Logout'omniauth_config_mock(:provider=>"foo",:uid=>n,:email=>"foo#{n}@example.net")visit"/account/auth/foo/"enden
我正在尝试为使用omniauth-google-oauth2gem创建session编写测试。我是否需要将env["omniauth.auth"]变量与post:create一起传递?也许当我试图这样做时,我做错了。我得到的错误如下所示...Rake测试错误1)Error:SessionsControllerTest#test_should_get_create:NoMethodError:undefinedmethod`provider'fornil:NilClassapp/models/user.rb:6:in`from_omniauth'app/controllers/sessi
我正在使用一些旧代码并使用ActiveResource进行非常基本的Twitter集成。我想尽可能少地接触应用程序代码,并在仍然使用ActiveResource的同时引入OAuth。不幸的是,我找不到简单的方法来做到这一点。我确实遇到了oauth-active-resourcegem,但它并没有完全记录下来,而且它似乎是为创建完整的API包装器库而设计的。您可以想象,我想避免为这一遗留更改创建整个TwitterActiveResourceAPI包装器。有什么成功案例吗?在我的例子中,离开ActiveResource可能比让它工作更快。我很高兴被证明是错误的!
我在使用Twitter进行基本的omniauth身份验证时被封锁了2天。我在简单的omniauth上跟随RyanBates的railscast,但无法通过OAuth::Unauthorized401异常,当我尝试登录时引发。请帮忙!我的代码粘贴在下面:twitterinfo:website:[http://127.0.0.1:3000]callbarckurl:[http://127.0.0.1:3000/auth/twitter/callback]//路线.rbSentimentalist::Application.routes.drawdoresources:dashboard,o
我正在尝试使用YouTubeAPIv3来更新和删除视频与OAuth2forauthentication通过google-api-client(0.6.4)Rubygem。但是,当我尝试执行这两个操作中的任何一个时,我看到以下错误消息:Google::APIClient::ClientError:InsufficientPermission奇怪的是:使用与update和delete完全相同的身份验证过程,我可以insert(上传)成功,没问题!所以,我不认为这是我的身份验证设置的问题,而是我代码中的其他地方。我的读写scope在所有这些操作中始终相同:https://www.google
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我使用PHP的时间太长了,对它感到厌倦了。我也想学习一门新语言。我一直在使用Ruby并且喜欢它。我必须在Rails和Sinatra之间做出选择,那么您会推荐哪一个?Sinatra真的不能用来构建复杂的应用程序,它只能用于简单的应用程序吗?
我很确定Ruby有这些(等同于__call、__get和__set),否则find_by将如何在Rails中工作?也许有人可以举一个简单的例子来说明如何定义与find_by相同的方法?谢谢 最佳答案 简而言之你可以映射__调用带有参数的method_missing调用__设置为方法名称以'='结尾的method_missing调用__获取不带任何参数的method_missing调用__调用PHPclassMethodTest{publicfunction__call($name,$arguments){echo"Callingob
Lisp是否适合Web编程/应用程序(交互式),就像ruby和php一样?需要考虑的事情是:易于使用可部署性难度(尤其是对于编程初学者而言)(编辑)在阅读PaulGraham'sessay之后,我特别提到了CommonLisp.将是我的第一门编程语言。在这方面。这样做合适吗?我听说Clojure的宏功能不如CommonLisp的强大,这就是我尝试学习Clojure的原因。它教授编程并且非常强大。 最佳答案 Lisp是一个语系,而不是单一的语言。为了稍微回答您的问题,是的,存在用于各种Lisp方言的Web框架,例如用于Common