HttpRequestMessageAuthenticationExtensions.WithAuthenticationOptions Method

Definition

Overloads

Name Description
WithAuthenticationOptions(HttpRequestMessage, MicrosoftIdentityMessageHandlerOptions)

Sets authentication options for the HTTP request.

WithAuthenticationOptions(HttpRequestMessage, Action<MicrosoftIdentityMessageHandlerOptions>)

Configures authentication options for the HTTP request using a delegate.

WithAuthenticationOptions(HttpRequestMessage, MicrosoftIdentityMessageHandlerOptions)

Sets authentication options for the HTTP request.

public static System.Net.Http.HttpRequestMessage WithAuthenticationOptions(this System.Net.Http.HttpRequestMessage request, Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions options);
static member WithAuthenticationOptions : System.Net.Http.HttpRequestMessage * Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions -> System.Net.Http.HttpRequestMessage
<Extension()>
Public Function WithAuthenticationOptions (request As HttpRequestMessage, options As MicrosoftIdentityMessageHandlerOptions) As HttpRequestMessage

Parameters

request
HttpRequestMessage

The HTTP request message to configure.

options
MicrosoftIdentityMessageHandlerOptions

The authentication options to apply to this request.

Returns

The same request message for method chaining.

Exceptions

Thrown when request or options is null.

Examples

var options = new MicrosoftIdentityMessageHandlerOptions
{
    Scopes = { "https://graph.microsoft.com/.default" }
};
options.WithAgentIdentity("my-agent-guid");

var request = new HttpRequestMessage(HttpMethod.Get, "/me")
    .WithAuthenticationOptions(options);

Remarks

This method will override any existing authentication options set on the request. The options object can be further configured with extension methods from other Microsoft Identity Web packages.

Applies to

WithAuthenticationOptions(HttpRequestMessage, Action<MicrosoftIdentityMessageHandlerOptions>)

Configures authentication options for the HTTP request using a delegate.

public static System.Net.Http.HttpRequestMessage WithAuthenticationOptions(this System.Net.Http.HttpRequestMessage request, Action<Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions> configure);
static member WithAuthenticationOptions : System.Net.Http.HttpRequestMessage * Action<Microsoft.Identity.Web.MicrosoftIdentityMessageHandlerOptions> -> System.Net.Http.HttpRequestMessage
<Extension()>
Public Function WithAuthenticationOptions (request As HttpRequestMessage, configure As Action(Of MicrosoftIdentityMessageHandlerOptions)) As HttpRequestMessage

Parameters

request
HttpRequestMessage

The HTTP request message to configure.

configure
Action<MicrosoftIdentityMessageHandlerOptions>

A delegate that configures the authentication options.

Returns

The same request message for method chaining.

Exceptions

Thrown when request or configure is null.

Examples

var request = new HttpRequestMessage(HttpMethod.Get, "/api/users")
    .WithAuthenticationOptions(options =>
    {
        options.Scopes.Add("https://myapi.domain.com/user.read");
        options.WithAgentIdentity("agent-application-id");
        options.RequestAppToken = true;
    });

Remarks

If the request already has authentication options configured, the delegate will receive the existing options object to modify. Otherwise, a new MicrosoftIdentityMessageHandlerOptions instance will be created and passed to the delegate.

This method is particularly useful when you need to apply extension methods from other Microsoft Identity Web packages, such as agent identity methods.

Applies to