我正在使用.Net Core + Kestral +反向代理与Linux上的Apache一起开发MultiTennat SaaS应用程序。
我的应用程序将在多个端口上启动:
http://localhost:50001
http://localhost:50002
...
http://localhost:5000(n)
每个端口,如上所示,将链接到一个完全合格的域名,该域名将由其他客户访问。
http://localhost:50001 <--> www.customer1.com
http://localhost:50002 <--> www.customer2.com
...
http://localhost:5000(n) <--> www.customer(n).com
现在,当采用这种方法时,我遇到了JWT Bearer令牌身份验证的问题,它仅为第一个域http://localhost:50001配置令牌验证参数,而对于其余的域,则将401设置为Issuer,Audience和对于kestral上的其余端口,密钥是不同的。
我想为每个端口使用不同的发行者,受众和秘密密钥。 即
以下是我的租户JWT配置文件:
{
"Issuer": "http://localhost:50001",
"Audience": "http://localhost:50001",
"SecretKey": "SecretKeyFor5001"
},
{
"Issuer": "http://localhost:50002",
"Audience": "http://localhost:50002",
"SecretKey": "SecretKeyFor5002"
}