Tag: openid

无法设置OWIN + OneLogin + Bearer

我正在尝试使用授权令牌来保护我的WebAPI项目。 我不想使用cookie,我只想使用这样的Authorization标头: Authorization: Bearer xxx_access_or_id_token_xxx 。 我正在使用OneLogin OIDC作为外部提供商。 这是我的Startup.cs using Microsoft.Owin; using Microsoft.Owin.Security; using Microsoft.Owin.Security.DataHandler.Encoder; using Microsoft.Owin.Security.Jwt; using Owin; using System.Web.Http; public void Configuration(IAppBuilder app) { var issuer = “https://openid-connect.onelogin.com/oidc/”; var audience = ConfigurationManager.AppSettings[“OneLoginClientId”]; var secret = TextEncodings.Base64.Encode((TextEncodings.Base64Url.Decode(ConfigurationManager.AppSettings[“OneLoginClientSecret”]))); app.UseJwtBearerAuthentication(new JwtBearerAuthenticationOptions { AuthenticationMode = AuthenticationMode.Active, AllowedAudiences = new[] { audience }, IssuerSecurityTokenProviders = new[] { new […]

OpenID Connect – 在WinForms和Web应用程序之间使用IdentityServer进行SSO

我有Thinktecture IdentityServer设置,我有两个可信客户端应用程序,一个WinForms应用程序和一个Web应用程序,我想在它们之间实现SSO。 用户将首先打开桌面应用程序,该应用程序具有通过身份服务器进行身份validation的登录页面。 桌面应用程序将包含一些生成的Web链接,单击这些链接时会打开一个新的浏览器窗口,指向需要身份validation的Web应用程序的安全区域,但是,单击这些链接后,我不希望用户必须再次登录已通过桌面应用程序validation过一次。 我很难看到哪些流程可以实现这一目标。 OpenID connect或Thinktecture IdentityServer提供哪些机制(如果有)可以促进此过程?

身份服务器4令牌未在使用Identity Server 3的.NetFramework Api中validation

在我的身份服务器应用程序中使用idsv4并在端口“5000”上运行有一个客户端 new Client { ClientId = “client”, // no interactive user, use the clientid/secret for authentication AllowedGrantTypes = GrantTypes.ClientCredentials, // secret for authentication ClientSecrets = { new Secret(“secret”.Sha256()) }, // scopes that client has access to AllowedScopes = { “api1” } }` 在我的.Net Framework Api的启动类中使用端口号“7001”: app.UseIdentityServerBearerTokenAuthentication( new IdentityServerBearerTokenAuthenticationOptions { Authority = “http://localhost:5000”, ValidationMode = ValidationMode.ValidationEndpoint, […]

PhoneGap应用程序调用的Secure Web Api

我正在实现一些WebApi来上传/转换/返回video。 另一位开发人员将实施一个PhoneGap应用程序,该应用程序将调用我的WebApi向用户上传/转换/显示video。 PhoneGap应用程序使用OpenId允许用户使用谷歌和Facebook登录。 我的问题是,我想确保调用我的WebApi的客户端已使用谷歌或Facebook登录PhoneGap应用程序。 我知道我需要的只是客户端在请求标头中向我发送一个令牌,我可以在web api上“提取”以validation用户。 我的问题是我的WebApi如何知道PhoneGap应用程序中openId(google / fb)生成的令牌是什么?

处理Identity Server客户端凭据流时在自签名客户端证书中出现问题

我使用MakeCert.exe为我的内部开发目的创建了自签名证书 步骤1 :我使用以下命令创建了根CA. makecert -n “CN=Bala root signing authority” -cy authority -r -sv root.pvk root.cer 步骤2 :使用以下命令安装在步骤#1中创建的根CA证书 certutil -user -addstore Root root.cer 步骤3 :我使用以下命令创建了客户端证书 makecert -pe -n “CN=Bala Client” -a sha1 -cy end ^ -sky signature ^ -ic root.cer -iv root1.pvk ^ -sv Bala.pvk Bala.cer 步骤#4 :我使用以下命令为相应的客户端证书创建了一个.pfx文件 pvk2pfx -pvk Bala.pvk -spc Bala.cer -pfx Bala.pfx 根CA即“CN […]

DotNetOpenId – “此消息已被处理”错误(第2部分)

这已经在这里被问到了,但我没有被提出,OP接受了一个对我没有帮助的答案。 到目前为止,我已尝试从不同的浏览器登录,更改Web配置,清除Cookie以及从外部计算机加载。 事实上,我最终确实发现问题是我自己的机器特有的; 当我发布到另一台机器时,它工作正常。 有关何处寻找解决方案的建议? 我故意使用我能想到的最简单的测试代码,一个干净的空aspx页面和一个简单的Page_Load函数。 编辑 :澄清,像原始问题的作者,我得到一个“此消息已被处理”错误。 使用Response.Write(response.Exception.ToString());将其打印到屏幕上Response.Write(response.Exception.ToString()); 。 我相信这个问题与配置相关,与其他作者不同,因为症状只出现在我的本地方框中。 请注意,症状与我是否在运行代码的同一个框上进行测试无关。 protected void Page_Load(object sender, EventArgs e) { using (OpenIdRelyingParty openid = new OpenIdRelyingParty()) { IAuthenticationResponse response = openid.GetResponse(); if (response != null) { try { Response.Write(response.Exception.ToString()); } catch (Exception) { } return; } } using (OpenIdRelyingParty openid = new OpenIdRelyingParty()) { IAuthenticationRequest request […]

claimsResponse返回Null

您好,我在asp.net中有以下代码。 我使用DotNetOpenAuth.dll for openID。 代码在 protected void openidValidator_ServerValidate(object source, ServerValidateEventArgs args) { // This catches common typos that result in an invalid OpenID Identifier. args.IsValid = Identifier.IsValid(args.Value); } protected void loginButton_Click(object sender, EventArgs e) { if (!this.Page.IsValid) { return; // don’t login if custom validation failed. } try { using (OpenIdRelyingParty openid = this.createRelyingParty()) { […]

DotNetOpenAuth的来源在哪里? 主要Sourceforge链接仅包含示例和ApplicationBlock

既然DNOA可以进行呼叫家庭报告,我想调查源以查看正确传输到DNOA服务器的内容。 Source Forge上的链接仅为我提供了“应用程序块”的一些示例和一个已编译的DLL。 来源在哪里? 我只是俯视它吗?

DotNetOpenAuth和Facebook

我正在尝试使用DotNetOpenAuth进行一些网络单点登录function。 我得到的样本适用于谷歌和雅虎,但我正在与Facebook斗争。 我正在使用CTP(4.0.0.11165),并在此SO问题中遵循了示例。 但是,我在行上遇到运行时错误: IAuthorizationState authorization = client.ProcessUserAuthorization(); 错误是: 无法获取访问令牌。 授权服务器报告原因:(未知) 有任何想法吗?

如何使用Facebook(或其他ID)登录我的asp.net应用程序?

像SO这样的网站如何让您通过Facebook,OpenID,Google,Blogger,Twitter等进行身份validation? 我正在编写一个ASP.NET(C#)站点,除了提供任何其他站点的常规普通用户名/密码之外,我还希望能够接受这样的登录。 我从哪里开始?