基本上我是 SSO 的新手。我有两个网站www.angularwebsite.com与 .net 核心 Web API 对话。使用 azure ad ,我可以验证自己,并且可以使用授权标头“Bearer”登录www.angularwebsite.com 。到目前为止,这是有效的。我们有另一个网站www.ecommercesite.com使用 SAML 对 Azure 进行身份验证,它也可以正常工作。现在我如何在身份验证后从我的www.angularwebsite.com调用这个www.ecommercesite.com,以便我通过在www.angularwebsite.com上进行身份验证获得的令牌是有效的。基本上我不知道如何/在哪里调用www.ecommercesite.com(以 window.location.href 的角度)或在 .NET API 核心 API CORE 的类中的我的 startup.cs 如下:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseCors("CorsPolicy");
app.UseAuthentication();
app.UseSession();
app.UseMvc();
//How do redirect when I come from angular to www.ecommercesite.com
}
我的 ConfigureService 片段如下:
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, configureOptions: null);
services.AddAuthorization(options =>
{
options.DefaultPolicy =
new AuthorizationPolicyBuilder(JwtBearerDefaults.AuthenticationScheme)
.RequireAuthenticatedUser()
.Build();
});
我所查看的所有引用都指向我已经获得的带有 SPA 和 .Net 核心 API 的 SSO。我找不到**“如果我想导航到另一个网站怎么办”**使用相同的令牌。请指导我到正确的地方,我可以自己尝试。我不知道该怎么做。谢谢你问候,贾加