<gh_stars>0// *** 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.Inputs
{

    public sealed class WebfilterProfileOverrideGetArgs : global::Pulumi.ResourceArgs
    {
        /// <summary>
        /// Allow/deny browser-based (cookie) overrides. Valid values: `allow`, `deny`.
        /// </summary>
        [Input("ovrdCookie")]
        public Input<string>? OvrdCookie { get; set; }

        /// <summary>
        /// Override duration.
        /// </summary>
        [Input("ovrdDur")]
        public Input<string>? OvrdDur { get; set; }

        /// <summary>
        /// Override duration mode. Valid values: `constant`, `ask`.
        /// </summary>
        [Input("ovrdDurMode")]
        public Input<string>? OvrdDurMode { get; set; }

        /// <summary>
        /// Override scope. Valid values: `user`, `user-group`, `ip`, `browser`, `ask`.
        /// </summary>
        [Input("ovrdScope")]
        public Input<string>? OvrdScope { get; set; }

        [Input("ovrdUserGroups")]
        private InputList<Inputs.WebfilterProfileOverrideOvrdUserGroupGetArgs>? _ovrdUserGroups;

        /// <summary>
        /// User groups with permission to use the override. The structure of `ovrd_user_group` block is documented below.
        /// </summary>
        public InputList<Inputs.WebfilterProfileOverrideOvrdUserGroupGetArgs> OvrdUserGroups
        {
            get => _ovrdUserGroups ?? (_ovrdUserGroups = new InputList<Inputs.WebfilterProfileOverrideOvrdUserGroupGetArgs>());
            set => _ovrdUserGroups = value;
        }

        /// <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>
        [Input("profileAttribute")]
        public Input<string>? ProfileAttribute { get; set; }

        /// <summary>
        /// Override profile type. Valid values: `list`, `radius`.
        /// </summary>
        [Input("profileType")]
        public Input<string>? ProfileType { get; set; }

        [Input("profiles")]
        private InputList<Inputs.WebfilterProfileOverrideProfileGetArgs>? _profiles;

        /// <summary>
        /// Web filter profile with permission to create overrides. The structure of `profile` block is documented below.
        /// </summary>
        public InputList<Inputs.WebfilterProfileOverrideProfileGetArgs> Profiles
        {
            get => _profiles ?? (_profiles = new InputList<Inputs.WebfilterProfileOverrideProfileGetArgs>());
            set => _profiles = value;
        }

        public WebfilterProfileOverrideGetArgs()
        {
        }
        public static new WebfilterProfileOverrideGetArgs Empty => new WebfilterProfileOverrideGetArgs();
    }
}
