Tag: oauth 2.0

Slack Oauth /授权API调用

我是OAuth(和Slack API)的新手,对Slack的OAuth Flow的步骤1有疑问。 它说:“您的networking或移动应用程序应该redirect用户到以下url: https : //slack.com/oauth/authorize ”。 起初我以为我应该做一个XHR请求,但后来明白,这不是我想要的。 经过更多的研究,我发现最初的oauth / authorize请求应该作为浏览器中的直接请求发送。 我的问题是我不能开始想象这应该如何完成。 我一直在引用本教程的部分内容(向下滚动到“Web服务器应用程序”部分),但是这并不能帮助我将自己的头围绕oauth / authorize请求。 所以基本上,我正在寻找一个人来更好地向我解释这个初步申请应该怎么做。 任何和所有的帮助,非常感谢! 提前致谢

OAuth2从数据库中删除令牌

我正在尝试为支持移动,桌面和networking应用的REST API实现OAuth2。 我已阅读第6章。刷新 Hardt,D.,Ed。,“OAuth 2.0授权框架”,RFC 6749,DOI 10.17487 / RFC6749,2012年10月 的访问令牌 根据RFC,访问令牌和刷新令牌保存到数据库,我正在使用MySQL。 我的问题是我应该在哪一点/ OAuth2的活动中删除所有过期的访问令牌和刷新令牌。 我应该为此运行cron作业吗?

无法在loopback上实现ouath2

我想要实现一个使用loopback的oauth2服务器。 我以前做过使用快递,它完美的作品,但使用回送我有一些问题。 这里是oauth2orize的代码:var app = require('../../ server / server'); //在任何node.js应用程序中都需要server.js var User = app.models.user; var Client = app.models.client; var Token = app.models.token; var Code = app.models.code; var server = oauth2orize.createServer(); // Register serialialization function server.serializeClient(function(client, callback) { return callback(null, client._id); }); // Register deserialization function server.deserializeClient(function(id, callback) { Client.findOne({ _id: id }, function (err, client) […]

OAuth 2.0令牌处理。 有没有服务器令牌和客户端令牌?

理解oauth 2.0令牌的原理处理有一个问题。 我的情况是,我有一个基于Web的前端后端系统,使用node.js和angular 2.用户应该可以在本站点上传video。 然后创build一些额外的元数据(对于这个问题不重要)。 完成后,用户可以通过点击button将video上传到YouTube。 我的问题是在这个过程中,曼尼代币/凭证是如何存在的。 youtube api需要一个oauth标记。 剂量用户也有自己的令牌? 这里是我使用的教程: https : //ionicabizau.net/blog/14-uploading-videos-to-youtube-using-nodejs 正如你可以看到api的一个标记是为了本地testing而创build的。 但是这个令牌在现场版本中以不同的方式生成? 以及我的网站的用户如何被识别。 也通过这个令牌? 还是必须为他生成第二个令牌? 这是我的第一篇文章,如果缺less事情来澄清我的问题。 感谢可能的awnsers,解释和解决scheme。

护照 – azure色广告,令牌validation

这个问题与passport-azure-ad有关,是否parsing和validation令牌? 我试图掌握使用护照 – azure色广告模块。 我用OpenID Connect成功login我的用户,拿起access_token并直接使用我的REST API,通过app.get('myapi',passport.authenticate('oath-bearer', {failureRedirect: '/'}), function(req,res){}); 但是,如果我尝试从由OpenID连接创build的会话注销,令牌仍然有效,直到它过期(通常3600秒)。 我正在使用access_token来保护我的端点不在Microsoft的API网关后面,所以我想撤销access_token并不是直截了当的。 有没有什么办法可以检查access_token是否使用passport-azure-ad被吊销? 最佳做法是什么?

OAuth中的CORS:对预检请求的响应不会通过访问控制检查

所以我试图实现OAuth 2stream,而我的web应用程序是放弃授权代码/访问令牌的服务器。 将代码发送回第三方网站(在这种情况下为zapier)时发生Cors错误: XMLHttpRequest无法加载https://zapier.com/dashboard/auth/oauth/return/App505CLIAPI/?code=somecode&state=somestate 。 对预检请求的响应不会通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。 原因' https:// myurl '因此不被允许访问。 如果我手动打开一个新标签,粘贴该zapier uri,一切正常完美。 看起来像一个典型的CORS问题,但没有stream行的解决scheme为我工作: 添加Access-Control-Allow-Origin :我正在使用这个oauth2orize库,并且发送reponse来进行预检似乎也是库的一部分。 所以我不能添加标题。 使用cors :已经尝试app.use(cors())和app.options('*', cors())应该适用于所有路线,但根本不工作。 我的web应用程序坐在一个节点快递服务器上,前面有一个nginx代理服务器。 任何想法的问题可能会被赞赏。

Passportjs BearerStrategy与OAuth2Strategy

我正在尝试使用passportjs来进行身份validation的oauth2客户端。 在Passportjs中有2个策略突出,BearerStrategy和OAuth2Strategy。 有什么不同?

如何使用Asana节点客户端处理OAuth access_token的过期?

使用Asana的NodeJS模块( https://github.com/Asana/node-asana )与OAuth,我应该如何处理access_token的到期? 客户是否提供了一些我应该用来检测的机制? 它是否提供了我应该使用refresh_token获取新的access_token的内容? 在文档中我一直没有find关于refresh_token的任何讨论。 我注册了我的应用程序,并且能够使用Client.app.accessTokenFromCode API成功获取凭证。 像这样的东西: function handleOauthCallback(req, res) { var client = Asana.Client.create({ clientId: CLIENT_ID, clientSecret: CLIENT_SECRET, redirectUri: computeRedirectUrl(req) }); client.app.accessTokenFromCode(req.query.code).then(function(credentials) { // store credentials } } 我正在存储从此调用返回的整个凭证对象,然后使用这些凭证创build客户端。 像这样的东西: var client = Asana.Client.create({ clientId: CLIENT_ID, clientSecret: CLIENT_SECRET, redirectUri: computeRedirectUrl(req) }); var storedCredentials = getStoredCredentials(); client.useOauth({ credentials : storedCredentials }); 现在我已经有了一个用Asana(包括一个access_token和refresh_token)取回的凭证初始化的客户端,我应该如何处理access_token的过期? 我是否需要检查自己是否仍然有效,并使用刷新标记请求新标记? […]

Passport.jslogin事件function没有被调用

我用护照快递使用以下代码: var GAuth = require('passport-google-oauth'); passport.use('google', new GAuth.OAuth2Strategy({ clientID: GID, clientSecret: GSECRET, callbackURL: "http://localhost:3000/auth/google/callback" }, function(accessToken, refreshToken, profile, done){ // not running console.log('callback'); console.log('id: ', profile.id); })); router.get('/google', passport.authenticate('google', { scope: [ 'email', 'profile' ] })); router.get('/google/callback', function(req, res) { // this runs res.send('Logged in through Google!'); }); 即使login似乎在外面工作正常,因为我去到谷歌的权限页面,然后被定向到callback页面。 我不能得到callback函数运行,所以我做错了什么?

我的chome扩展和服务器之间的身份validation策略

我正在构buildGoogle Chrome浏览器扩展程序,并且对如何在应用程序中实施安全性有一些疑问。 我需要访问几个Google API,因此我们将使用OAuth 2.0。 所以基本上从扩展我知道哪个用户login到浏览器。 我的扩展然后需要获取并发布数据到我的(nodejs)API服务。 我想确保请求数据的用户是login到浏览器的用户。 是否有任何方式使用以前的Google身份validation过程来validation扩展和我的API之间的通信? 我真的不希望用户必须再次login,才能访问我的API。 我确信我错过了一些简单的东西,而且我还没有find适合这种情况的东西