The minimum, but typical, configuration is:
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{{ClientId}}" // this is the Client ID used for the Azure Bot
+ /// ],
+ /// "TenantId": "{{TenantId}}"
+ /// }
+ ///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
+ ///
- /// "TokenValidation": {
- /// "Audiences": [
- /// "{required:agent-appid}"
- /// ],
- /// "TenantId": "{recommended:tenant-id}",
- /// "ValidIssuers": [
- /// "{default:Public-AzureBotService}"
- /// ],
- /// "IsGov": {optional:false},
- /// "AzureBotServiceOpenIdMetadataUrl": optional,
- /// "OpenIdMetadataUrl": optional,
- /// "AzureBotServiceTokenHandling": "{optional:true}"
- /// "OpenIdMetadataRefresh": "optional-12:00:00"
- /// }
- ///
- ///
- /// `IsGov` can be omitted, in which case public Azure Bot Service and Azure Cloud metadata urls are used.
- /// `ValidIssuers` can be omitted, in which case the Public Azure Bot Service issuers are used.
- /// `TenantId` can be omitted if the Agent is not being called by another Agent. Otherwise it is used to add other known issuers. Only when `ValidIssuers` is omitted.
- /// `AzureBotServiceOpenIdMetadataUrl` can be omitted. In which case default values in combination with `IsGov` is used.
- /// `OpenIdMetadataUrl` can be omitted. In which case default values in combination with `IsGov` is used.
- /// `AzureBotServiceTokenHandling` defaults to true and should always be true until Azure Bot Service sends Entra ID token.
- /// The minimum, but typical, configuration is:
///
/// "TokenValidation": {
+ /// "Enabled": boolean,
/// "Audiences": [
/// "{{ClientId}}" // this is the Client ID used for the Azure Bot
/// ],
/// "TenantId": "{{TenantId}}"
/// }
///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
/// The minimum, but typical, configuration is:
///
/// "TokenValidation": {
+ /// "Enabled": boolean,
/// "Audiences": [
/// "{{ClientId}}" // this is the Client ID used for the Azure Bot
/// ],
/// "TenantId": "{{TenantId}}"
/// }
///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
/// The minimum, but typical, configuration is:
///
/// "TokenValidation": {
+ /// "Enabled": boolean,
/// "Audiences": [
/// "{{ClientId}}" // this is the Client ID used for the Azure Bot
/// ],
/// "TenantId": "{{TenantId}}"
/// }
///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
/// The minimum, but typical, configuration is:
///
/// "TokenValidation": {
+ /// "Enabled": boolean,
/// "Audiences": [
/// "{{ClientId}}" // this is the Client ID used for the Azure Bot
/// ],
/// "TenantId": "{{TenantId}}"
/// }
///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
/// The minimum, but typical, configuration is:
///
/// "TokenValidation": {
+ /// "Enabled": boolean,
/// "Audiences": [
/// "{{ClientId}}" // this is the Client ID used for the Azure Bot
/// ],
/// "TenantId": "{{TenantId}}"
/// }
///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
/// The minimum, but typical, configuration is:
///
/// "TokenValidation": {
+ /// "Enabled": boolean,
/// "Audiences": [
/// "{{ClientId}}" // this is the Client ID used for the Azure Bot
/// ],
/// "TenantId": "{{TenantId}}"
/// }
///
+ ///
+ /// "TokenValidation": {
+ /// "Enabled": boolean,
+ /// "Audiences": [
+ /// "{required:agent-appid}"
+ /// ],
+ /// "TenantId": "{recommended:tenant-id}",
+ /// "ValidIssuers": [
+ /// "{default:Public-AzureBotService}"
+ /// ],
+ /// "IsGov": {optional:false},
+ /// "AzureBotServiceOpenIdMetadataUrl": optional,
+ /// "OpenIdMetadataUrl": optional,
+ /// "AzureBotServiceTokenHandling": "{optional:true}"
+ /// "OpenIdMetadataRefresh": "optional-12:00:00"
+ /// }
+ ///
///