我有一個使用隱式流與身份服務器4進行身份驗證的應用程序。該應用程序分爲兩個獨立的.net核心應用程序。一個應用程序處理服務於前端的後端和其他手柄。在客戶端之間共享訪問令牌
後端和前端共享相同的作用域,API名稱和權限設置。
我將與第三方進行整合。我們的後端應用程序將調用第三方應用程序。我們需要確保對第三方應用程序的呼叫進行身份驗證。我想共享後端應用程序從前端接收到的訪問令牌並將其發送給第三方應用程序。我不太確定這樣做所需的設置。
我以爲我可以添加一個新的客戶端到身份服務器,並設置它只有第三方所需的所需範圍。但在我的本地測試中,我一直無法得到這個工作。我得到一個錯誤IDX10804無法從... /。獲取配置。well-known/openid-configuration - 發生安全錯誤。
我的配置是這樣的:
new Client
{
ClientId = "thirdPartyClient",
ClientName = "thirdPartyClient",
AllowedGrantTypes = GrantTypes.HybridAndClientCredentials,
ClientSecrets =
{
new Secret("secret".Sha256())
},
AllowedScopes =
{
IdentityServerConstants.StandardScopes.OpenId,
IdentityServerConstants.StandardScopes.Profile,
IdentityServerConstants.StandardScopes.Email
},
AllowOfflineAccess = true,
AllowAccessTokensViaBrowser = true,
RequireConsent = false
},
new Client
{
ClientId = "myapplication",
ClientName = "myapplication",
AllowedGrantTypes = GrantTypes.Implicit,
ClientSecrets =
{
new Secret("secret".Sha256())
},
RedirectUris = { "https://.../callback.html" },
PostLogoutRedirectUris = { "https://.../index.html"
AllowedCorsOrigins = { "https://..." },
AllowedScopes =
{
IdentityServerConstants.StandardScopes.OpenId,
IdentityServerConstants.StandardScopes.Profile,
IdentityServerConstants.StandardScopes.Email,
IdentityServerConstants.StandardScopes.Address,
"myscope",
},
AllowOfflineAccess = true,
AllowAccessTokensViaBrowser = true,
RequireConsent = false
}
我要對這個正確的方式?
這是什麼狀態? – MJK