IdentityServer客户端重定向URL是否允许使用通配符

时间:2017-05-04 20:29:03

标签: client identityserver4

我正在编写自己的测试IdentityServer,但我遇到了麻烦。必须为每个基于浏览器的客户端指定ClientUri和RedirectUris。我知道这些可以存储在数据库中,但有没有办法在这里插入通配符?

我们的每个客户都会收到他们自己的子域名,我希望通过允许所有试图访问我们在* .ourcompany.com上的任何应用程序的浏览器被视为身份服务器中的同一客户端来简化用户管理。这可能。

2 个答案:

答案 0 :(得分:3)

您可以实现自己的重定向URI验证程序。但出于安全考虑,建议不要这样做,因为它会扩大攻击面。

  1. Redirect Uri Validator Interface
  2. How to register your custom validator
  3. Discussion about redirect uri

  4. Identity Server4

    我认为您可以在启动时添加AddCustomAuthorizeRequestValidator。不过,建议不要修改重定向URI验证。

    1. Add Custom services
    2. Related Discussion

答案 1 :(得分:0)

对于IdentityServer4,您可以实现自己的IRedirectUriValidator并使用 Startup.cs 中的AddRedirectUriValidator扩展方法进行注册。

services.AddIdentityServer(options =>
    {
        // ...
    })
    .AddRedirectUriValidator<CustomRedirectUriValidator>();

默认情况下,StrictRedirectUriValidator已注册,但可以通过调用.AddRedirectUriValidator来覆盖,如上所示。