标签: openid

Facebook是OpenID提供商吗?

Facebook是OpenID提供商吗?我知道他们是OpenID的支持者,但他们是否允许人们通过他们的Facebook凭证通过OpenID与其他网站进行身份验证?

openid authentication facebook openid-provider

80
推荐指数
3
解决办法
5万
查看次数

使用JavaScript/jQuery更改表单的操作

我有一个让我发疯的问题.我正在尝试修改openid-selector以支持facebook.我正在使用RPXNow作为我的提供者,因此它要求将表单提交给与标准不同的URL.

例如.RpxNow要求我像这样设置我的表单:

<form action="https://wikipediamaze.rpxnow.com/openid/start?token_url=...">

这适用于除Facebook和Myspace之外的所有提供商.那些需要将表单发布到不同的URL,如下所示:

<form action="https://wikipediamaze.rpxnow.com/facebook/start?token_url=...">

<form action="https://wikipediamaze.rpxnow.com/myspace/start?token_url=...">

open id选择器在表单上有一堆按钮,每个按钮代表openid提供程序.我要做的是检测点击Facebook或Myspace按钮的时间,并在提交前更改表单上的操作.然而,它不起作用.这是我的代码.

我尝试了几种具有相同"不支持"异常的变体

$("#openid_form").attr("action", form_url)
document.forms[0].action = form_url
Run Code Online (Sandbox Code Playgroud)

有什么建议?

更新

以下是有关代码的更多详细信息.为简洁起见,我省略了一些.我唯一做的是将Facebook部分添加到"providers_large"对象(成功地将徽标添加到网站),而不是提供识别用户的URL,我正在创建一个名为"form_url"的属性,是我想要设置我的表单的动作.如果您查看标题"提供者图像点击",您将看到我在哪里检查属性"form_url"的存在,并使用jQuery更改操作并提交表单.但是,当我在调试模式中单步执行JavaScript时,它告诉我这是一个无效的操作.

var providers_large = {
    google: {
        name: 'Google',
        url: 'https://www.google.com/accounts/o8/id'
    },
    facebook: {
        name: 'Facebook',
        form_url: 'http://wikipediamaze.rpxnow.com/facebook/start?token_url=http://www.wikipediamaze.com/Accounts/Logon'
    },

};
var providers_small = {
    myopenid: {
        name: 'MyOpenID',
        label: 'Enter your MyOpenID username.',
        url: 'http://{username}.myopenid.com/'
    },
    livejournal: {
        name: 'LiveJournal',
        label: 'Enter your Livejournal username.',
        url: 'http://{username}.livejournal.com/'
    },
    flickr: {
        name: 'Flickr',        
        label: 'Enter your Flickr username.',
        url: 'http://flickr.com/{username}/'
    }, …
Run Code Online (Sandbox Code Playgroud)

openid jquery openid-selector

62
推荐指数
3
解决办法
20万
查看次数

如何在Jenkins中创建用户并将其添加到组中进行身份验证?

我选择使用"Jenkins自己的用户数据库"安全领域进行用户登录,因为我无法在公司中使用LDAP.当您决定将主机名或端口号更改为其他内容时,Google的OpenID会出现问题.

我使用"基于项目的矩阵授权策略"架构来保护我的安全.

但我似乎无法创建自己的组,并将用户添加到组以管理权限.

security openid hudson ldap jenkins

59
推荐指数
3
解决办法
10万
查看次数

有什么理由不使用OpenID?

关于OpenID,你看到了一点(在Geek社区中).这似乎是一个好主意.我正在开发一个网站,针对的是一些不那么讨厌的观众(但也不是妈妈和流行音乐节目),所以我不得不怀疑OpenID对某些观众来说是否"太难"了.

你怎么看?除此之外,还有其他技术或非技术原因不使用OpenID吗?

security openid web-applications

58
推荐指数
7
解决办法
9135
查看次数

安全地存储OpenID标识符和OAuth令牌

我正在创建一个Web应用程序,它将使用OpenID登录和OAout令牌与Youtube.我目前正在数据库中以纯文本格式存储OpenID标识和OAuth令牌/令牌密钥.

将这些值存储为纯文本是否不合适?我可以对OpenID标识符使用单向加密,但我不知道是否有必要.对于OAuth令牌,我需要使用双向加密,因为我的应用程序依赖于获取某些用途的会话令牌.

是否有必要加密OpenID身份?有人可以使用它来访问用户的帐户吗?

database security openid encryption oauth

58
推荐指数
3
解决办法
2万
查看次数

如何在我的网站上实施"使用谷歌登录"?

在我的网站上,我想允许用户使用Google帐户登录.我打算使用openid,但我想允许使用google登录,因为它有更多好处.我曾经注意到一些网站能够使用google(gmail)帐户和IIRC登录,虽然他们不支持openID(但我可能错了).

如何实施"使用谷歌登录"?

openid gmail login cross-domain google-oauth

57
推荐指数
4
解决办法
9万
查看次数

IdentityServer流程

IdentityServer支持在Flows枚举中定义并为客户端设置的不同OpenId Connect流.还有每种类型的流量,并在文档给他们很多的参考样本,但我找不到什么流是一个简单的定义列表的文件,如果他们是太明显言传.但我想他们不是.您能告诉我们这些差异的更多信息,也许我们可以将其添加到文档中吗?

那么什么是:隐式流,资源所有者密码凭证流,授权代码流,客户端凭证流,自定义授权流和混合流?还有哪些是OAuth流,哪些是OpenID Connect流?

谢谢!

openid oauth-2.0 thinktecture-ident-server openid-connect identityserver3

54
推荐指数
4
解决办法
3万
查看次数

在网站上使用ONID OpenID身份验证有什么好处?

根据我使用OpenID的经验,我看到了一些重要的缺点:

向站点添加单点故障
即使检测到,也不是站点可以修复的故障.如果OpenID提供商停机三天,该网站有哪些追索权允许其用户登录并访问他们拥有的信息?

将用户带到其他站点内容以及每次登录到您的站点时
即使OpenID提供程序没有错误,也会将用户重定向到其站点进行登录.登录页面包含内容和链接.因此,实际上有可能将用户从网站上拉下来,从而进入互联网兔子洞.

为什么我要将用户发送到其他公司的网站?
[注意:我的提供商不再这样做,似乎已解决了这个问题(目前).]

为注册添加非常重要的时间要注册
网站,新用户必须阅读新标准,选择提供商并注册.标准是技术人员应该同意的,以使用户体验无摩擦.它们不是应该吸引用户的东西.

这是一个网络钓鱼者的梦想
OpenID是非常不安全的,并且当他们登录时很容易窃取该人的ID.[取自David Arno的答案 ]


对于所有的缺点,一个好处是允许用户在互联网上登录更少.如果某个网站已选择加入OpenID,则需要该功能的用户可以使用该功能.

我想了解的是:
网站对OpenID 强制要求有什么好处?

openid

51
推荐指数
5
解决办法
3574
查看次数

适用于ASP.NET MVC应用程序的最佳OpenId API

我正在开发一个ASP.NET MVC应用程序,我想使用OpenId.

什么是最好的选择?

  • DotNetOpenId
  • RPX
  • 其他???

有谁知道StackOverflow使用什么?Login UI是自定义开发的,还是由API /服务提供的?

openid asp.net-mvc

46
推荐指数
2
解决办法
7498
查看次数

REST Web服务的身份验证

我开始设计REST Web服务,并且不清楚最佳的身份验证方法.该服务将允许个人用户访问/管理他们自己的数据,因此需要某种类型的用户身份验证.我一直在看这些选项:

  • OAuth的

OAuth似乎更多的是授权而不是身份验证.我计划在服务中本地处理授权,所以我不是在寻找解决方案.但是,OAuth是否也适用于身份验证?

  • OpenID的

OpenID当然提供了身份验证的解决方案,但这更适合允许用户使用他们的第三方凭据(谷歌,雅虎等)虽然我想支持这一点,但这不是我主要关注的问题,我会绝对允许用户使用本机凭据(电子邮件/密码)注册.

  • HTTP基本身份验证

这很容易实现,但我的理解是,这可能不是一个非常安全的方法.此外,似乎需要为每次访问交换凭据,但我更希望用户进行一次身份验证,然后通过会话令牌继续访问.

  • 自定义验证

基本上,滚动我自己的登录/令牌生成服务,并需要一个有效的令牌来访问所有其他资源(显然,一切都将通过SSL).


除了创建Web服务之外,我还将构建一个代表用户使用这些服务的客户端(Web)应用程序,但我不希望应用程序必须存储用户信息/凭据等.所以,像这样:

用户(使用电子邮件/密码或第三方凭据进行身份验证) - > Web应用程序(使用应用程序ID进行身份验证) - > Web服务

而且,我想让其他人也建立客户端,所以中间层可以是任何第三方应用程序:

用户(使用电子邮件/密码或第三方凭据进行身份验证) - >第三方应用程序(使用应用程序ID进行身份验证) - > Web服务

我的顶级要求是:

  • 安全(显然)
  • 本机凭据
  • 支持第三方凭据(谷歌,雅虎,LinkedIn等)
  • 支持多个客户端(Web应用程序,移动应用程序,第三方应用程序等)
  • 客户端凭据(只是应用程序ID?)
  • 到期的登录会话
  • 不需要授权

所以,我的问题是,基于上述情况(如果这太模糊,请告诉我),是否有"最佳"方法?OAuth或OpenID是否合适,或者我是否过于复杂,而应该只使用自己的身份验证?

编辑:

我想我需要实现以下内容:

1)原生凭证/令牌(通过SSL进行HTTP基本身份验证?)

2)OpenID"依赖方"允许我的api使用其他地方托管的OpenID(即"支持第三方凭证")

3)OAuth"Consumer"允许我的api访问第三方服务(比如访问用户的LinkedIn个人资料).

4)一个OpenID"提供者",允许人们在别处使用api的本地ID(可选)

5)OAuth"提供商"允许第三方应用代表用户访问我的API(可选)

这看起来是对的,还是我让它变得比它需要的更复杂?

openid authentication rest web-services oauth

43
推荐指数
4
解决办法
5万
查看次数