Shared/netstandard2.0/GreyCorbel.Identity.Authentication.xml

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>GreyCorbel.Identity.Authentication</name>
    </assembly>
    <members>
        <member name="T:GreyCorbel.Identity.Authentication.AadAuthenticationFactory">
            <summary>
            Main object responsible for authentication according to constructor and parameters used
            </summary>
        </member>
        <member name="P:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.TenantId">
            <summary>
            Tenant Id of AAD tenant that authenticates the user / app
            </summary>
        </member>
        <member name="P:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.ClientId">
            <summary>
            ClientId to be used for authentication flows
            </summary>
        </member>
        <member name="P:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.LoginApi">
            <summary>
            AAD authorization endpoint. Defaults to public AAD
            </summary>
        </member>
        <member name="P:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.Scopes">
            <summary>
            Scopes the factory asks for when asking for tokens
            </summary>
        </member>
        <member name="P:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.AuthMode">
            <summary>
            Authentication mode for public client flows
            </summary>
        </member>
        <member name="P:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.UserName">
            <summary>
            UserName hint to use in authentication flows to help select proper user. Useful in case multiple accounts are logged in.
            </summary>
        </member>
        <member name="F:GreyCorbel.Identity.Authentication.AadAuthenticationFactory._resourceOwnerPassword">
            <summary>
            Password for ROPC flow
            </summary>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.String[],System.String,GreyCorbel.Identity.Authentication.AuthenticationMode,System.String)">
            <summary>
            Creates factory that supporrts Public client flows with Interactive or DeviceCode authentication
            </summary>
            <param name="tenantId">DNS name or Id of tenant that authenticates user</param>
            <param name="clientId">ClientId to use</param>
            <param name="scopes">List of scopes that clients asks for</param>
            <param name="loginApi">AAD endpoint that will handle the authentication.</param>
            <param name="authenticationMode">Type of public client flow to use</param>
            <param name="userNameHint">Which username to use in auth UI in case there may be multiple names available</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.String,System.String[],System.String)">
            <summary>
            Creates factory that supporrts Confidential client flows via MSAL with ClientSecret authentication
            </summary>
            <param name="tenantId">DNS name or Id of tenant that authenticates user</param>
            <param name="clientId">ClientId to use</param>
            <param name="scopes">List of scopes that clients asks for</param>
            <param name="loginApi">AAD endpoint that will handle the authentication.</param>
            <param name="clientSecret">Client secret to be used</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.Security.Cryptography.X509Certificates.X509Certificate2,System.String[],System.String)">
            <summary>
            Constructor for Confidential client authentication flow via MSAL and X509 certificate authentication
            </summary>
            <param name="tenantId">Dns domain name or tenant guid</param>
            <param name="clientId">Client id that represents application asking for token</param>
            <param name="clientCertificate">X509 certificate with private key. Public part of certificate is expected to be registered with app registration for given client id in AAD.</param>
            <param name="scopes">Scopes application asks for</param>
            <param name="loginApi">AAD endpoint URL for special instance of AAD (/e.g. US Gov)</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String[])">
            <summary>
            Creates factory that supports ManagedIdentity authentication
            </summary>
            <param name="scopes">Required scopes to obtain. Currently obtains all assigned scopes for first resource in the array of scopes.</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String[])">
            <summary>
            Creates factory that supports UserAssignedIdentity authentication with provided client id
            </summary>
            <param name="clientId">AppId of User Assigned Identity</param>
            <param name="scopes">Required scopes to obtain. Currently obtains all assigned scopes for first resource in the array.</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.String[],System.String,System.Security.SecureString,System.String)">
            <summary>
            Creates factory that supporrts Public client flows with Interactive or DeviceCode authentication
            </summary>
            <param name="tenantId">DNS name or Id of tenant that authenticates user</param>
            <param name="clientId">ClientId to use</param>
            <param name="scopes">List of scopes that clients asks for</param>
            <param name="loginApi">AAD endpoint that will handle the authentication.</param>
            <param name="userName">Resource owner username and password</param>
            <param name="password">Resource owner password</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.AuthenticateAsync">
            <summary>
            Returns authentication result
            Microsoft says we should not instantiate directly - but how to achieve unified experience of caller without being able to return it?
            </summary>
            <returns cref="T:Microsoft.Identity.Client.AuthenticationResult">Authentication result object either returned fropm MSAL libraries, or - for ManagedIdentity - constructed from Managed Identity endpoint response, as returned by cref="ManagedIdentityClientApplication.ApiVersion" version of endpoint</returns>
            <exception cref="T:System.ArgumentException">Throws if unsupported authentication mode or flow detected</exception>
        </member>
        <member name="T:GreyCorbel.Identity.Authentication.AuthenticationMode">
            <summary>
            Public client supported authentication flows
            </summary>
        </member>
        <member name="F:GreyCorbel.Identity.Authentication.AuthenticationMode.Interactive">
            <summary>
            Interactive flow with webview or browser
            </summary>
        </member>
        <member name="F:GreyCorbel.Identity.Authentication.AuthenticationMode.DeviceCode">
            <summary>
            DeviceCode flow with authentication performed with code on different device
            </summary>
        </member>
        <member name="T:GreyCorbel.Identity.Authentication.AuthenticationFlow">
            <summary>
            Type of client we use for auth
            </summary>
        </member>
    </members>
</doc>