<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Microsoft.AspNetCore.Authorization.Policy</name>
    </assembly>
    <members>
        <member name="T:Microsoft.Extensions.Internal.SecurityHelper">
            <summary>
            Helper code used when implementing authentication middleware
            </summary>
        </member>
        <member name="M:Microsoft.Extensions.Internal.SecurityHelper.MergeUserPrincipal(System.Security.Claims.ClaimsPrincipal,System.Security.Claims.ClaimsPrincipal)">
            <summary>
            Add all ClaimsIdentities from an additional ClaimPrincipal to the ClaimsPrincipal
            Merges a new claims principal, placing all new identities first, and eliminating
            any empty unauthenticated identities from context.User
            </summary>
            <param name="existingPrincipal">The <see cref="T:System.Security.Claims.ClaimsPrincipal"/> containing existing <see cref="T:System.Security.Claims.ClaimsIdentity"/>.</param>
            <param name="additionalPrincipal">The <see cref="T:System.Security.Claims.ClaimsPrincipal"/> containing <see cref="T:System.Security.Claims.ClaimsIdentity"/> to be added.</param>
        </member>
        <member name="T:Microsoft.Extensions.DependencyInjection.PolicyServiceCollectionExtensions">
            <summary>
            Extension methods for setting up authorization services in an <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" />.
            </summary>
        </member>
        <member name="M:Microsoft.Extensions.DependencyInjection.PolicyServiceCollectionExtensions.AddAuthorizationPolicyEvaluator(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
            <summary>
            Adds authorization policy services to the specified <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" />. 
            </summary>
            <param name="services">The <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" /> to add services to.</param>
            <returns>The <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection"/> so that additional calls can be chained.</returns>
        </member>
        <member name="T:Microsoft.AspNetCore.Authorization.Policy.IPolicyEvaluator">
            <summary>
            Base class for authorization handlers that need to be called for a specific requirement type.
            </summary>
        </member>
        <member name="M:Microsoft.AspNetCore.Authorization.Policy.IPolicyEvaluator.AuthenticateAsync(Microsoft.AspNetCore.Authorization.AuthorizationPolicy,Microsoft.AspNetCore.Http.HttpContext)">
            <summary>
            Does authentication for <see cref="P:Microsoft.AspNetCore.Authorization.AuthorizationPolicy.AuthenticationSchemes"/> and sets the resulting
            <see cref="T:System.Security.Claims.ClaimsPrincipal"/> to <see cref="P:Microsoft.AspNetCore.Http.HttpContext.User"/>.  If no schemes are set, this is a no-op.
            </summary>
            <param name="policy">The <see cref="T:Microsoft.AspNetCore.Authorization.AuthorizationPolicy"/>.</param>
            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
            <returns><see cref="M:Microsoft.AspNetCore.Authentication.AuthenticateResult.Success(Microsoft.AspNetCore.Authentication.AuthenticationTicket)"/> unless all schemes specified by <see cref="P:Microsoft.AspNetCore.Authorization.AuthorizationPolicy.AuthenticationSchemes"/> fail to authenticate.  </returns>
        </member>
        <member name="M:Microsoft.AspNetCore.Authorization.Policy.IPolicyEvaluator.AuthorizeAsync(Microsoft.AspNetCore.Authorization.AuthorizationPolicy,Microsoft.AspNetCore.Authentication.AuthenticateResult,Microsoft.AspNetCore.Http.HttpContext,System.Object)">
            <summary>
            Attempts authorization for a policy using <see cref="T:Microsoft.AspNetCore.Authorization.IAuthorizationService"/>.
            </summary>
            <param name="policy">The <see cref="T:Microsoft.AspNetCore.Authorization.AuthorizationPolicy"/>.</param>
            <param name="authenticationResult">The result of a call to <see cref="M:Microsoft.AspNetCore.Authorization.Policy.IPolicyEvaluator.AuthenticateAsync(Microsoft.AspNetCore.Authorization.AuthorizationPolicy,Microsoft.AspNetCore.Http.HttpContext)"/>.</param>
            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
            <param name="resource">
            An optional resource the policy should be checked with.
            If a resource is not required for policy evaluation you may pass null as the value.
            </param>
            <returns>Returns <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Success"/> if authorization succeeds.
            Otherwise returns <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Forbid"/> if <see cref="P:Microsoft.AspNetCore.Authentication.AuthenticateResult.Succeeded"/>, otherwise
            returns  <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Challenge"/></returns>
        </member>
        <member name="P:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Challenged">
            <summary>
            If true, means the callee should challenge and try again.
            </summary>
        </member>
        <member name="P:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Forbidden">
            <summary>
            Authorization was forbidden.
            </summary>
        </member>
        <member name="P:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Succeeded">
            <summary>
            Authorization was successful.
            </summary>
        </member>
        <member name="M:Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.#ctor(Microsoft.AspNetCore.Authorization.IAuthorizationService)">
            <summary>
            Constructor
            </summary>
            <param name="authorization">The authorization service.</param>
        </member>
        <member name="M:Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(Microsoft.AspNetCore.Authorization.AuthorizationPolicy,Microsoft.AspNetCore.Http.HttpContext)">
            <summary>
            Does authentication for <see cref="P:Microsoft.AspNetCore.Authorization.AuthorizationPolicy.AuthenticationSchemes"/> and sets the resulting
            <see cref="T:System.Security.Claims.ClaimsPrincipal"/> to <see cref="P:Microsoft.AspNetCore.Http.HttpContext.User"/>.  If no schemes are set, this is a no-op.
            </summary>
            <param name="policy">The <see cref="T:Microsoft.AspNetCore.Authorization.AuthorizationPolicy"/>.</param>
            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
            <returns><see cref="M:Microsoft.AspNetCore.Authentication.AuthenticateResult.Success(Microsoft.AspNetCore.Authentication.AuthenticationTicket)"/> unless all schemes specified by <see cref="P:Microsoft.AspNetCore.Authorization.AuthorizationPolicy.AuthenticationSchemes"/> failed to authenticate.  </returns>
        </member>
        <member name="M:Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthorizeAsync(Microsoft.AspNetCore.Authorization.AuthorizationPolicy,Microsoft.AspNetCore.Authentication.AuthenticateResult,Microsoft.AspNetCore.Http.HttpContext,System.Object)">
            <summary>
            Attempts authorization for a policy using <see cref="T:Microsoft.AspNetCore.Authorization.IAuthorizationService"/>.
            </summary>
            <param name="policy">The <see cref="T:Microsoft.AspNetCore.Authorization.AuthorizationPolicy"/>.</param>
            <param name="authenticationResult">The result of a call to <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(Microsoft.AspNetCore.Authorization.AuthorizationPolicy,Microsoft.AspNetCore.Http.HttpContext)"/>.</param>
            <param name="context">The <see cref="T:Microsoft.AspNetCore.Http.HttpContext"/>.</param>
            <param name="resource">
            An optional resource the policy should be checked with.
            If a resource is not required for policy evaluation you may pass null as the value.
            </param>
            <returns>Returns <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Success"/> if authorization succeeds.
            Otherwise returns <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Forbid"/> if <see cref="P:Microsoft.AspNetCore.Authentication.AuthenticateResult.Succeeded"/>, otherwise
            returns  <see cref="M:Microsoft.AspNetCore.Authorization.Policy.PolicyAuthorizationResult.Challenge"/></returns>
        </member>
    </members>
</doc>
