Articles of openid

如何在没有Cookie的情况下在SPA中使用第三方authentication服务?

在我的Web应用程序中,恰好是一个SPA(单页应用程序),我有OpenID和OAuth2.0客户端用于使用第三方服务进行用户validation。 即Google(OpenID),Yahoo(OpenID),Windows Live(OAuth2)和Facebook(OAuth2)。 现在,我已经设置了一个令牌端点,用于交换不记名令牌的用户凭证。 这里的目标是通过在SPA的所有请求中设置的授权标头replaceCookie。 为此,我使用OAuth2.0客户端密码身份validation策略和“密码”grant_type根据凭据(oauth2orize + passport-oauth2-client-password)对用户进行身份validation。 我想知道 : 如何使用第三方服务validation的用户继续使用令牌承载validation方法? OAuth2.0规范中有什么处理这种情况? 这种实现的常见做法是什么?

在iOS / Node应用程序中使用google / twitter / linkedInauthentication

我正在尝试为我正在开发的几个应用程序制定出最好的架构。 在这两个应用程序,我想利用谷歌/叽叽喳喳/ LinkedIn /等提供用户身份的身份validation。 该应用程序是由一个iOS应用程序,它可以select发送数据到我在node.js中写入的服务器。 我想利用OAuth或者OpenId来处理识别上面的服务器的用户,这样我就不必把我自己的authentication系统。 换句话说,允许用户在select上传数据时重新使用他们的ID。 我还应该注意到,除了识别用户,获取姓名和电子邮件地址之外,目前我还没有打算使用他们的任何API。 我想我有两个select: 将授权代码放在iOS客户端中,并使用可以validation的数据将某种密钥传输到服务器。 保持iOS客户端相当愚蠢,并处理来自节点服务器的授权。 我可能更喜欢第二个选项,因为这意味着我可以集中身份validation,并能够支持一个网站。 这是我目前的理论。 谁能做这样的事情给我一些关于利弊,OAuth或OpenId的指针,或者链接到一些例子?

Sdk的获取身份validation令牌张贴在facebook / twitter /链接,然后发布使用nodejs

我正在开发一个iOs应用程序,在哪个用户设置他的社会地位,该状态将按计划时间(可以在1,2 …星期后)从cronjob(服务器端在nodejs上)发布。 请build议我有任何sdk为此,使用我可以获得离线权限(authentication令牌[该标记是必需的张贴])。 我知道ShareKit,但它只是分享的东西。 我发现堆栈上有类似的问题 ,但没有答案:

如何在Heroku上使用多个dyno的node-openid?

我正在尝试使用node-openid (通过passport-google )来使用他们的Google凭证对我的用户进行身份validation。 它在我的开发机器上工作正常,但是当我用2个dynos将它部署到Heroku时,它在一个dyno处理整个OpenID对话时起作用,当对话在一个dyno上开始并在第二个时完成时失败。 在这种情况下,我得到以下错误: 2013-01-15T15:18:24+00:00 app[web.2]: Failed to verify assertion (message: Invalid association handle) 2013-01-15T15:18:24+00:00 app[web.2]: at Strategy.authenticate.identifier (/app/node_modules/passport-google/node_modules/passport-openid/lib/passport-openid/strategy.js:143:36) … 什么是正确的方式来处理这个? 我应该将会话状态保存在数据库中,以便两个dynos都可以访问它吗? 更新: 这里是我用来解决问题的代码,通过在MongoDB中存储关联。 var GoogleStrategy = require('passport-google').Strategy; // We have to save the OpenID state in the database so it's available to both // dynos. db.collection('OpenID').ensureIndex({expires: 1}, {expireAfterSeconds: 0}, function(err, result) { if […]

使用express-jwt作为中间件来validationAzure AD颁发的令牌

我想知道是否可以使用express-jwt NPM包作为中间件来validation由Azure AD发布的JWT令牌。 我们有一个以express / node编写的web API,并希望应用中间件模式来保护我们的端点并填充用户原则。 似乎: server.use(jwt({ audience: '{UUID}', issuer: 'https://sts.windows.net/{UUID}', }).unless({path : ['/']})) 因为它需要一个客户端秘密,但是从AD(就像在隐式stream程中那样),令牌是通过用户交互来检索的,并且没有客户端秘密。

node.js OpenID提供者实现

有没有人知道在node.js良好的OpenID提供者实现? 也许节点模块? 我正在使用passportjs来实现中继function。

是否有OpenID使用者的node.js实现?

在node.js中寻找一个OpenID使用者 这不是在这个名单http://openid.net/developers/libraries/ 有一个吗?