<filename>sdk/dotnet/Outputs/WebfilterProfileOverride.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace Pulumiverse.Fortios.Outputs
{

    [OutputType]
    public sealed class WebfilterProfileOverride
    {
        /// <summary>
        /// Allow/deny browser-based (cookie) overrides. Valid values: `allow`, `deny`.
        /// </summary>
        public readonly string? OvrdCookie;
        /// <summary>
        /// Override duration.
        /// </summary>
        public readonly string? OvrdDur;
        /// <summary>
        /// Override duration mode. Valid values: `constant`, `ask`.
        /// </summary>
        public readonly string? OvrdDurMode;
        /// <summary>
        /// Override scope. Valid values: `user`, `user-group`, `ip`, `browser`, `ask`.
        /// </summary>
        public readonly string? OvrdScope;
        /// <summary>
        /// User groups with permission to use the override. The structure of `ovrd_user_group` block is documented below.
        /// </summary>
        public readonly ImmutableArray<Outputs.WebfilterProfileOverrideOvrdUserGroup> OvrdUserGroups;
        /// <summary>
        /// Profile attribute to retrieve from the RADIUS server. Valid values: `User-Name`, `NAS-IP-Address`, `Framed-IP-Address`, `Framed-IP-Netmask`, `Filter-Id`, `Login-IP-Host`, `Reply-Message`, `Callback-Number`, `Callback-Id`, `Framed-Route`, `Framed-IPX-Network`, `Class`, `Called-Station-Id`, `Calling-Station-Id`, `NAS-Identifier`, `Proxy-State`, `Login-LAT-Service`, `Login-LAT-Node`, `Login-LAT-Group`, `Framed-AppleTalk-Zone`, `Acct-Session-Id`, `Acct-Multi-Session-Id`.
        /// </summary>
        public readonly string? ProfileAttribute;
        /// <summary>
        /// Override profile type. Valid values: `list`, `radius`.
        /// </summary>
        public readonly string? ProfileType;
        /// <summary>
        /// Web filter profile with permission to create overrides. The structure of `profile` block is documented below.
        /// </summary>
        public readonly ImmutableArray<Outputs.WebfilterProfileOverrideProfile> Profiles;

        [OutputConstructor]
        private WebfilterProfileOverride(
            string? ovrdCookie,

            string? ovrdDur,

            string? ovrdDurMode,

            string? ovrdScope,

            ImmutableArray<Outputs.WebfilterProfileOverrideOvrdUserGroup> ovrdUserGroups,

            string? profileAttribute,

            string? profileType,

            ImmutableArray<Outputs.WebfilterProfileOverrideProfile> profiles)
        {
            OvrdCookie = ovrdCookie;
            OvrdDur = ovrdDur;
            OvrdDurMode = ovrdDurMode;
            OvrdScope = ovrdScope;
            OvrdUserGroups = ovrdUserGroups;
            ProfileAttribute = profileAttribute;
            ProfileType = profileType;
            Profiles = profiles;
        }
    }
}
