如何获得已经发布的 SAML 断言?
How to get an already issued SAML assertion?
我有一个场景,我有一个 ASP.Net 应用程序使用 Thinktecture IdentityServer 进行身份验证。这一切都很好,它与我们的 ADFS 有关系,一切都很好。我需要的是调用 ShareFile-NET SDK 并使用下面的示例代码进行身份验证..
//SAML Authentication: This authentication support assumes you have a mechanism for obtaining a SAML assertion, samlAssertion from the user's IdP.
var sfClient = new ShareFileClient("https://secure.sf-api.com/sf/v3/");
var oauthService = new OAuthService(sfClient, "[clientid]", "[clientSecret]");
var oauthToken = await oauthService.ExchangeSamlAssertionAsync(samlAssertion,
subdomain, applicationControlPlane);
sfClient.AddOAuthCredentials(oauthToken);
sfClient.BaseUri = oauthToken.GetUri();
所以我有 IdP,但我没有运气研究如何使用它提供给我的令牌来创建 "samlAssertion" 参数..
我找到了答案。
可以在 ClaimsIdentity 中找到 SAML 断言
var icp = System.Security.Claims.ClaimsPrincipal.Current;
var claimsIdentity = icp.Identity as System.Security.Claims.ClaimsIdentity;
var token = claimsIdentity.BootstrapContext as System.IdentityModel.Tokens.BootstrapContext;
要填充此内容,您需要将以下内容添加到 web.config:
<identityConfiguration saveBootstrapContext="true">
我有一个场景,我有一个 ASP.Net 应用程序使用 Thinktecture IdentityServer 进行身份验证。这一切都很好,它与我们的 ADFS 有关系,一切都很好。我需要的是调用 ShareFile-NET SDK 并使用下面的示例代码进行身份验证..
//SAML Authentication: This authentication support assumes you have a mechanism for obtaining a SAML assertion, samlAssertion from the user's IdP.
var sfClient = new ShareFileClient("https://secure.sf-api.com/sf/v3/");
var oauthService = new OAuthService(sfClient, "[clientid]", "[clientSecret]");
var oauthToken = await oauthService.ExchangeSamlAssertionAsync(samlAssertion,
subdomain, applicationControlPlane);
sfClient.AddOAuthCredentials(oauthToken);
sfClient.BaseUri = oauthToken.GetUri();
所以我有 IdP,但我没有运气研究如何使用它提供给我的令牌来创建 "samlAssertion" 参数..
我找到了答案。
可以在 ClaimsIdentity 中找到 SAML 断言
var icp = System.Security.Claims.ClaimsPrincipal.Current;
var claimsIdentity = icp.Identity as System.Security.Claims.ClaimsIdentity;
var token = claimsIdentity.BootstrapContext as System.IdentityModel.Tokens.BootstrapContext;
要填充此内容,您需要将以下内容添加到 web.config:
<identityConfiguration saveBootstrapContext="true">