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.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,System.Net.WebProxy)">
            <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. If not specified, clientId of Azure Powershell is used</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>
            <param name="proxy">Optional configuration of proxy for internet access</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.String,System.String[],System.String,System.Net.WebProxy)">
            <summary>
            Creates factory that supports 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>
            <param name="proxy">Optional configuration of proxy for internet access</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.Security.Cryptography.X509Certificates.X509Certificate2,System.String[],System.String,System.Net.WebProxy)">
            <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>
            <param name="proxy">Optional configuration of proxy for internet access</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String[],System.Net.WebProxy)">
            <summary>
            Creates factory that supports SystemAssignedIdentity (clientId passed is null)
            or UserAssignedIdentity (clientId parameter represents user assigned identity) authentication
            </summary>
            <param name="clientId">AppId of User Assigned Identity or null (which means to use System Assigned Identity)</param>
            <param name="scopes">Required scopes to obtain. Currently obtains all assigned scopes for first resource in the array.</param>
            <param name="proxy">Optional configuration of proxy for internet access</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.#ctor(System.String,System.String,System.String[],System.String,System.Security.SecureString,System.String,System.Net.WebProxy)">
            <summary>
            Creates factory that supporrts Public client ROPC flow
            </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</param>
            <param name="password">Resource owner password</param>
            <param name="proxy">Optional configuration of proxy for internet access</param>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.AuthenticateAsync(System.String[])">
            <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="F:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.GetAncestorFlags.GetRootOwner">
            <summary>
            Retrieves the owned root window by walking the chain of parent and owner windows returned by GetParent.
            </summary>
        </member>
        <member name="M:GreyCorbel.Identity.Authentication.AadAuthenticationFactory.GetAncestor(System.IntPtr,GreyCorbel.Identity.Authentication.AadAuthenticationFactory.GetAncestorFlags)">
            <summary>
            Retrieves the handle to the ancestor of the specified window.
            </summary>
            <param name="hwnd">A handle to the window whose ancestor is to be retrieved.
            If this parameter is the desktop window, the function returns NULL. </param>
            <param name="flags">The ancestor to be retrieved.</param>
            <returns>The return value is the handle to the ancestor window.</returns>
        </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="F:GreyCorbel.Identity.Authentication.AuthenticationMode.WIA">
            <summary>
            Windows Integrated Authentication - supported on machines joined to AD, or hybrid joined
            </summary>
        </member>
        <member name="T:GreyCorbel.Identity.Authentication.AuthenticationFlow">
            <summary>
            Type of client we use for auth
            </summary>
        </member>
    </members>
</doc>