UserAuthorizationOptions Constructors

Definition

Overloads

UserAuthorizationOptions(IStorage, IConnections, IUserAuthorization[])

Caution

This constructor is deprecated. Use UserAuthorizationOptions(ILoggerFactory, IStorage, IConnections, params IUserAuthorization[])

[System.Obsolete("This constructor is deprecated. Use UserAuthorizationOptions(ILoggerFactory, IStorage, IConnections, params IUserAuthorization[])")]
public UserAuthorizationOptions(Microsoft.Agents.Storage.IStorage storage, Microsoft.Agents.Authentication.IConnections connections, params Microsoft.Agents.Builder.UserAuth.IUserAuthorization[] userAuthHandlers);
[<System.Obsolete("This constructor is deprecated. Use UserAuthorizationOptions(ILoggerFactory, IStorage, IConnections, params IUserAuthorization[])")>]
new Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions : Microsoft.Agents.Storage.IStorage * Microsoft.Agents.Authentication.IConnections * Microsoft.Agents.Builder.UserAuth.IUserAuthorization[] -> Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions
Public Sub New (storage As IStorage, connections As IConnections, ParamArray userAuthHandlers As IUserAuthorization())

Parameters

storage
IStorage
connections
IConnections
userAuthHandlers
IUserAuthorization[]
Attributes

Applies to

UserAuthorizationOptions(ILoggerFactory, IStorage, IConnections, IUserAuthorization[])

Create UserAuthorizationOptions programmatically.

public UserAuthorizationOptions(Microsoft.Extensions.Logging.ILoggerFactory loggerFactory, Microsoft.Agents.Storage.IStorage storage, Microsoft.Agents.Authentication.IConnections connections, params Microsoft.Agents.Builder.UserAuth.IUserAuthorization[] userAuthHandlers);
new Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions : Microsoft.Extensions.Logging.ILoggerFactory * Microsoft.Agents.Storage.IStorage * Microsoft.Agents.Authentication.IConnections * Microsoft.Agents.Builder.UserAuth.IUserAuthorization[] -> Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions
Public Sub New (loggerFactory As ILoggerFactory, storage As IStorage, connections As IConnections, ParamArray userAuthHandlers As IUserAuthorization())

Parameters

loggerFactory
ILoggerFactory

Typically from AgentApplicationOptions.LoggerFactory

storage
IStorage

The IStorage to use for UserAuthorization flow state. This can be the same storage as elsewhere.

connections
IConnections
userAuthHandlers
IUserAuthorization[]

Remarks

``` services.AddTransient<IAgent>(sp => { var connections = sp.GetService<IConnections>(); var storage = sp.GetService<IStorage>();

var options = new AgentApplicationOptions() { TurnStateFactory = () => new TurnState(storage),

UserAuthorization = new UserAuthorizationOptions(connections, new AzureBotUserAuthorization("graph", storage, connections, new OAuthSettings()) { DefaultHandlerName = "graph", AutoSignin = AutoSignInOn }; }

var app = new AgentApplication(options);

...

return app; }; ```

Applies to

UserAuthorizationOptions(IServiceProvider, ILoggerFactory, IConfiguration, IStorage, AutoSignInSelector, String)

Creates UserAuthorizationOptions from IConfiguration and DI.

public UserAuthorizationOptions(IServiceProvider sp, Microsoft.Extensions.Logging.ILoggerFactory loggerFactory, Microsoft.Extensions.Configuration.IConfiguration configuration, Microsoft.Agents.Storage.IStorage storage = default, Microsoft.Agents.Builder.App.UserAuth.AutoSignInSelector autoSignInSelector = default, string configKey = "UserAuthorization");
new Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions : IServiceProvider * Microsoft.Extensions.Logging.ILoggerFactory * Microsoft.Extensions.Configuration.IConfiguration * Microsoft.Agents.Storage.IStorage * Microsoft.Agents.Builder.App.UserAuth.AutoSignInSelector * string -> Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions
Public Sub New (sp As IServiceProvider, loggerFactory As ILoggerFactory, configuration As IConfiguration, Optional storage As IStorage = Nothing, Optional autoSignInSelector As AutoSignInSelector = Nothing, Optional configKey As String = "UserAuthorization")

Parameters

loggerFactory
ILoggerFactory
configuration
IConfiguration
storage
IStorage
autoSignInSelector
AutoSignInSelector
configKey
String

Remarks

``` "UserAuthorization": { "DefaultHandlerName": "graph", "AutoSignIn": true, "Handlers": { "graph": { "Settings": { // Settings are IUserAuthorization specific } } }

<p>The "AutoSignIn" property will map to <xref data-throw-if-not-resolved="true" uid="Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions.AutoSignInOnForAny"></xref> or <xref data-throw-if-not-resolved="true" uid="Microsoft.Agents.Builder.App.UserAuth.UserAuthorizationOptions.AutoSignInOff"></xref>.  To provide a
  a custom selector, DI a <xref data-throw-if-not-resolved="true" uid="Microsoft.Agents.Builder.App.UserAuth.AutoSignInSelector"></xref>.</p>

  The default Handler:Settings are mapped to <xref data-throw-if-not-resolved="true" uid="Microsoft.Agents.Builder.UserAuth.TokenService.OAuthSettings"></xref>.  These
  setting can be included in config:

"UserAuthorization": { "Handlers": { "Settings": { "AzureBotOAuthConnectionName": "{{auzre-bot-connection-name}}", "OBOConnectionName": "{{connections-name}}", "OBOScopes": ["{{obo-scope}}"], "Title": "{{signin-card-title}}", "Text": "{{signin-card-button-text}}", "InvalidSignInRetryMax": 2, "InvalidSignInRetryMessage": "Please send code again", "Timeout": {{timeout-ms}} } } ```

Applies to