Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 如何在登录identity server4后更改重定向uri_Asp.net Core_Identityserver4 - Fatal编程技术网

Asp.net core 如何在登录identity server4后更改重定向uri

Asp.net core 如何在登录identity server4后更改重定向uri,asp.net-core,identityserver4,Asp.net Core,Identityserver4,我在localhost IIS上部署了一个.net核心应用程序,它在两个端口和localhost:8011上运行,在localhost:5000上运行一个identity server4应用程序。考虑一下,如果我试图在身份验证服务器4登录方法中对给定凭据进行身份验证,我想将重定向URL改为。登录后无法更改identity server4的重定向URL,因此如何实现这一点 IdentityServer4不控制用户登录后的默认url,但在其Quickstart UI示例中提供了示例 在示例中,如果未

我在localhost IIS上部署了一个.net核心应用程序,它在两个端口和localhost:8011上运行,在localhost:5000上运行一个identity server4应用程序。考虑一下,如果我试图在身份验证服务器4登录方法中对给定凭据进行身份验证,我想将重定向URL改为。登录后无法更改identity server4的重定向URL,因此如何实现这一点

IdentityServer4不控制用户登录后的默认url,但在其Quickstart UI示例中提供了示例

在示例中,如果未指定returnurl,则默认情况下将返回到IS4主页


成功登录后,您可以修改它以重定向到您的应用程序

很抱歉误解了您的问题。
我确实找到了一个可能对您的问题有帮助的设置,但它是在呼叫服务器上完成的,而不是在IS4服务器上。
在服务器上配置openidconnect时,可以在将请求发送到IS4服务器之前配置一些设置。
这是在OnRedirectToIdentityProvider事件上完成的。在那里,您可以将重定向uri更改为在IS4上配置客户端时拥有的任何uri

范例

options.Events.OnRedirectToIdentityProvider = context =>
                    {

                        context.ProtocolMessage.RedirectUri = "https://localhost:5006/signin-oidc";
                        return Task.CompletedTask;
                    };

我认为appsettins.json就是这个地方。对象为AzureAd,uri为signin Oidcy您的意思是我应该修改登录方法以重定向到我的应用程序,而不是更改重定向url重定向url当您从应用程序触发登录流时使用重定向url,当您触发登录流时,它将根据应用程序中的初始位置重定向。如果您的登录流不是从应用程序启动,而是从IS4登录页面启动,默认情况下,示例实现将重定向到IS4主页。显然,登录流是从我的应用程序触发的,然后它会将我带到标识登录页面,成功登录后,它会重定向到初始重定向URL。现在的问题是,我想更改初始URL??怎么可能呢