UserAuthorizationOptions Constructors
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
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}} } } ```