- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将自定义参数传递给 angular oidc-client 中登录页面 IdentityServer 4 中使用的 returnURL。
根据我从 returnURL 收到的参数,我想绕过登录网站并将它们重定向到 IDP。我打算从角度将参数添加到特定页面,然后我想从那里重定向到登录。
下面的链接讨论了它们,但我无法理解。你们能帮忙吗?提前致谢。
Pass custom parameter to returnUrl used in login page Identity Server 4
https://github.com/IdentityServer/IdentityServer4/issues/909
C# AccountController.cs
public async Task<IActionResult> Login(string returnUrl)
{
ViewBag.ReturnUrl = returnUrl;
var context = await _interaction.GetAuthorizationContextAsync(returnUrl);
var vm = await _account.BuildLoginViewModelAsync(returnUrl);
if (vm.IsExternalLoginOnly)
return ExternalLogin(vm.ExternalProviders.First().AuthenticationScheme, returnUrl);
return View(vm);
}
角度 auth.service.ts
const settings: any = {
authority: environment.oauthUrl,
client_id: 'website',
redirect_uri: `${environment.applicationUrl}/auth.html`,
post_logout_redirect_uri: `${environment.applicationUrl}`,
response_type: 'id_token token',
scope: 'openid profile email profile nucleus',
silent_redirect_uri: `${environment.applicationUrl}/silent-renew.html`,
automaticSilentRenew: true,
monitorSession: true,
checkSessionInterval: 2000,
revokeAccessTokenOnSignout: true,
filterProtocolClaims: true,
loadUserInfo: true,
changePasswordUrl: `${environment.oauthUrl}/Manage/ChangePassword?returnUrl=${environment.applicationUrl}`
};
我期望来自 returnurl 的参数,并在 AccountController.cs 的登录方法中添加这样的条件。
if (vm.IsExternalLoginOnly || returnUrl.Contains("customparameter"))
最佳答案
如果有人正在寻找答案。我添加了路由,以便我可以从角度应用程序获取 clientid。
应用程序路由.ts
{ path: 'client/:id', component:ClientComponent }
在client.component.ts中
constructor(private authService: AuthService,private route: ActivatedRoute) { }
ngOnInit() {
const clientId=this.route.snapshot.params.id;
if(clientId!=null) {
this.authService.startSigninClient(clientId);
}
}
在 auth.service.ts 中
startSigninClient(clientid: string) {
this.mgr.signinRedirect({
extraQueryParams: {
client: clientid
},
})
.catch((err) => {
console.log(err);
});
}
现在,当我打开 angular_app/client/clientid 时,它会重定向到 client.component.ts 并且我正在调用 signinredirect,我在其中添加 extraQueryParams,它正在获取值并将 redirect_url 从客户端 oidc 发送到 dotnet 授权端点( accountcontroller.cs 在我的例子中)基于它我正在做我需要的逻辑来处理不同的客户端登录和 idps。
关于angular7 - 将自定义参数从角度 oidc-client 传递给 returnurl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58279608/
我正在开发“ASP.NET MVC 4”应用程序。我正在使用/学习 SimpleMembershipProvider 并尝试坚持 VS2012 使用 Internet 模板 创建的默认逻辑(如果我没记
我在 web.config 中使用 Forms 身份验证,当我将我的页面重定向到某些特定页面时,returnUrl 会自动附加并且系统重定向到登录页面。无论用户是否登录,都应打开这些特定页面。 当我在
我想使用多次参数“returnUrl”来检索 url 中的一些参数。 示例: HTTPS://force.com?positionId=a0w0X000007HjBuQAK&lang=fr&media
我已经实现了我的登录页面并且它工作正常,但我无法从包含原始请求 URL 的 ReturnUrl 查询字符串参数中读取。 例如,从该页面成功登录时: http://whatever/Login.aspx
我已经实现了我的登录页面并且它工作正常,但我无法从包含原始请求 URL 的 ReturnUrl 查询字符串参数中读取。 例如,从该页面成功登录时: http://whatever/Login.aspx
我正在尝试使用 AdaptivePayments 通过我的网站将资金从一个用户发送到另一个用户,这样我就可以检查他们是否真的完成了付款。付款成功,但它们没有返回到我的网站,所以我无法跟踪付款。 我正在
我正在尝试使用 PayPal PHP SDK 将 paypal 整合到我的网站中。一切似乎都在工作,除了在成功或失败之后返回的 url 既不包括我定义的参数也不包括 paypal 返回的参数,例如 p
总结:我想使用 returnUrl 作为交易已被 PayPal 接受的证明。 我正在实现一个基于 PayPal 的非常基本的购买工作流程。 一切正常,用户点击支付,用户转到 PayPal,PayPal
我对在用户登录的页面上使用 paypal 有疑问 是用php 如果 paypal 重定向回该页面,您如何才能让用户仍然有权访问该页面。 我读到一些关于使用 PDT 将 session_id 赋予自定义
如何在 returnUrl 中指示页面上的位置? returnUrl= HttpContext.Current.Request.RawUrl 最佳答案 您可以在 url 中包含某种类型的标签,然后
大家好,我在 main.php 配置文件中有这段代码: 'components' => array( '[.........]', 'user'=>array( //
我们正在构建一个使用 ACS 的应用程序。我们的使用场景如下: 用户通过电子邮件收到类似 https://our.application.com/?requestId=123456 的网址并点击它 用
当用户单击我的站点中需要身份验证的链接时,浏览器将重定向到登录页面。登录页面包含一个 returnUrl 查询字符串参数。问题是,如果用户使用 OpenID 进行身份验证,提供程序会将用户重定向回登录
我有一个域 http://abc.com和一个子域 http://sub.abc.com .我正在通过共享表单例份验证 cookie 在两个站点之间实现单点登录。这是通过让两个站点共享 machine
我正在通过 returnUrl = Request.Url对于 Controller 操作,问题是当我在重定向之前使用以下代码检查它时,由于 IsLocalUrl() 而失败。称呼。为什么? if (
我正在使用 ASP.NET 成员资格和表单例份验证,在重定向到 returnURL 之前我想验证它。对于那些不熟悉工作流程的人来说,基本上如果您请求一个需要您进行身份验证的页面,您将被重定向到登录页面
我已经使用 Visual Studio 使用 servicestack 实现了一个网络服务。从 vs 调试器运行服务工作得很好。我刚刚尝试使用 XSP4 将它部署到 debian 机器上。该服务使用日
我有一个使用 AngularJS 的 SPA。我刚刚添加了安全/身份验证,除了 returnUrl 登录后重定向外,一切似乎都运行良好。存在于查询字符串中。 我的应用程序中有代码,如果没有用户通过身份
这可能是一个简单的问题,但我正在努力处理查询字符串中的 returnurl。我知道如何将查询字符串中的 returnurl 调用到 Response.Redirect 但我不确定如何将 returnu
我将返回网址作为查询字符串参数发送,如下所示 http://localhost:50316/TripNestFinal/Login.aspx?ReturnUrl=~/Account/AccountSe
我是一名优秀的程序员,十分优秀!