Share via


DeviceCodeCredentialOptions Class

Definition

Options to configure the DeviceCodeCredential.

public class DeviceCodeCredentialOptions : Azure.Identity.TokenCredentialOptions
type DeviceCodeCredentialOptions = class
    inherit TokenCredentialOptions
Public Class DeviceCodeCredentialOptions
Inherits TokenCredentialOptions
Inheritance
DeviceCodeCredentialOptions

Constructors

DeviceCodeCredentialOptions()

Properties

AdditionallyAllowedTenants

Specifies tenants in addition to the specified TenantId for which the credential may acquire tokens. Add the wildcard value "*" to allow the credential to acquire tokens for any tenant the logged in account can access. If no value is specified for TenantId, this option will have no effect, and the credential will acquire tokens for any requested tenant.

AuthenticationRecord

The AuthenticationRecord captured from a previous authentication.

AuthorityHost

The host of the Microsoft Entra authority. The default is https://login.microsoftonline.com/. For well known authority hosts for Azure cloud instances see AzureAuthorityHosts.

(Inherited from TokenCredentialOptions)
ClientId

The client ID of the application used to authenticate the user. If not specified the user will be authenticated with an Azure development application. It is recommended that developers register their applications and assign appropriate roles. For more information, visit https://aka.ms/azsdk/identity/AppRegistrationAndRoleAssignment. If not specified, users will authenticate to an Azure development application, which is not recommended for production scenarios.

DeviceCodeCallback

The callback which will be executed to display the device code login details to the user. In not specified the device code and login instructions will be printed to the console.

Diagnostics

Gets the credential diagnostic options.

(Inherited from TokenCredentialOptions)
DisableAutomaticAuthentication

Prevents the DeviceCodeCredential from automatically prompting the user. If automatic authentication is disabled a AuthenticationRequiredException will be thrown from GetToken(TokenRequestContext, CancellationToken) and GetTokenAsync(TokenRequestContext, CancellationToken) in the case that user interaction is necessary. The application is responsible for handling this exception, and calling Authenticate(CancellationToken) or AuthenticateAsync(CancellationToken) to authenticate the user interactively.

DisableInstanceDiscovery

Gets or sets the setting which determines whether or not instance discovery is performed when attempting to authenticate. Setting this to true will completely disable both instance discovery and authority validation. This functionality is intended for use in scenarios where the metadata endpoint cannot be reached, such as in private clouds or Azure Stack. The process of instance discovery entails retrieving authority metadata from https://login.microsoft.com/ to validate the authority. By setting this to true, the validation of the authority is disabled. As a result, it is crucial to ensure that the configured authority host is valid and trustworthy."

IsUnsafeSupportLoggingEnabled

Gets or sets value indicating if ETW logging that contains potentially sensitive content should be logged. Setting this property to true will not disable redaction of Request Content. To enable logging of sensitive Content the IsLoggingContentEnabled property must be set to true. Setting this property to true equates to passing 'true' for the enablePiiLogging parameter to the 'WithLogging' method on the MSAL client builder.

(Inherited from TokenCredentialOptions)
Retry

Gets the client retry options.

(Inherited from ClientOptions)
RetryPolicy

Gets or sets the policy to use for retries. If a policy is specified, it will be used in place of the Retry property. The RetryPolicy type can be derived from to modify the default behavior without needing to fully implement the retry logic. If Process(HttpMessage, ReadOnlyMemory<HttpPipelinePolicy>) is overridden or a custom HttpPipelinePolicy is specified, it is the implementer's responsibility to update the ProcessingContext values.

(Inherited from ClientOptions)
TenantId

The tenant ID the user will be authenticated to. If not specified the user will be authenticated to their home tenant.

TokenCachePersistenceOptions

Specifies the TokenCachePersistenceOptions to be used by the credential. If not options are specified, the token cache will not be persisted to disk.

Transport

The HttpPipelineTransport to be used for this client. Defaults to an instance of HttpClientTransport.

(Inherited from ClientOptions)

Methods

AddPolicy(HttpPipelinePolicy, HttpPipelinePosition)

Adds an HttpPipeline policy into the client pipeline. The position of policy in the pipeline is controlled by the position parameter. If you want the policy to execute once per client request use PerCall otherwise use PerRetry to run the policy for every retry. Note that the same instance of policy would be added to all pipelines of client constructed using this ClientOptions object.

(Inherited from ClientOptions)

Applies to