Как выполнить аутентификацию с использованием SAML из веб-проекта. Net Core 3.1 в Sharefile? - PullRequest
0 голосов
/ 09 марта 2020

Я пытаюсь установить соединение с API Sharefile из Net Core 3.1 веб-проекта.

У меня есть настройка проекта как windows база аутентификации, потому что она внутренняя. Я хочу каким-то образом получить правильное подтверждение SAML от User / ClaimsIdentity, но я не уверен, как.

Я просто не знаю, КАК получить подтверждение SAML от объекта User. Это вообще возможно?

Пока у меня есть этот код:

    [Authorize]
public class IndexModel : PageModel
{
    private readonly ILogger<IndexModel> _logger;

    public IndexModel(ILogger<IndexModel> logger)
    {
        _logger = logger;
    }

    public void OnGet()
    {
        var icp = User;

        var claimsIdentity = icp.Identity as System.Security.Claims.ClaimsIdentity;


        var sfClient = new ShareFileClient("https://secure.sf-api.com/sf/v3/");
        var oauthService = new OAuthService(sfClient, "myClientId", "MySecret");

        var oauthToken = await oauthService.ExchangeSamlAssertionAsync("what goes here?", subdomain, applicationControlPlane);

        sfClient.AddOAuthCredentials(oauthToken);
        sfClient.BaseUri = oauthToken.GetUri();
    }
}
...