// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authentication.Cookies; using Microsoft.AspNetCore.Authentication.OpenIdConnect; namespace Microsoft.AspNetCore.Authentication.AzureAD.UI { /// /// Options for configuring authentication using Azure Active Directory. /// public class AzureADOptions { /// /// Gets or sets the OpenID Connect authentication scheme to use for authentication with this instance /// of Azure Active Directory authentication. /// public string OpenIdConnectSchemeName { get; set; } = OpenIdConnectDefaults.AuthenticationScheme; /// /// Gets or sets the Cookie authentication scheme to use for sign in with this instance of /// Azure Active Directory authentication. /// public string CookieSchemeName { get; set; } = CookieAuthenticationDefaults.AuthenticationScheme; /// /// Gets or sets the Jwt bearer authentication scheme to use for validating access tokens for this /// instance of Azure Active Directory Bearer authentication. /// public string JwtBearerSchemeName { get; internal set; } /// /// Gets or sets the client Id. /// public string ClientId { get; set; } /// /// Gets or sets the tenant Id. /// public string TenantId { get; set; } /// /// Gets or sets the Azure Active Directory instance. /// public string Instance { get; set; } /// /// Gets or sets the domain of the Azure Active Directory tennant. /// public string Domain { get; set; } /// /// Gets or sets the sign in callback path. /// public string CallbackPath { get; set; } /// /// Gets or sets the sign out callback path. /// public string SignedOutCallbackPath { get; set; } /// /// Gets all the underlying authentication schemes. /// public string[] AllSchemes => new[] { CookieSchemeName, OpenIdConnectSchemeName }; } }