Share via


UserAuthorizationOptions Constructors

Definition

Overloads

UserAuthorizationOptions(IConnections, IUserAuthorization[])

Create UserAuthorizationOptions programmatically.

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

Creates UserAuthorizationOptions from IConfiguration and DI.

UserAuthorizationOptions(IConnections, IUserAuthorization[])

Create UserAuthorizationOptions programmatically.

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

Parameters

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, IConfiguration, IStorage, AutoSignInSelector, String)

Creates UserAuthorizationOptions from IConfiguration and DI.

public UserAuthorizationOptions(IServiceProvider sp, 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.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, configuration As IConfiguration, Optional storage As IStorage = Nothing, Optional autoSignInSelector As AutoSignInSelector = Nothing, Optional configKey As String = "UserAuthorization")

Parameters

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