1#!/usr/local/bin/python3.8 2from __future__ import (absolute_import, division, print_function) 3# Copyright 2019-2020 Fortinet, Inc. 4# 5# This program is free software: you can redistribute it and/or modify 6# it under the terms of the GNU General Public License as published by 7# the Free Software Foundation, either version 3 of the License, or 8# (at your option) any later version. 9# 10# This program is distributed in the hope that it will be useful, 11# but WITHOUT ANY WARRANTY; without even the implied warranty of 12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13# GNU General Public License for more details. 14# 15# You should have received a copy of the GNU General Public License 16# along with this program. If not, see <https://www.gnu.org/licenses/>. 17 18__metaclass__ = type 19 20ANSIBLE_METADATA = {'status': ['preview'], 21 'supported_by': 'community', 22 'metadata_version': '1.1'} 23 24DOCUMENTATION = ''' 25--- 26module: fortios_webfilter_profile 27short_description: Configure Web filter profiles in Fortinet's FortiOS and FortiGate. 28description: 29 - This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the 30 user to set and modify webfilter feature and profile category. 31 Examples include all parameters and values need to be adjusted to datasources before usage. 32 Tested with FOS v6.0.0 33version_added: "2.10" 34author: 35 - Link Zheng (@chillancezen) 36 - Jie Xue (@JieX19) 37 - Hongbin Lu (@fgtdev-hblu) 38 - Frank Shen (@frankshen01) 39 - Miguel Angel Munoz (@mamunozgonzalez) 40 - Nicolas Thomas (@thomnico) 41notes: 42 - Legacy fortiosapi has been deprecated, httpapi is the preferred way to run playbooks 43 44requirements: 45 - ansible>=2.9.0 46options: 47 access_token: 48 description: 49 - Token-based authentication. 50 Generated from GUI of Fortigate. 51 type: str 52 required: false 53 enable_log: 54 description: 55 - Enable/Disable logging for task. 56 type: bool 57 required: false 58 default: false 59 vdom: 60 description: 61 - Virtual domain, among those defined previously. A vdom is a 62 virtual instance of the FortiGate that can be configured and 63 used as a different unit. 64 type: str 65 default: root 66 67 state: 68 description: 69 - Indicates whether to create or remove the object. 70 type: str 71 required: true 72 choices: 73 - present 74 - absent 75 webfilter_profile: 76 description: 77 - Configure Web filter profiles. 78 default: null 79 type: dict 80 suboptions: 81 antiphish: 82 description: 83 - AntiPhishing profile. 84 type: dict 85 suboptions: 86 authentication: 87 description: 88 - Authentication methods. 89 type: str 90 choices: 91 - domain-controller 92 - ldap 93 check_basic_auth: 94 description: 95 - Enable/disable checking of HTTP Basic Auth field for known credentials. 96 type: str 97 choices: 98 - enable 99 - disable 100 check_uri: 101 description: 102 - Enable/disable checking of GET URI parameters for known credentials. 103 type: str 104 choices: 105 - enable 106 - disable 107 check_username_only: 108 description: 109 - Enable/disable acting only on valid username credentials. Action will be taken for valid usernames regardless of password 110 validity. 111 type: str 112 choices: 113 - enable 114 - disable 115 custom_patterns: 116 description: 117 - Custom username and password regex patterns. 118 type: list 119 suboptions: 120 category: 121 description: 122 - Category that the pattern matches. 123 type: str 124 choices: 125 - username 126 - password 127 pattern: 128 description: 129 - Target pattern. 130 required: true 131 type: str 132 type: 133 description: 134 - Pattern will be treated either as a regex pattern or literal string. 135 type: str 136 choices: 137 - regex 138 - literal 139 default_action: 140 description: 141 - Action to be taken when there is no matching rule. 142 type: str 143 choices: 144 - exempt 145 - log 146 - block 147 domain_controller: 148 description: 149 - Domain for which to verify received credentials against. Source credential-store.domain-controller.server-name. 150 type: str 151 inspection_entries: 152 description: 153 - AntiPhishing entries. 154 type: list 155 suboptions: 156 action: 157 description: 158 - Action to be taken upon an AntiPhishing match. 159 type: str 160 choices: 161 - exempt 162 - log 163 - block 164 fortiguard_category: 165 description: 166 - FortiGuard category to match. 167 type: str 168 name: 169 description: 170 - Inspection target name. 171 required: true 172 type: str 173 ldap: 174 description: 175 - LDAP server for which to verify received credentials against. Source user.ldap.name. 176 type: str 177 max_body_len: 178 description: 179 - Maximum size of a POST body to check for credentials. 180 type: int 181 status: 182 description: 183 - Toggle AntiPhishing functionality. 184 type: str 185 choices: 186 - enable 187 - disable 188 comment: 189 description: 190 - Optional comments. 191 type: str 192 extended_log: 193 description: 194 - Enable/disable extended logging for web filtering. 195 type: str 196 choices: 197 - enable 198 - disable 199 feature_set: 200 description: 201 - Flow/proxy feature set. 202 type: str 203 choices: 204 - flow 205 - proxy 206 file_filter: 207 description: 208 - File filter. 209 type: dict 210 suboptions: 211 entries: 212 description: 213 - File filter entries. 214 type: list 215 suboptions: 216 action: 217 description: 218 - Action taken for matched file. 219 type: str 220 choices: 221 - log 222 - block 223 comment: 224 description: 225 - Comment. 226 type: str 227 direction: 228 description: 229 - Match files transmitted in the session"s originating or reply direction. 230 type: str 231 choices: 232 - incoming 233 - outgoing 234 - any 235 file_type: 236 description: 237 - Select file type. 238 type: list 239 suboptions: 240 name: 241 description: 242 - File type name. Source antivirus.filetype.name. 243 required: true 244 type: str 245 filter: 246 description: 247 - Add a file filter. 248 required: true 249 type: str 250 password_protected: 251 description: 252 - Match password-protected files. 253 type: str 254 choices: 255 - yes 256 - any 257 protocol: 258 description: 259 - Protocols to apply with. 260 type: str 261 choices: 262 - http 263 - ftp 264 log: 265 description: 266 - Enable/disable file filter logging. 267 type: str 268 choices: 269 - enable 270 - disable 271 scan_archive_contents: 272 description: 273 - Enable/disable file filter archive contents scan. 274 type: str 275 choices: 276 - enable 277 - disable 278 status: 279 description: 280 - Enable/disable file filter. 281 type: str 282 choices: 283 - enable 284 - disable 285 ftgd_wf: 286 description: 287 - FortiGuard Web Filter settings. 288 type: dict 289 suboptions: 290 exempt_quota: 291 description: 292 - Do not stop quota for these categories. 293 type: str 294 filters: 295 description: 296 - FortiGuard filters. 297 type: list 298 suboptions: 299 action: 300 description: 301 - Action to take for matches. 302 type: str 303 choices: 304 - block 305 - authenticate 306 - monitor 307 - warning 308 auth_usr_grp: 309 description: 310 - Groups with permission to authenticate. 311 type: str 312 suboptions: 313 name: 314 description: 315 - User group name. Source user.group.name. 316 required: true 317 type: str 318 category: 319 description: 320 - Categories and groups the filter examines. 321 type: int 322 id: 323 description: 324 - ID number. 325 required: true 326 type: int 327 log: 328 description: 329 - Enable/disable logging. 330 type: str 331 choices: 332 - enable 333 - disable 334 override_replacemsg: 335 description: 336 - Override replacement message. 337 type: str 338 warn_duration: 339 description: 340 - Duration of warnings. 341 type: str 342 warning_duration_type: 343 description: 344 - Re-display warning after closing browser or after a timeout. 345 type: str 346 choices: 347 - session 348 - timeout 349 warning_prompt: 350 description: 351 - Warning prompts in each category or each domain. 352 type: str 353 choices: 354 - per-domain 355 - per-category 356 max_quota_timeout: 357 description: 358 - Maximum FortiGuard quota used by single page view in seconds (excludes streams). 359 type: int 360 options: 361 description: 362 - Options for FortiGuard Web Filter. 363 type: str 364 choices: 365 - error-allow 366 - rate-server-ip 367 - connect-request-bypass 368 - ftgd-disable 369 ovrd: 370 description: 371 - Allow web filter profile overrides. 372 type: str 373 quota: 374 description: 375 - FortiGuard traffic quota settings. 376 type: list 377 suboptions: 378 category: 379 description: 380 - FortiGuard categories to apply quota to (category action must be set to monitor). 381 type: str 382 duration: 383 description: 384 - Duration of quota. 385 type: str 386 id: 387 description: 388 - ID number. 389 required: true 390 type: int 391 override_replacemsg: 392 description: 393 - Override replacement message. 394 type: str 395 type: 396 description: 397 - Quota type. 398 type: str 399 choices: 400 - time 401 - traffic 402 unit: 403 description: 404 - Traffic quota unit of measurement. 405 type: str 406 choices: 407 - B 408 - KB 409 - MB 410 - GB 411 value: 412 description: 413 - Traffic quota value. 414 type: int 415 rate_crl_urls: 416 description: 417 - Enable/disable rating CRL by URL. 418 type: str 419 choices: 420 - disable 421 - enable 422 rate_css_urls: 423 description: 424 - Enable/disable rating CSS by URL. 425 type: str 426 choices: 427 - disable 428 - enable 429 rate_image_urls: 430 description: 431 - Enable/disable rating images by URL. 432 type: str 433 choices: 434 - disable 435 - enable 436 rate_javascript_urls: 437 description: 438 - Enable/disable rating JavaScript by URL. 439 type: str 440 choices: 441 - disable 442 - enable 443 https_replacemsg: 444 description: 445 - Enable replacement messages for HTTPS. 446 type: str 447 choices: 448 - enable 449 - disable 450 inspection_mode: 451 description: 452 - Web filtering inspection mode. 453 type: str 454 choices: 455 - proxy 456 - flow-based 457 log_all_url: 458 description: 459 - Enable/disable logging all URLs visited. 460 type: str 461 choices: 462 - enable 463 - disable 464 name: 465 description: 466 - Profile name. 467 required: true 468 type: str 469 options: 470 description: 471 - Options. 472 type: list 473 choices: 474 - activexfilter 475 - cookiefilter 476 - javafilter 477 - block-invalid-url 478 - jscript 479 - js 480 - vbs 481 - unknown 482 - intrinsic 483 - wf-referer 484 - wf-cookie 485 - per-user-bwl 486 - per-user-bal 487 override: 488 description: 489 - Web Filter override settings. 490 type: dict 491 suboptions: 492 ovrd_cookie: 493 description: 494 - Allow/deny browser-based (cookie) overrides. 495 type: str 496 choices: 497 - allow 498 - deny 499 ovrd_dur: 500 description: 501 - Override duration. 502 type: str 503 ovrd_dur_mode: 504 description: 505 - Override duration mode. 506 type: str 507 choices: 508 - constant 509 - ask 510 ovrd_scope: 511 description: 512 - Override scope. 513 type: str 514 choices: 515 - user 516 - user-group 517 - ip 518 - browser 519 - ask 520 ovrd_user_group: 521 description: 522 - User groups with permission to use the override. 523 type: str 524 suboptions: 525 name: 526 description: 527 - User group name. Source user.group.name. 528 required: true 529 type: str 530 profile: 531 description: 532 - Web filter profile with permission to create overrides. 533 type: list 534 suboptions: 535 name: 536 description: 537 - Web profile. Source webfilter.profile.name. 538 required: true 539 type: str 540 profile_attribute: 541 description: 542 - Profile attribute to retrieve from the RADIUS server. 543 type: str 544 choices: 545 - User-Name 546 - NAS-IP-Address 547 - Framed-IP-Address 548 - Framed-IP-Netmask 549 - Filter-Id 550 - Login-IP-Host 551 - Reply-Message 552 - Callback-Number 553 - Callback-Id 554 - Framed-Route 555 - Framed-IPX-Network 556 - Class 557 - Called-Station-Id 558 - Calling-Station-Id 559 - NAS-Identifier 560 - Proxy-State 561 - Login-LAT-Service 562 - Login-LAT-Node 563 - Login-LAT-Group 564 - Framed-AppleTalk-Zone 565 - Acct-Session-Id 566 - Acct-Multi-Session-Id 567 profile_type: 568 description: 569 - Override profile type. 570 type: str 571 choices: 572 - list 573 - radius 574 ovrd_perm: 575 description: 576 - Permitted override types. 577 type: list 578 choices: 579 - bannedword-override 580 - urlfilter-override 581 - fortiguard-wf-override 582 - contenttype-check-override 583 post_action: 584 description: 585 - Action taken for HTTP POST traffic. 586 type: str 587 choices: 588 - normal 589 - block 590 replacemsg_group: 591 description: 592 - Replacement message group. Source system.replacemsg-group.name. 593 type: str 594 url_extraction: 595 description: 596 - Configure URL Extraction 597 type: dict 598 suboptions: 599 redirect_header: 600 description: 601 - HTTP header name to use for client redirect on blocked requests 602 type: str 603 redirect_no_content: 604 description: 605 - Enable / Disable empty message-body entity in HTTP response 606 type: str 607 choices: 608 - enable 609 - disable 610 redirect_url: 611 description: 612 - HTTP header value to use for client redirect on blocked requests 613 type: str 614 server_fqdn: 615 description: 616 - URL extraction server FQDN (fully qualified domain name) 617 type: str 618 status: 619 description: 620 - Enable URL Extraction 621 type: str 622 choices: 623 - enable 624 - disable 625 web: 626 description: 627 - Web content filtering settings. 628 type: dict 629 suboptions: 630 allowlist: 631 description: 632 - FortiGuard allowlist settings. 633 type: list 634 choices: 635 - exempt-av 636 - exempt-webcontent 637 - exempt-activex-java-cookie 638 - exempt-dlp 639 - exempt-rangeblock 640 - extended-log-others 641 blacklist: 642 description: 643 - Enable/disable automatic addition of URLs detected by FortiSandbox to blacklist. 644 type: str 645 choices: 646 - enable 647 - disable 648 blocklist: 649 description: 650 - Enable/disable automatic addition of URLs detected by FortiSandbox to blocklist. 651 type: str 652 choices: 653 - enable 654 - disable 655 bword_table: 656 description: 657 - Banned word table ID. Source webfilter.content.id. 658 type: int 659 bword_threshold: 660 description: 661 - Banned word score threshold. 662 type: int 663 content_header_list: 664 description: 665 - Content header list. Source webfilter.content-header.id. 666 type: int 667 keyword_match: 668 description: 669 - Search keywords to log when match is found. 670 type: str 671 suboptions: 672 pattern: 673 description: 674 - Pattern/keyword to search for. 675 required: true 676 type: str 677 log_search: 678 description: 679 - Enable/disable logging all search phrases. 680 type: str 681 choices: 682 - enable 683 - disable 684 safe_search: 685 description: 686 - Safe search type. 687 type: list 688 choices: 689 - url 690 - header 691 urlfilter_table: 692 description: 693 - URL filter table ID. Source webfilter.urlfilter.id. 694 type: int 695 whitelist: 696 description: 697 - FortiGuard whitelist settings. 698 type: list 699 choices: 700 - exempt-av 701 - exempt-webcontent 702 - exempt-activex-java-cookie 703 - exempt-dlp 704 - exempt-rangeblock 705 - extended-log-others 706 youtube_restrict: 707 description: 708 - YouTube EDU filter level. 709 type: str 710 choices: 711 - none 712 - strict 713 - moderate 714 web_antiphishing_log: 715 description: 716 - Enable/disable logging of AntiPhishing checks. 717 type: str 718 choices: 719 - enable 720 - disable 721 web_content_log: 722 description: 723 - Enable/disable logging logging blocked web content. 724 type: str 725 choices: 726 - enable 727 - disable 728 web_extended_all_action_log: 729 description: 730 - Enable/disable extended any filter action logging for web filtering. 731 type: str 732 choices: 733 - enable 734 - disable 735 web_filter_activex_log: 736 description: 737 - Enable/disable logging ActiveX. 738 type: str 739 choices: 740 - enable 741 - disable 742 web_filter_applet_log: 743 description: 744 - Enable/disable logging Java applets. 745 type: str 746 choices: 747 - enable 748 - disable 749 web_filter_command_block_log: 750 description: 751 - Enable/disable logging blocked commands. 752 type: str 753 choices: 754 - enable 755 - disable 756 web_filter_cookie_log: 757 description: 758 - Enable/disable logging cookie filtering. 759 type: str 760 choices: 761 - enable 762 - disable 763 web_filter_cookie_removal_log: 764 description: 765 - Enable/disable logging blocked cookies. 766 type: str 767 choices: 768 - enable 769 - disable 770 web_filter_js_log: 771 description: 772 - Enable/disable logging Java scripts. 773 type: str 774 choices: 775 - enable 776 - disable 777 web_filter_jscript_log: 778 description: 779 - Enable/disable logging JScripts. 780 type: str 781 choices: 782 - enable 783 - disable 784 web_filter_referer_log: 785 description: 786 - Enable/disable logging referrers. 787 type: str 788 choices: 789 - enable 790 - disable 791 web_filter_unknown_log: 792 description: 793 - Enable/disable logging unknown scripts. 794 type: str 795 choices: 796 - enable 797 - disable 798 web_filter_vbs_log: 799 description: 800 - Enable/disable logging VBS scripts. 801 type: str 802 choices: 803 - enable 804 - disable 805 web_ftgd_err_log: 806 description: 807 - Enable/disable logging rating errors. 808 type: str 809 choices: 810 - enable 811 - disable 812 web_ftgd_quota_usage: 813 description: 814 - Enable/disable logging daily quota usage. 815 type: str 816 choices: 817 - enable 818 - disable 819 web_invalid_domain_log: 820 description: 821 - Enable/disable logging invalid domain names. 822 type: str 823 choices: 824 - enable 825 - disable 826 web_url_log: 827 description: 828 - Enable/disable logging URL filtering. 829 type: str 830 choices: 831 - enable 832 - disable 833 wisp: 834 description: 835 - Enable/disable web proxy WISP. 836 type: str 837 choices: 838 - enable 839 - disable 840 wisp_algorithm: 841 description: 842 - WISP server selection algorithm. 843 type: str 844 choices: 845 - primary-secondary 846 - round-robin 847 - auto-learning 848 wisp_servers: 849 description: 850 - WISP servers. 851 type: list 852 suboptions: 853 name: 854 description: 855 - Server name. Source web-proxy.wisp.name. 856 required: true 857 type: str 858 youtube_channel_filter: 859 description: 860 - YouTube channel filter. 861 type: list 862 suboptions: 863 channel_id: 864 description: 865 - YouTube channel ID to be filtered. 866 type: str 867 comment: 868 description: 869 - Comment. 870 type: str 871 id: 872 description: 873 - ID. 874 required: true 875 type: int 876 youtube_channel_status: 877 description: 878 - YouTube channel filter status. 879 type: str 880 choices: 881 - disable 882 - blacklist 883 - whitelist 884''' 885 886EXAMPLES = ''' 887- hosts: fortigates 888 collections: 889 - fortinet.fortios 890 connection: httpapi 891 vars: 892 vdom: "root" 893 ansible_httpapi_use_ssl: yes 894 ansible_httpapi_validate_certs: no 895 ansible_httpapi_port: 443 896 tasks: 897 - name: Configure Web filter profiles. 898 fortios_webfilter_profile: 899 vdom: "{{ vdom }}" 900 state: "present" 901 access_token: "<your_own_value>" 902 webfilter_profile: 903 antiphish: 904 authentication: "domain-controller" 905 check_basic_auth: "enable" 906 check_uri: "enable" 907 check_username_only: "enable" 908 custom_patterns: 909 - 910 category: "username" 911 pattern: "<your_own_value>" 912 type: "regex" 913 default_action: "exempt" 914 domain_controller: "<your_own_value> (source credential-store.domain-controller.server-name)" 915 inspection_entries: 916 - 917 action: "exempt" 918 fortiguard_category: "<your_own_value>" 919 name: "default_name_17" 920 ldap: "<your_own_value> (source user.ldap.name)" 921 max_body_len: "19" 922 status: "enable" 923 comment: "Optional comments." 924 extended_log: "enable" 925 feature_set: "flow" 926 file_filter: 927 entries: 928 - 929 action: "log" 930 comment: "Comment." 931 direction: "incoming" 932 file_type: 933 - 934 name: "default_name_30 (source antivirus.filetype.name)" 935 filter: "<your_own_value>" 936 password_protected: "yes" 937 protocol: "http" 938 log: "enable" 939 scan_archive_contents: "enable" 940 status: "enable" 941 ftgd_wf: 942 exempt_quota: "<your_own_value>" 943 filters: 944 - 945 action: "block" 946 auth_usr_grp: 947 - 948 name: "default_name_42 (source user.group.name)" 949 category: "43" 950 id: "44" 951 log: "enable" 952 override_replacemsg: "<your_own_value>" 953 warn_duration: "<your_own_value>" 954 warning_duration_type: "session" 955 warning_prompt: "per-domain" 956 max_quota_timeout: "50" 957 options: "error-allow" 958 ovrd: "<your_own_value>" 959 quota: 960 - 961 category: "<your_own_value>" 962 duration: "<your_own_value>" 963 id: "56" 964 override_replacemsg: "<your_own_value>" 965 type: "time" 966 unit: "B" 967 value: "60" 968 rate_crl_urls: "disable" 969 rate_css_urls: "disable" 970 rate_image_urls: "disable" 971 rate_javascript_urls: "disable" 972 https_replacemsg: "enable" 973 inspection_mode: "proxy" 974 log_all_url: "enable" 975 name: "default_name_68" 976 options: "activexfilter" 977 override: 978 ovrd_cookie: "allow" 979 ovrd_dur: "<your_own_value>" 980 ovrd_dur_mode: "constant" 981 ovrd_scope: "user" 982 ovrd_user_group: 983 - 984 name: "default_name_76 (source user.group.name)" 985 profile: 986 - 987 name: "default_name_78 (source webfilter.profile.name)" 988 profile_attribute: "User-Name" 989 profile_type: "list" 990 ovrd_perm: "bannedword-override" 991 post_action: "normal" 992 replacemsg_group: "<your_own_value> (source system.replacemsg-group.name)" 993 url_extraction: 994 redirect_header: "<your_own_value>" 995 redirect_no_content: "enable" 996 redirect_url: "<your_own_value>" 997 server_fqdn: "<your_own_value>" 998 status: "enable" 999 web: 1000 allowlist: "exempt-av" 1001 blacklist: "enable" 1002 blocklist: "enable" 1003 bword_table: "94 (source webfilter.content.id)" 1004 bword_threshold: "95" 1005 content_header_list: "96 (source webfilter.content-header.id)" 1006 keyword_match: 1007 - 1008 pattern: "<your_own_value>" 1009 log_search: "enable" 1010 safe_search: "url" 1011 urlfilter_table: "101 (source webfilter.urlfilter.id)" 1012 whitelist: "exempt-av" 1013 youtube_restrict: "none" 1014 web_antiphishing_log: "enable" 1015 web_content_log: "enable" 1016 web_extended_all_action_log: "enable" 1017 web_filter_activex_log: "enable" 1018 web_filter_applet_log: "enable" 1019 web_filter_command_block_log: "enable" 1020 web_filter_cookie_log: "enable" 1021 web_filter_cookie_removal_log: "enable" 1022 web_filter_js_log: "enable" 1023 web_filter_jscript_log: "enable" 1024 web_filter_referer_log: "enable" 1025 web_filter_unknown_log: "enable" 1026 web_filter_vbs_log: "enable" 1027 web_ftgd_err_log: "enable" 1028 web_ftgd_quota_usage: "enable" 1029 web_invalid_domain_log: "enable" 1030 web_url_log: "enable" 1031 wisp: "enable" 1032 wisp_algorithm: "primary-secondary" 1033 wisp_servers: 1034 - 1035 name: "default_name_124 (source web-proxy.wisp.name)" 1036 youtube_channel_filter: 1037 - 1038 channel_id: "<your_own_value>" 1039 comment: "Comment." 1040 id: "128" 1041 youtube_channel_status: "disable" 1042 1043''' 1044 1045RETURN = ''' 1046build: 1047 description: Build number of the fortigate image 1048 returned: always 1049 type: str 1050 sample: '1547' 1051http_method: 1052 description: Last method used to provision the content into FortiGate 1053 returned: always 1054 type: str 1055 sample: 'PUT' 1056http_status: 1057 description: Last result given by FortiGate on last operation applied 1058 returned: always 1059 type: str 1060 sample: "200" 1061mkey: 1062 description: Master key (id) used in the last call to FortiGate 1063 returned: success 1064 type: str 1065 sample: "id" 1066name: 1067 description: Name of the table used to fulfill the request 1068 returned: always 1069 type: str 1070 sample: "urlfilter" 1071path: 1072 description: Path of the table used to fulfill the request 1073 returned: always 1074 type: str 1075 sample: "webfilter" 1076revision: 1077 description: Internal revision number 1078 returned: always 1079 type: str 1080 sample: "17.0.2.10658" 1081serial: 1082 description: Serial number of the unit 1083 returned: always 1084 type: str 1085 sample: "FGVMEVYYQT3AB5352" 1086status: 1087 description: Indication of the operation's result 1088 returned: always 1089 type: str 1090 sample: "success" 1091vdom: 1092 description: Virtual domain used 1093 returned: always 1094 type: str 1095 sample: "root" 1096version: 1097 description: Version of the FortiGate 1098 returned: always 1099 type: str 1100 sample: "v5.6.3" 1101 1102''' 1103from ansible.module_utils.basic import AnsibleModule 1104from ansible.module_utils.connection import Connection 1105from ansible_collections.fortinet.fortios.plugins.module_utils.fortios.fortios import FortiOSHandler 1106from ansible_collections.fortinet.fortios.plugins.module_utils.fortios.fortios import check_legacy_fortiosapi 1107from ansible_collections.fortinet.fortios.plugins.module_utils.fortios.fortios import schema_to_module_spec 1108from ansible_collections.fortinet.fortios.plugins.module_utils.fortios.fortios import check_schema_versioning 1109from ansible_collections.fortinet.fortios.plugins.module_utils.fortimanager.common import FAIL_SOCKET_MSG 1110from ansible_collections.fortinet.fortios.plugins.module_utils.fortios.comparison import is_same_comparison 1111from ansible_collections.fortinet.fortios.plugins.module_utils.fortios.comparison import serialize 1112 1113 1114def filter_webfilter_profile_data(json): 1115 option_list = ['antiphish', 'comment', 'extended_log', 1116 'feature_set', 'file_filter', 'ftgd_wf', 1117 'https_replacemsg', 'inspection_mode', 'log_all_url', 1118 'name', 'options', 'override', 1119 'ovrd_perm', 'post_action', 'replacemsg_group', 1120 'url_extraction', 'web', 'web_antiphishing_log', 1121 'web_content_log', 'web_extended_all_action_log', 'web_filter_activex_log', 1122 'web_filter_applet_log', 'web_filter_command_block_log', 'web_filter_cookie_log', 1123 'web_filter_cookie_removal_log', 'web_filter_js_log', 'web_filter_jscript_log', 1124 'web_filter_referer_log', 'web_filter_unknown_log', 'web_filter_vbs_log', 1125 'web_ftgd_err_log', 'web_ftgd_quota_usage', 'web_invalid_domain_log', 1126 'web_url_log', 'wisp', 'wisp_algorithm', 1127 'wisp_servers', 'youtube_channel_filter', 'youtube_channel_status'] 1128 dictionary = {} 1129 1130 for attribute in option_list: 1131 if attribute in json and json[attribute] is not None: 1132 dictionary[attribute] = json[attribute] 1133 1134 return dictionary 1135 1136 1137def flatten_single_path(data, path, index): 1138 if not data or index == len(path) or path[index] not in data or not data[path[index]]: 1139 return 1140 1141 if index == len(path) - 1: 1142 data[path[index]] = ' '.join(str(elem) for elem in data[path[index]]) 1143 elif isinstance(data[path[index]], list): 1144 for value in data[path[index]]: 1145 flatten_single_path(value, path, index + 1) 1146 else: 1147 flatten_single_path(data[path[index]], path, index + 1) 1148 1149 1150def flatten_multilists_attributes(data): 1151 multilist_attrs = [[u'ovrd_perm'], [u'web', u'safe_search'], [u'web', u'whitelist'], [u'web', u'allowlist'], [u'ftgd_wf', u'options'], [u'file_filter', 1152 u'entries', u'protocol'], [u'options']] 1153 1154 for attr in multilist_attrs: 1155 flatten_single_path(data, attr, 0) 1156 1157 return data 1158 1159 1160def underscore_to_hyphen(data): 1161 if isinstance(data, list): 1162 for i, elem in enumerate(data): 1163 data[i] = underscore_to_hyphen(elem) 1164 elif isinstance(data, dict): 1165 new_data = {} 1166 for k, v in data.items(): 1167 new_data[k.replace('_', '-')] = underscore_to_hyphen(v) 1168 data = new_data 1169 1170 return data 1171 1172 1173def webfilter_profile(data, fos, check_mode=False): 1174 1175 vdom = data['vdom'] 1176 1177 state = data['state'] 1178 1179 webfilter_profile_data = data['webfilter_profile'] 1180 webfilter_profile_data = flatten_multilists_attributes(webfilter_profile_data) 1181 filtered_data = underscore_to_hyphen(filter_webfilter_profile_data(webfilter_profile_data)) 1182 1183 # check_mode starts from here 1184 if check_mode: 1185 mkey = fos.get_mkey('system', 'interface', filtered_data, vdom=vdom) 1186 current_data = fos.get('system', 'interface', vdom=vdom, mkey=mkey) 1187 is_existed = current_data and current_data.get('http_status') == 200 \ 1188 and isinstance(current_data.get('results'), list) \ 1189 and len(current_data['results']) > 0 1190 1191 # 2. if it exists and the state is 'present' then compare current settings with desired 1192 if state == 'present' or state is True: 1193 if mkey is None: 1194 return False, True, filtered_data 1195 1196 # if mkey exists then compare each other 1197 # record exits and they're matched or not 1198 if is_existed: 1199 is_same = is_same_comparison( 1200 serialize(current_data['results'][0]), serialize(filtered_data)) 1201 return False, not is_same, filtered_data 1202 1203 # record does not exist 1204 return False, True, filtered_data 1205 1206 if state == 'absent': 1207 if mkey is None: 1208 return False, False, filtered_data 1209 1210 if is_existed: 1211 return False, True, filtered_data 1212 return False, False, filtered_data 1213 1214 return True, False, {'reason: ': 'Must provide state parameter'} 1215 1216 if state == "present" or state is True: 1217 return fos.set('webfilter', 1218 'profile', 1219 data=filtered_data, 1220 vdom=vdom) 1221 1222 elif state == "absent": 1223 return fos.delete('webfilter', 1224 'profile', 1225 mkey=filtered_data['name'], 1226 vdom=vdom) 1227 else: 1228 fos._module.fail_json(msg='state must be present or absent!') 1229 1230 1231def is_successful_status(status): 1232 return status['status'] == "success" or \ 1233 status['http_method'] == "DELETE" and status['http_status'] == 404 1234 1235 1236def fortios_webfilter(data, fos, check_mode): 1237 1238 if data['webfilter_profile']: 1239 resp = webfilter_profile(data, fos, check_mode) 1240 else: 1241 fos._module.fail_json(msg='missing task body: %s' % ('webfilter_profile')) 1242 if check_mode: 1243 return resp 1244 return not is_successful_status(resp), \ 1245 resp['status'] == "success" and \ 1246 (resp['revision_changed'] if 'revision_changed' in resp else True), \ 1247 resp 1248 1249 1250versioned_schema = { 1251 "type": "list", 1252 "children": { 1253 "comment": { 1254 "type": "string", 1255 "revisions": { 1256 "v6.0.0": True, 1257 "v7.0.0": True, 1258 "v6.0.5": True, 1259 "v6.4.4": True, 1260 "v6.4.0": True, 1261 "v6.4.1": True, 1262 "v6.2.0": True, 1263 "v6.2.3": True, 1264 "v6.2.5": True, 1265 "v6.2.7": True, 1266 "v6.0.11": True 1267 } 1268 }, 1269 "feature_set": { 1270 "type": "string", 1271 "options": [ 1272 { 1273 "value": "flow", 1274 "revisions": { 1275 "v6.4.4": True, 1276 "v7.0.0": True, 1277 "v6.4.0": True, 1278 "v6.4.1": True 1279 } 1280 }, 1281 { 1282 "value": "proxy", 1283 "revisions": { 1284 "v6.4.4": True, 1285 "v7.0.0": True, 1286 "v6.4.0": True, 1287 "v6.4.1": True 1288 } 1289 } 1290 ], 1291 "revisions": { 1292 "v6.4.4": True, 1293 "v7.0.0": True, 1294 "v6.4.0": True, 1295 "v6.4.1": True 1296 } 1297 }, 1298 "web_filter_referer_log": { 1299 "type": "string", 1300 "options": [ 1301 { 1302 "value": "enable", 1303 "revisions": { 1304 "v6.0.0": True, 1305 "v7.0.0": True, 1306 "v6.0.5": True, 1307 "v6.4.4": True, 1308 "v6.4.0": True, 1309 "v6.4.1": True, 1310 "v6.2.0": True, 1311 "v6.2.3": True, 1312 "v6.2.5": True, 1313 "v6.2.7": True, 1314 "v6.0.11": True 1315 } 1316 }, 1317 { 1318 "value": "disable", 1319 "revisions": { 1320 "v6.0.0": True, 1321 "v7.0.0": True, 1322 "v6.0.5": True, 1323 "v6.4.4": True, 1324 "v6.4.0": True, 1325 "v6.4.1": True, 1326 "v6.2.0": True, 1327 "v6.2.3": True, 1328 "v6.2.5": True, 1329 "v6.2.7": True, 1330 "v6.0.11": True 1331 } 1332 } 1333 ], 1334 "revisions": { 1335 "v6.0.0": True, 1336 "v7.0.0": True, 1337 "v6.0.5": True, 1338 "v6.4.4": True, 1339 "v6.4.0": True, 1340 "v6.4.1": True, 1341 "v6.2.0": True, 1342 "v6.2.3": True, 1343 "v6.2.5": True, 1344 "v6.2.7": True, 1345 "v6.0.11": True 1346 } 1347 }, 1348 "web_filter_activex_log": { 1349 "type": "string", 1350 "options": [ 1351 { 1352 "value": "enable", 1353 "revisions": { 1354 "v6.0.0": True, 1355 "v7.0.0": True, 1356 "v6.0.5": True, 1357 "v6.4.4": True, 1358 "v6.4.0": True, 1359 "v6.4.1": True, 1360 "v6.2.0": True, 1361 "v6.2.3": True, 1362 "v6.2.5": True, 1363 "v6.2.7": True, 1364 "v6.0.11": True 1365 } 1366 }, 1367 { 1368 "value": "disable", 1369 "revisions": { 1370 "v6.0.0": True, 1371 "v7.0.0": True, 1372 "v6.0.5": True, 1373 "v6.4.4": True, 1374 "v6.4.0": True, 1375 "v6.4.1": True, 1376 "v6.2.0": True, 1377 "v6.2.3": True, 1378 "v6.2.5": True, 1379 "v6.2.7": True, 1380 "v6.0.11": True 1381 } 1382 } 1383 ], 1384 "revisions": { 1385 "v6.0.0": True, 1386 "v7.0.0": True, 1387 "v6.0.5": True, 1388 "v6.4.4": True, 1389 "v6.4.0": True, 1390 "v6.4.1": True, 1391 "v6.2.0": True, 1392 "v6.2.3": True, 1393 "v6.2.5": True, 1394 "v6.2.7": True, 1395 "v6.0.11": True 1396 } 1397 }, 1398 "web_filter_jscript_log": { 1399 "type": "string", 1400 "options": [ 1401 { 1402 "value": "enable", 1403 "revisions": { 1404 "v6.0.0": True, 1405 "v7.0.0": True, 1406 "v6.0.5": True, 1407 "v6.4.4": True, 1408 "v6.4.0": True, 1409 "v6.4.1": True, 1410 "v6.2.0": True, 1411 "v6.2.3": True, 1412 "v6.2.5": True, 1413 "v6.2.7": True, 1414 "v6.0.11": True 1415 } 1416 }, 1417 { 1418 "value": "disable", 1419 "revisions": { 1420 "v6.0.0": True, 1421 "v7.0.0": True, 1422 "v6.0.5": True, 1423 "v6.4.4": True, 1424 "v6.4.0": True, 1425 "v6.4.1": True, 1426 "v6.2.0": True, 1427 "v6.2.3": True, 1428 "v6.2.5": True, 1429 "v6.2.7": True, 1430 "v6.0.11": True 1431 } 1432 } 1433 ], 1434 "revisions": { 1435 "v6.0.0": True, 1436 "v7.0.0": True, 1437 "v6.0.5": True, 1438 "v6.4.4": True, 1439 "v6.4.0": True, 1440 "v6.4.1": True, 1441 "v6.2.0": True, 1442 "v6.2.3": True, 1443 "v6.2.5": True, 1444 "v6.2.7": True, 1445 "v6.0.11": True 1446 } 1447 }, 1448 "replacemsg_group": { 1449 "type": "string", 1450 "revisions": { 1451 "v6.0.0": True, 1452 "v7.0.0": True, 1453 "v6.0.5": True, 1454 "v6.4.4": True, 1455 "v6.4.0": True, 1456 "v6.4.1": True, 1457 "v6.2.0": True, 1458 "v6.2.3": True, 1459 "v6.2.5": True, 1460 "v6.2.7": True, 1461 "v6.0.11": True 1462 } 1463 }, 1464 "web_url_log": { 1465 "type": "string", 1466 "options": [ 1467 { 1468 "value": "enable", 1469 "revisions": { 1470 "v6.0.0": True, 1471 "v7.0.0": True, 1472 "v6.0.5": True, 1473 "v6.4.4": True, 1474 "v6.4.0": True, 1475 "v6.4.1": True, 1476 "v6.2.0": True, 1477 "v6.2.3": True, 1478 "v6.2.5": True, 1479 "v6.2.7": True, 1480 "v6.0.11": True 1481 } 1482 }, 1483 { 1484 "value": "disable", 1485 "revisions": { 1486 "v6.0.0": True, 1487 "v7.0.0": True, 1488 "v6.0.5": True, 1489 "v6.4.4": True, 1490 "v6.4.0": True, 1491 "v6.4.1": True, 1492 "v6.2.0": True, 1493 "v6.2.3": True, 1494 "v6.2.5": True, 1495 "v6.2.7": True, 1496 "v6.0.11": True 1497 } 1498 } 1499 ], 1500 "revisions": { 1501 "v6.0.0": True, 1502 "v7.0.0": True, 1503 "v6.0.5": True, 1504 "v6.4.4": True, 1505 "v6.4.0": True, 1506 "v6.4.1": True, 1507 "v6.2.0": True, 1508 "v6.2.3": True, 1509 "v6.2.5": True, 1510 "v6.2.7": True, 1511 "v6.0.11": True 1512 } 1513 }, 1514 "wisp_algorithm": { 1515 "type": "string", 1516 "options": [ 1517 { 1518 "value": "primary-secondary", 1519 "revisions": { 1520 "v6.0.0": True, 1521 "v7.0.0": True, 1522 "v6.0.5": True, 1523 "v6.4.4": True, 1524 "v6.4.0": True, 1525 "v6.4.1": True, 1526 "v6.2.0": True, 1527 "v6.2.3": True, 1528 "v6.2.5": True, 1529 "v6.2.7": True, 1530 "v6.0.11": True 1531 } 1532 }, 1533 { 1534 "value": "round-robin", 1535 "revisions": { 1536 "v6.0.0": True, 1537 "v7.0.0": True, 1538 "v6.0.5": True, 1539 "v6.4.4": True, 1540 "v6.4.0": True, 1541 "v6.4.1": True, 1542 "v6.2.0": True, 1543 "v6.2.3": True, 1544 "v6.2.5": True, 1545 "v6.2.7": True, 1546 "v6.0.11": True 1547 } 1548 }, 1549 { 1550 "value": "auto-learning", 1551 "revisions": { 1552 "v6.0.0": True, 1553 "v7.0.0": True, 1554 "v6.0.5": True, 1555 "v6.4.4": True, 1556 "v6.4.0": True, 1557 "v6.4.1": True, 1558 "v6.2.0": True, 1559 "v6.2.3": True, 1560 "v6.2.5": True, 1561 "v6.2.7": True, 1562 "v6.0.11": True 1563 } 1564 } 1565 ], 1566 "revisions": { 1567 "v6.0.0": True, 1568 "v7.0.0": True, 1569 "v6.0.5": True, 1570 "v6.4.4": True, 1571 "v6.4.0": True, 1572 "v6.4.1": True, 1573 "v6.2.0": True, 1574 "v6.2.3": True, 1575 "v6.2.5": True, 1576 "v6.2.7": True, 1577 "v6.0.11": True 1578 } 1579 }, 1580 "url_extraction": { 1581 "type": "dict", 1582 "children": { 1583 "status": { 1584 "type": "string", 1585 "options": [ 1586 { 1587 "value": "enable", 1588 "revisions": { 1589 "v6.0.0": True, 1590 "v7.0.0": True, 1591 "v6.0.5": True, 1592 "v6.4.4": True, 1593 "v6.4.0": True, 1594 "v6.4.1": True, 1595 "v6.2.0": True, 1596 "v6.2.3": True, 1597 "v6.2.5": True, 1598 "v6.2.7": True, 1599 "v6.0.11": True 1600 } 1601 }, 1602 { 1603 "value": "disable", 1604 "revisions": { 1605 "v6.0.0": True, 1606 "v7.0.0": True, 1607 "v6.0.5": True, 1608 "v6.4.4": True, 1609 "v6.4.0": True, 1610 "v6.4.1": True, 1611 "v6.2.0": True, 1612 "v6.2.3": True, 1613 "v6.2.5": True, 1614 "v6.2.7": True, 1615 "v6.0.11": True 1616 } 1617 } 1618 ], 1619 "revisions": { 1620 "v6.0.0": True, 1621 "v7.0.0": True, 1622 "v6.0.5": True, 1623 "v6.4.4": True, 1624 "v6.4.0": True, 1625 "v6.4.1": True, 1626 "v6.2.0": True, 1627 "v6.2.3": True, 1628 "v6.2.5": True, 1629 "v6.2.7": True, 1630 "v6.0.11": True 1631 } 1632 }, 1633 "redirect_no_content": { 1634 "type": "string", 1635 "options": [ 1636 { 1637 "value": "enable", 1638 "revisions": { 1639 "v6.0.0": True, 1640 "v7.0.0": True, 1641 "v6.0.5": True, 1642 "v6.4.4": True, 1643 "v6.4.0": True, 1644 "v6.4.1": True, 1645 "v6.2.0": True, 1646 "v6.2.3": True, 1647 "v6.2.5": True, 1648 "v6.2.7": True, 1649 "v6.0.11": True 1650 } 1651 }, 1652 { 1653 "value": "disable", 1654 "revisions": { 1655 "v6.0.0": True, 1656 "v7.0.0": True, 1657 "v6.0.5": True, 1658 "v6.4.4": True, 1659 "v6.4.0": True, 1660 "v6.4.1": True, 1661 "v6.2.0": True, 1662 "v6.2.3": True, 1663 "v6.2.5": True, 1664 "v6.2.7": True, 1665 "v6.0.11": True 1666 } 1667 } 1668 ], 1669 "revisions": { 1670 "v6.0.0": True, 1671 "v7.0.0": True, 1672 "v6.0.5": True, 1673 "v6.4.4": True, 1674 "v6.4.0": True, 1675 "v6.4.1": True, 1676 "v6.2.0": True, 1677 "v6.2.3": True, 1678 "v6.2.5": True, 1679 "v6.2.7": True, 1680 "v6.0.11": True 1681 } 1682 }, 1683 "redirect_url": { 1684 "type": "string", 1685 "revisions": { 1686 "v6.0.0": True, 1687 "v7.0.0": True, 1688 "v6.0.5": True, 1689 "v6.4.4": True, 1690 "v6.4.0": True, 1691 "v6.4.1": True, 1692 "v6.2.0": True, 1693 "v6.2.3": True, 1694 "v6.2.5": True, 1695 "v6.2.7": True, 1696 "v6.0.11": True 1697 } 1698 }, 1699 "server_fqdn": { 1700 "type": "string", 1701 "revisions": { 1702 "v6.0.0": True, 1703 "v7.0.0": True, 1704 "v6.0.5": True, 1705 "v6.4.4": True, 1706 "v6.4.0": True, 1707 "v6.4.1": True, 1708 "v6.2.0": True, 1709 "v6.2.3": True, 1710 "v6.2.5": True, 1711 "v6.2.7": True, 1712 "v6.0.11": True 1713 } 1714 }, 1715 "redirect_header": { 1716 "type": "string", 1717 "revisions": { 1718 "v6.0.0": True, 1719 "v7.0.0": True, 1720 "v6.0.5": True, 1721 "v6.4.4": True, 1722 "v6.4.0": True, 1723 "v6.4.1": True, 1724 "v6.2.0": True, 1725 "v6.2.3": True, 1726 "v6.2.5": True, 1727 "v6.2.7": True, 1728 "v6.0.11": True 1729 } 1730 } 1731 }, 1732 "revisions": { 1733 "v6.0.0": True, 1734 "v7.0.0": False, 1735 "v6.0.5": True, 1736 "v6.4.4": True, 1737 "v6.4.0": True, 1738 "v6.4.1": True, 1739 "v6.2.0": True, 1740 "v6.2.3": True, 1741 "v6.2.5": True, 1742 "v6.2.7": True, 1743 "v6.0.11": True 1744 } 1745 }, 1746 "web_filter_unknown_log": { 1747 "type": "string", 1748 "options": [ 1749 { 1750 "value": "enable", 1751 "revisions": { 1752 "v6.0.0": True, 1753 "v7.0.0": True, 1754 "v6.0.5": True, 1755 "v6.4.4": True, 1756 "v6.4.0": True, 1757 "v6.4.1": True, 1758 "v6.2.0": True, 1759 "v6.2.3": True, 1760 "v6.2.5": True, 1761 "v6.2.7": True, 1762 "v6.0.11": True 1763 } 1764 }, 1765 { 1766 "value": "disable", 1767 "revisions": { 1768 "v6.0.0": True, 1769 "v7.0.0": True, 1770 "v6.0.5": True, 1771 "v6.4.4": True, 1772 "v6.4.0": True, 1773 "v6.4.1": True, 1774 "v6.2.0": True, 1775 "v6.2.3": True, 1776 "v6.2.5": True, 1777 "v6.2.7": True, 1778 "v6.0.11": True 1779 } 1780 } 1781 ], 1782 "revisions": { 1783 "v6.0.0": True, 1784 "v7.0.0": True, 1785 "v6.0.5": True, 1786 "v6.4.4": True, 1787 "v6.4.0": True, 1788 "v6.4.1": True, 1789 "v6.2.0": True, 1790 "v6.2.3": True, 1791 "v6.2.5": True, 1792 "v6.2.7": True, 1793 "v6.0.11": True 1794 } 1795 }, 1796 "ovrd_perm": { 1797 "multiple_values": True, 1798 "type": "list", 1799 "options": [ 1800 { 1801 "value": "bannedword-override", 1802 "revisions": { 1803 "v6.0.0": True, 1804 "v7.0.0": True, 1805 "v6.0.5": True, 1806 "v6.4.4": True, 1807 "v6.4.0": True, 1808 "v6.4.1": True, 1809 "v6.2.0": True, 1810 "v6.2.3": True, 1811 "v6.2.5": True, 1812 "v6.2.7": True, 1813 "v6.0.11": True 1814 } 1815 }, 1816 { 1817 "value": "urlfilter-override", 1818 "revisions": { 1819 "v6.0.0": True, 1820 "v7.0.0": True, 1821 "v6.0.5": True, 1822 "v6.4.4": True, 1823 "v6.4.0": True, 1824 "v6.4.1": True, 1825 "v6.2.0": True, 1826 "v6.2.3": True, 1827 "v6.2.5": True, 1828 "v6.2.7": True, 1829 "v6.0.11": True 1830 } 1831 }, 1832 { 1833 "value": "fortiguard-wf-override", 1834 "revisions": { 1835 "v6.0.0": True, 1836 "v7.0.0": True, 1837 "v6.0.5": True, 1838 "v6.4.4": True, 1839 "v6.4.0": True, 1840 "v6.4.1": True, 1841 "v6.2.0": True, 1842 "v6.2.3": True, 1843 "v6.2.5": True, 1844 "v6.2.7": True, 1845 "v6.0.11": True 1846 } 1847 }, 1848 { 1849 "value": "contenttype-check-override", 1850 "revisions": { 1851 "v6.0.0": True, 1852 "v7.0.0": True, 1853 "v6.0.5": True, 1854 "v6.4.4": True, 1855 "v6.4.0": True, 1856 "v6.4.1": True, 1857 "v6.2.0": True, 1858 "v6.2.3": True, 1859 "v6.2.5": True, 1860 "v6.2.7": True, 1861 "v6.0.11": True 1862 } 1863 } 1864 ], 1865 "revisions": { 1866 "v6.0.0": True, 1867 "v7.0.0": True, 1868 "v6.0.5": True, 1869 "v6.4.4": True, 1870 "v6.4.0": True, 1871 "v6.4.1": True, 1872 "v6.2.0": True, 1873 "v6.2.3": True, 1874 "v6.2.5": True, 1875 "v6.2.7": True, 1876 "v6.0.11": True 1877 } 1878 }, 1879 "web_filter_applet_log": { 1880 "type": "string", 1881 "options": [ 1882 { 1883 "value": "enable", 1884 "revisions": { 1885 "v6.0.0": True, 1886 "v7.0.0": True, 1887 "v6.0.5": True, 1888 "v6.4.4": True, 1889 "v6.4.0": True, 1890 "v6.4.1": True, 1891 "v6.2.0": True, 1892 "v6.2.3": True, 1893 "v6.2.5": True, 1894 "v6.2.7": True, 1895 "v6.0.11": True 1896 } 1897 }, 1898 { 1899 "value": "disable", 1900 "revisions": { 1901 "v6.0.0": True, 1902 "v7.0.0": True, 1903 "v6.0.5": True, 1904 "v6.4.4": True, 1905 "v6.4.0": True, 1906 "v6.4.1": True, 1907 "v6.2.0": True, 1908 "v6.2.3": True, 1909 "v6.2.5": True, 1910 "v6.2.7": True, 1911 "v6.0.11": True 1912 } 1913 } 1914 ], 1915 "revisions": { 1916 "v6.0.0": True, 1917 "v7.0.0": True, 1918 "v6.0.5": True, 1919 "v6.4.4": True, 1920 "v6.4.0": True, 1921 "v6.4.1": True, 1922 "v6.2.0": True, 1923 "v6.2.3": True, 1924 "v6.2.5": True, 1925 "v6.2.7": True, 1926 "v6.0.11": True 1927 } 1928 }, 1929 "web_filter_cookie_removal_log": { 1930 "type": "string", 1931 "options": [ 1932 { 1933 "value": "enable", 1934 "revisions": { 1935 "v6.0.0": True, 1936 "v7.0.0": True, 1937 "v6.0.5": True, 1938 "v6.4.4": True, 1939 "v6.4.0": True, 1940 "v6.4.1": True, 1941 "v6.2.0": True, 1942 "v6.2.3": True, 1943 "v6.2.5": True, 1944 "v6.2.7": True, 1945 "v6.0.11": True 1946 } 1947 }, 1948 { 1949 "value": "disable", 1950 "revisions": { 1951 "v6.0.0": True, 1952 "v7.0.0": True, 1953 "v6.0.5": True, 1954 "v6.4.4": True, 1955 "v6.4.0": True, 1956 "v6.4.1": True, 1957 "v6.2.0": True, 1958 "v6.2.3": True, 1959 "v6.2.5": True, 1960 "v6.2.7": True, 1961 "v6.0.11": True 1962 } 1963 } 1964 ], 1965 "revisions": { 1966 "v6.0.0": True, 1967 "v7.0.0": True, 1968 "v6.0.5": True, 1969 "v6.4.4": True, 1970 "v6.4.0": True, 1971 "v6.4.1": True, 1972 "v6.2.0": True, 1973 "v6.2.3": True, 1974 "v6.2.5": True, 1975 "v6.2.7": True, 1976 "v6.0.11": True 1977 } 1978 }, 1979 "web": { 1980 "type": "dict", 1981 "children": { 1982 "bword_threshold": { 1983 "type": "integer", 1984 "revisions": { 1985 "v6.0.0": True, 1986 "v7.0.0": True, 1987 "v6.0.5": True, 1988 "v6.4.4": True, 1989 "v6.4.0": True, 1990 "v6.4.1": True, 1991 "v6.2.0": True, 1992 "v6.2.3": True, 1993 "v6.2.5": True, 1994 "v6.2.7": True, 1995 "v6.0.11": True 1996 } 1997 }, 1998 "blocklist": { 1999 "type": "string", 2000 "options": [ 2001 { 2002 "value": "enable", 2003 "revisions": { 2004 "v7.0.0": True 2005 } 2006 }, 2007 { 2008 "value": "disable", 2009 "revisions": { 2010 "v7.0.0": True 2011 } 2012 } 2013 ], 2014 "revisions": { 2015 "v7.0.0": True 2016 } 2017 }, 2018 "youtube_restrict": { 2019 "type": "string", 2020 "options": [ 2021 { 2022 "value": "none", 2023 "revisions": { 2024 "v6.0.0": True, 2025 "v6.0.5": True, 2026 "v6.4.4": True, 2027 "v6.4.0": True, 2028 "v6.4.1": True, 2029 "v6.2.0": True, 2030 "v6.2.3": True, 2031 "v6.2.5": True, 2032 "v6.2.7": True, 2033 "v6.0.11": True 2034 } 2035 }, 2036 { 2037 "value": "strict", 2038 "revisions": { 2039 "v6.0.0": True, 2040 "v6.0.5": True, 2041 "v6.4.4": True, 2042 "v6.4.0": True, 2043 "v6.4.1": True, 2044 "v6.2.0": True, 2045 "v6.2.3": True, 2046 "v6.2.5": True, 2047 "v6.2.7": True, 2048 "v6.0.11": True 2049 } 2050 }, 2051 { 2052 "value": "moderate", 2053 "revisions": { 2054 "v6.0.0": True, 2055 "v6.0.5": True, 2056 "v6.4.4": True, 2057 "v6.4.0": True, 2058 "v6.4.1": True, 2059 "v6.2.0": True, 2060 "v6.2.3": True, 2061 "v6.2.5": True, 2062 "v6.2.7": True, 2063 "v6.0.11": True 2064 } 2065 } 2066 ], 2067 "revisions": { 2068 "v6.0.0": True, 2069 "v7.0.0": False, 2070 "v6.0.5": True, 2071 "v6.4.4": True, 2072 "v6.4.0": True, 2073 "v6.4.1": True, 2074 "v6.2.0": True, 2075 "v6.2.3": True, 2076 "v6.2.5": True, 2077 "v6.2.7": True, 2078 "v6.0.11": True 2079 } 2080 }, 2081 "urlfilter_table": { 2082 "type": "integer", 2083 "revisions": { 2084 "v6.0.0": True, 2085 "v7.0.0": True, 2086 "v6.0.5": True, 2087 "v6.4.4": True, 2088 "v6.4.0": True, 2089 "v6.4.1": True, 2090 "v6.2.0": True, 2091 "v6.2.3": True, 2092 "v6.2.5": True, 2093 "v6.2.7": True, 2094 "v6.0.11": True 2095 } 2096 }, 2097 "bword_table": { 2098 "type": "integer", 2099 "revisions": { 2100 "v6.0.0": True, 2101 "v7.0.0": True, 2102 "v6.0.5": True, 2103 "v6.4.4": True, 2104 "v6.4.0": True, 2105 "v6.4.1": True, 2106 "v6.2.0": True, 2107 "v6.2.3": True, 2108 "v6.2.5": True, 2109 "v6.2.7": True, 2110 "v6.0.11": True 2111 } 2112 }, 2113 "safe_search": { 2114 "multiple_values": True, 2115 "type": "list", 2116 "options": [ 2117 { 2118 "value": "url", 2119 "revisions": { 2120 "v6.0.0": True, 2121 "v7.0.0": True, 2122 "v6.0.5": True, 2123 "v6.4.4": True, 2124 "v6.4.0": True, 2125 "v6.4.1": True, 2126 "v6.2.0": True, 2127 "v6.2.3": True, 2128 "v6.2.5": True, 2129 "v6.2.7": True, 2130 "v6.0.11": True 2131 } 2132 }, 2133 { 2134 "value": "header", 2135 "revisions": { 2136 "v6.0.0": True, 2137 "v7.0.0": True, 2138 "v6.0.5": True, 2139 "v6.4.4": True, 2140 "v6.4.0": True, 2141 "v6.4.1": True, 2142 "v6.2.0": True, 2143 "v6.2.3": True, 2144 "v6.2.5": True, 2145 "v6.2.7": True, 2146 "v6.0.11": True 2147 } 2148 } 2149 ], 2150 "revisions": { 2151 "v6.0.0": True, 2152 "v7.0.0": True, 2153 "v6.0.5": True, 2154 "v6.4.4": True, 2155 "v6.4.0": True, 2156 "v6.4.1": True, 2157 "v6.2.0": True, 2158 "v6.2.3": True, 2159 "v6.2.5": True, 2160 "v6.2.7": True, 2161 "v6.0.11": True 2162 } 2163 }, 2164 "whitelist": { 2165 "multiple_values": True, 2166 "type": "list", 2167 "options": [ 2168 { 2169 "value": "exempt-av", 2170 "revisions": { 2171 "v6.0.0": True, 2172 "v6.0.5": True, 2173 "v6.4.4": True, 2174 "v6.4.0": True, 2175 "v6.4.1": True, 2176 "v6.2.0": True, 2177 "v6.2.3": True, 2178 "v6.2.5": True, 2179 "v6.2.7": True, 2180 "v6.0.11": True 2181 } 2182 }, 2183 { 2184 "value": "exempt-webcontent", 2185 "revisions": { 2186 "v6.0.0": True, 2187 "v6.0.5": True, 2188 "v6.4.4": True, 2189 "v6.4.0": True, 2190 "v6.4.1": True, 2191 "v6.2.0": True, 2192 "v6.2.3": True, 2193 "v6.2.5": True, 2194 "v6.2.7": True, 2195 "v6.0.11": True 2196 } 2197 }, 2198 { 2199 "value": "exempt-activex-java-cookie", 2200 "revisions": { 2201 "v6.0.0": True, 2202 "v6.0.5": True, 2203 "v6.4.4": True, 2204 "v6.4.0": True, 2205 "v6.4.1": True, 2206 "v6.2.0": True, 2207 "v6.2.3": True, 2208 "v6.2.5": True, 2209 "v6.2.7": True, 2210 "v6.0.11": True 2211 } 2212 }, 2213 { 2214 "value": "exempt-dlp", 2215 "revisions": { 2216 "v6.0.0": True, 2217 "v6.0.5": True, 2218 "v6.4.4": True, 2219 "v6.4.0": True, 2220 "v6.4.1": True, 2221 "v6.2.0": True, 2222 "v6.2.3": True, 2223 "v6.2.5": True, 2224 "v6.2.7": True, 2225 "v6.0.11": True 2226 } 2227 }, 2228 { 2229 "value": "exempt-rangeblock", 2230 "revisions": { 2231 "v6.0.0": True, 2232 "v6.0.5": True, 2233 "v6.4.4": True, 2234 "v6.4.0": True, 2235 "v6.4.1": True, 2236 "v6.2.0": True, 2237 "v6.2.3": True, 2238 "v6.2.5": True, 2239 "v6.2.7": True, 2240 "v6.0.11": True 2241 } 2242 }, 2243 { 2244 "value": "extended-log-others", 2245 "revisions": { 2246 "v6.0.0": True, 2247 "v6.0.5": True, 2248 "v6.4.4": True, 2249 "v6.4.0": True, 2250 "v6.4.1": True, 2251 "v6.2.0": True, 2252 "v6.2.3": True, 2253 "v6.2.5": True, 2254 "v6.2.7": True, 2255 "v6.0.11": True 2256 } 2257 } 2258 ], 2259 "revisions": { 2260 "v6.0.0": True, 2261 "v7.0.0": False, 2262 "v6.0.5": True, 2263 "v6.4.4": True, 2264 "v6.4.0": True, 2265 "v6.4.1": True, 2266 "v6.2.0": True, 2267 "v6.2.3": True, 2268 "v6.2.5": True, 2269 "v6.2.7": True, 2270 "v6.0.11": True 2271 } 2272 }, 2273 "content_header_list": { 2274 "type": "integer", 2275 "revisions": { 2276 "v6.0.0": True, 2277 "v7.0.0": True, 2278 "v6.0.5": True, 2279 "v6.4.4": True, 2280 "v6.4.0": True, 2281 "v6.4.1": True, 2282 "v6.2.0": True, 2283 "v6.2.3": True, 2284 "v6.2.5": True, 2285 "v6.2.7": True, 2286 "v6.0.11": True 2287 } 2288 }, 2289 "allowlist": { 2290 "multiple_values": True, 2291 "type": "list", 2292 "options": [ 2293 { 2294 "value": "exempt-av", 2295 "revisions": { 2296 "v7.0.0": True 2297 } 2298 }, 2299 { 2300 "value": "exempt-webcontent", 2301 "revisions": { 2302 "v7.0.0": True 2303 } 2304 }, 2305 { 2306 "value": "exempt-activex-java-cookie", 2307 "revisions": { 2308 "v7.0.0": True 2309 } 2310 }, 2311 { 2312 "value": "exempt-dlp", 2313 "revisions": { 2314 "v7.0.0": True 2315 } 2316 }, 2317 { 2318 "value": "exempt-rangeblock", 2319 "revisions": { 2320 "v7.0.0": True 2321 } 2322 }, 2323 { 2324 "value": "extended-log-others", 2325 "revisions": { 2326 "v7.0.0": True 2327 } 2328 } 2329 ], 2330 "revisions": { 2331 "v7.0.0": True 2332 } 2333 }, 2334 "blacklist": { 2335 "type": "string", 2336 "options": [ 2337 { 2338 "value": "enable", 2339 "revisions": { 2340 "v6.0.0": True, 2341 "v6.0.5": True, 2342 "v6.4.4": True, 2343 "v6.4.0": True, 2344 "v6.4.1": True, 2345 "v6.2.0": True, 2346 "v6.2.3": True, 2347 "v6.2.5": True, 2348 "v6.2.7": True, 2349 "v6.0.11": True 2350 } 2351 }, 2352 { 2353 "value": "disable", 2354 "revisions": { 2355 "v6.0.0": True, 2356 "v6.0.5": True, 2357 "v6.4.4": True, 2358 "v6.4.0": True, 2359 "v6.4.1": True, 2360 "v6.2.0": True, 2361 "v6.2.3": True, 2362 "v6.2.5": True, 2363 "v6.2.7": True, 2364 "v6.0.11": True 2365 } 2366 } 2367 ], 2368 "revisions": { 2369 "v6.0.0": True, 2370 "v7.0.0": False, 2371 "v6.0.5": True, 2372 "v6.4.4": True, 2373 "v6.4.0": True, 2374 "v6.4.1": True, 2375 "v6.2.0": True, 2376 "v6.2.3": True, 2377 "v6.2.5": True, 2378 "v6.2.7": True, 2379 "v6.0.11": True 2380 } 2381 }, 2382 "keyword_match": { 2383 "type": "list", 2384 "children": { 2385 "pattern": { 2386 "type": "string", 2387 "revisions": { 2388 "v6.0.0": True, 2389 "v7.0.0": True, 2390 "v6.0.5": True, 2391 "v6.4.4": True, 2392 "v6.4.0": True, 2393 "v6.4.1": True, 2394 "v6.2.0": True, 2395 "v6.2.3": True, 2396 "v6.2.5": True, 2397 "v6.2.7": True, 2398 "v6.0.11": True 2399 } 2400 } 2401 }, 2402 "revisions": { 2403 "v6.0.0": True, 2404 "v7.0.0": True, 2405 "v6.0.5": True, 2406 "v6.4.4": True, 2407 "v6.4.0": True, 2408 "v6.4.1": True, 2409 "v6.2.0": True, 2410 "v6.2.3": True, 2411 "v6.2.5": True, 2412 "v6.2.7": True, 2413 "v6.0.11": True 2414 } 2415 }, 2416 "log_search": { 2417 "type": "string", 2418 "options": [ 2419 { 2420 "value": "enable", 2421 "revisions": { 2422 "v6.0.0": True, 2423 "v7.0.0": True, 2424 "v6.0.5": True, 2425 "v6.4.4": True, 2426 "v6.4.0": True, 2427 "v6.4.1": True, 2428 "v6.2.0": True, 2429 "v6.2.3": True, 2430 "v6.2.5": True, 2431 "v6.2.7": True, 2432 "v6.0.11": True 2433 } 2434 }, 2435 { 2436 "value": "disable", 2437 "revisions": { 2438 "v6.0.0": True, 2439 "v7.0.0": True, 2440 "v6.0.5": True, 2441 "v6.4.4": True, 2442 "v6.4.0": True, 2443 "v6.4.1": True, 2444 "v6.2.0": True, 2445 "v6.2.3": True, 2446 "v6.2.5": True, 2447 "v6.2.7": True, 2448 "v6.0.11": True 2449 } 2450 } 2451 ], 2452 "revisions": { 2453 "v6.0.0": True, 2454 "v7.0.0": True, 2455 "v6.0.5": True, 2456 "v6.4.4": True, 2457 "v6.4.0": True, 2458 "v6.4.1": True, 2459 "v6.2.0": True, 2460 "v6.2.3": True, 2461 "v6.2.5": True, 2462 "v6.2.7": True, 2463 "v6.0.11": True 2464 } 2465 } 2466 }, 2467 "revisions": { 2468 "v6.0.0": True, 2469 "v7.0.0": True, 2470 "v6.0.5": True, 2471 "v6.4.4": True, 2472 "v6.4.0": True, 2473 "v6.4.1": True, 2474 "v6.2.0": True, 2475 "v6.2.3": True, 2476 "v6.2.5": True, 2477 "v6.2.7": True, 2478 "v6.0.11": True 2479 } 2480 }, 2481 "web_filter_js_log": { 2482 "type": "string", 2483 "options": [ 2484 { 2485 "value": "enable", 2486 "revisions": { 2487 "v6.0.0": True, 2488 "v7.0.0": True, 2489 "v6.0.5": True, 2490 "v6.4.4": True, 2491 "v6.4.0": True, 2492 "v6.4.1": True, 2493 "v6.2.0": True, 2494 "v6.2.3": True, 2495 "v6.2.5": True, 2496 "v6.2.7": True, 2497 "v6.0.11": True 2498 } 2499 }, 2500 { 2501 "value": "disable", 2502 "revisions": { 2503 "v6.0.0": True, 2504 "v7.0.0": True, 2505 "v6.0.5": True, 2506 "v6.4.4": True, 2507 "v6.4.0": True, 2508 "v6.4.1": True, 2509 "v6.2.0": True, 2510 "v6.2.3": True, 2511 "v6.2.5": True, 2512 "v6.2.7": True, 2513 "v6.0.11": True 2514 } 2515 } 2516 ], 2517 "revisions": { 2518 "v6.0.0": True, 2519 "v7.0.0": True, 2520 "v6.0.5": True, 2521 "v6.4.4": True, 2522 "v6.4.0": True, 2523 "v6.4.1": True, 2524 "v6.2.0": True, 2525 "v6.2.3": True, 2526 "v6.2.5": True, 2527 "v6.2.7": True, 2528 "v6.0.11": True 2529 } 2530 }, 2531 "web_filter_command_block_log": { 2532 "type": "string", 2533 "options": [ 2534 { 2535 "value": "enable", 2536 "revisions": { 2537 "v6.0.0": True, 2538 "v7.0.0": True, 2539 "v6.0.5": True, 2540 "v6.4.4": True, 2541 "v6.4.0": True, 2542 "v6.4.1": True, 2543 "v6.2.0": True, 2544 "v6.2.3": True, 2545 "v6.2.5": True, 2546 "v6.2.7": True, 2547 "v6.0.11": True 2548 } 2549 }, 2550 { 2551 "value": "disable", 2552 "revisions": { 2553 "v6.0.0": True, 2554 "v7.0.0": True, 2555 "v6.0.5": True, 2556 "v6.4.4": True, 2557 "v6.4.0": True, 2558 "v6.4.1": True, 2559 "v6.2.0": True, 2560 "v6.2.3": True, 2561 "v6.2.5": True, 2562 "v6.2.7": True, 2563 "v6.0.11": True 2564 } 2565 } 2566 ], 2567 "revisions": { 2568 "v6.0.0": True, 2569 "v7.0.0": True, 2570 "v6.0.5": True, 2571 "v6.4.4": True, 2572 "v6.4.0": True, 2573 "v6.4.1": True, 2574 "v6.2.0": True, 2575 "v6.2.3": True, 2576 "v6.2.5": True, 2577 "v6.2.7": True, 2578 "v6.0.11": True 2579 } 2580 }, 2581 "extended_log": { 2582 "type": "string", 2583 "options": [ 2584 { 2585 "value": "enable", 2586 "revisions": { 2587 "v6.0.0": True, 2588 "v7.0.0": True, 2589 "v6.0.5": True, 2590 "v6.4.4": True, 2591 "v6.4.0": True, 2592 "v6.4.1": True, 2593 "v6.2.0": True, 2594 "v6.2.3": True, 2595 "v6.2.5": True, 2596 "v6.2.7": True, 2597 "v6.0.11": True 2598 } 2599 }, 2600 { 2601 "value": "disable", 2602 "revisions": { 2603 "v6.0.0": True, 2604 "v7.0.0": True, 2605 "v6.0.5": True, 2606 "v6.4.4": True, 2607 "v6.4.0": True, 2608 "v6.4.1": True, 2609 "v6.2.0": True, 2610 "v6.2.3": True, 2611 "v6.2.5": True, 2612 "v6.2.7": True, 2613 "v6.0.11": True 2614 } 2615 } 2616 ], 2617 "revisions": { 2618 "v6.0.0": True, 2619 "v7.0.0": True, 2620 "v6.0.5": True, 2621 "v6.4.4": True, 2622 "v6.4.0": True, 2623 "v6.4.1": True, 2624 "v6.2.0": True, 2625 "v6.2.3": True, 2626 "v6.2.5": True, 2627 "v6.2.7": True, 2628 "v6.0.11": True 2629 } 2630 }, 2631 "youtube_channel_status": { 2632 "type": "string", 2633 "options": [ 2634 { 2635 "value": "disable", 2636 "revisions": { 2637 "v6.0.0": True, 2638 "v6.0.5": True, 2639 "v6.4.4": True, 2640 "v6.4.0": True, 2641 "v6.4.1": True, 2642 "v6.2.0": True, 2643 "v6.2.3": True, 2644 "v6.2.5": True, 2645 "v6.2.7": True, 2646 "v6.0.11": True 2647 } 2648 }, 2649 { 2650 "value": "blacklist", 2651 "revisions": { 2652 "v6.0.0": True, 2653 "v6.0.5": True, 2654 "v6.4.4": True, 2655 "v6.4.0": True, 2656 "v6.4.1": True, 2657 "v6.2.0": True, 2658 "v6.2.3": True, 2659 "v6.2.5": True, 2660 "v6.2.7": True, 2661 "v6.0.11": True 2662 } 2663 }, 2664 { 2665 "value": "whitelist", 2666 "revisions": { 2667 "v6.0.0": True, 2668 "v6.0.5": True, 2669 "v6.4.4": True, 2670 "v6.4.0": True, 2671 "v6.4.1": True, 2672 "v6.2.0": True, 2673 "v6.2.3": True, 2674 "v6.2.5": True, 2675 "v6.2.7": True, 2676 "v6.0.11": True 2677 } 2678 } 2679 ], 2680 "revisions": { 2681 "v6.0.0": True, 2682 "v7.0.0": False, 2683 "v6.0.5": True, 2684 "v6.4.4": True, 2685 "v6.4.0": True, 2686 "v6.4.1": True, 2687 "v6.2.0": True, 2688 "v6.2.3": True, 2689 "v6.2.5": True, 2690 "v6.2.7": True, 2691 "v6.0.11": True 2692 } 2693 }, 2694 "override": { 2695 "type": "dict", 2696 "children": { 2697 "profile": { 2698 "type": "list", 2699 "children": { 2700 "name": { 2701 "type": "string", 2702 "revisions": { 2703 "v6.0.0": True, 2704 "v7.0.0": True, 2705 "v6.0.5": True, 2706 "v6.4.4": True, 2707 "v6.4.0": True, 2708 "v6.4.1": True, 2709 "v6.2.0": True, 2710 "v6.2.3": True, 2711 "v6.2.5": True, 2712 "v6.2.7": True, 2713 "v6.0.11": True 2714 } 2715 } 2716 }, 2717 "revisions": { 2718 "v6.0.0": True, 2719 "v7.0.0": True, 2720 "v6.0.5": True, 2721 "v6.4.4": True, 2722 "v6.4.0": True, 2723 "v6.4.1": True, 2724 "v6.2.0": True, 2725 "v6.2.3": True, 2726 "v6.2.5": True, 2727 "v6.2.7": True, 2728 "v6.0.11": True 2729 } 2730 }, 2731 "ovrd_cookie": { 2732 "type": "string", 2733 "options": [ 2734 { 2735 "value": "allow", 2736 "revisions": { 2737 "v6.0.0": True, 2738 "v7.0.0": True, 2739 "v6.0.5": True, 2740 "v6.4.4": True, 2741 "v6.4.0": True, 2742 "v6.4.1": True, 2743 "v6.2.0": True, 2744 "v6.2.3": True, 2745 "v6.2.5": True, 2746 "v6.2.7": True, 2747 "v6.0.11": True 2748 } 2749 }, 2750 { 2751 "value": "deny", 2752 "revisions": { 2753 "v6.0.0": True, 2754 "v7.0.0": True, 2755 "v6.0.5": True, 2756 "v6.4.4": True, 2757 "v6.4.0": True, 2758 "v6.4.1": True, 2759 "v6.2.0": True, 2760 "v6.2.3": True, 2761 "v6.2.5": True, 2762 "v6.2.7": True, 2763 "v6.0.11": True 2764 } 2765 } 2766 ], 2767 "revisions": { 2768 "v6.0.0": True, 2769 "v7.0.0": True, 2770 "v6.0.5": True, 2771 "v6.4.4": True, 2772 "v6.4.0": True, 2773 "v6.4.1": True, 2774 "v6.2.0": True, 2775 "v6.2.3": True, 2776 "v6.2.5": True, 2777 "v6.2.7": True, 2778 "v6.0.11": True 2779 } 2780 }, 2781 "profile_type": { 2782 "type": "string", 2783 "options": [ 2784 { 2785 "value": "list", 2786 "revisions": { 2787 "v6.0.0": True, 2788 "v7.0.0": True, 2789 "v6.0.5": True, 2790 "v6.4.4": True, 2791 "v6.4.0": True, 2792 "v6.4.1": True, 2793 "v6.2.0": True, 2794 "v6.2.3": True, 2795 "v6.2.5": True, 2796 "v6.2.7": True, 2797 "v6.0.11": True 2798 } 2799 }, 2800 { 2801 "value": "radius", 2802 "revisions": { 2803 "v6.0.0": True, 2804 "v7.0.0": True, 2805 "v6.0.5": True, 2806 "v6.4.4": True, 2807 "v6.4.0": True, 2808 "v6.4.1": True, 2809 "v6.2.0": True, 2810 "v6.2.3": True, 2811 "v6.2.5": True, 2812 "v6.2.7": True, 2813 "v6.0.11": True 2814 } 2815 } 2816 ], 2817 "revisions": { 2818 "v6.0.0": True, 2819 "v7.0.0": True, 2820 "v6.0.5": True, 2821 "v6.4.4": True, 2822 "v6.4.0": True, 2823 "v6.4.1": True, 2824 "v6.2.0": True, 2825 "v6.2.3": True, 2826 "v6.2.5": True, 2827 "v6.2.7": True, 2828 "v6.0.11": True 2829 } 2830 }, 2831 "ovrd_dur": { 2832 "type": "string", 2833 "revisions": { 2834 "v6.0.0": True, 2835 "v7.0.0": True, 2836 "v6.0.5": True, 2837 "v6.4.4": True, 2838 "v6.4.0": True, 2839 "v6.4.1": True, 2840 "v6.2.0": True, 2841 "v6.2.3": True, 2842 "v6.2.5": True, 2843 "v6.2.7": True, 2844 "v6.0.11": True 2845 } 2846 }, 2847 "ovrd_dur_mode": { 2848 "type": "string", 2849 "options": [ 2850 { 2851 "value": "constant", 2852 "revisions": { 2853 "v6.0.0": True, 2854 "v7.0.0": True, 2855 "v6.0.5": True, 2856 "v6.4.4": True, 2857 "v6.4.0": True, 2858 "v6.4.1": True, 2859 "v6.2.0": True, 2860 "v6.2.3": True, 2861 "v6.2.5": True, 2862 "v6.2.7": True, 2863 "v6.0.11": True 2864 } 2865 }, 2866 { 2867 "value": "ask", 2868 "revisions": { 2869 "v6.0.0": True, 2870 "v7.0.0": True, 2871 "v6.0.5": True, 2872 "v6.4.4": True, 2873 "v6.4.0": True, 2874 "v6.4.1": True, 2875 "v6.2.0": True, 2876 "v6.2.3": True, 2877 "v6.2.5": True, 2878 "v6.2.7": True, 2879 "v6.0.11": True 2880 } 2881 } 2882 ], 2883 "revisions": { 2884 "v6.0.0": True, 2885 "v7.0.0": True, 2886 "v6.0.5": True, 2887 "v6.4.4": True, 2888 "v6.4.0": True, 2889 "v6.4.1": True, 2890 "v6.2.0": True, 2891 "v6.2.3": True, 2892 "v6.2.5": True, 2893 "v6.2.7": True, 2894 "v6.0.11": True 2895 } 2896 }, 2897 "ovrd_user_group": { 2898 "type": "list", 2899 "children": { 2900 "name": { 2901 "type": "string", 2902 "revisions": { 2903 "v6.0.0": True, 2904 "v7.0.0": True, 2905 "v6.0.5": True, 2906 "v6.4.4": True, 2907 "v6.4.0": True, 2908 "v6.4.1": True, 2909 "v6.2.0": True, 2910 "v6.2.3": True, 2911 "v6.2.5": True, 2912 "v6.2.7": True, 2913 "v6.0.11": True 2914 } 2915 } 2916 }, 2917 "revisions": { 2918 "v6.0.0": True, 2919 "v7.0.0": True, 2920 "v6.0.5": True, 2921 "v6.4.4": True, 2922 "v6.4.0": True, 2923 "v6.4.1": True, 2924 "v6.2.0": True, 2925 "v6.2.3": True, 2926 "v6.2.5": True, 2927 "v6.2.7": True, 2928 "v6.0.11": True 2929 } 2930 }, 2931 "ovrd_scope": { 2932 "type": "string", 2933 "options": [ 2934 { 2935 "value": "user", 2936 "revisions": { 2937 "v6.0.0": True, 2938 "v7.0.0": True, 2939 "v6.0.5": True, 2940 "v6.4.4": True, 2941 "v6.4.0": True, 2942 "v6.4.1": True, 2943 "v6.2.0": True, 2944 "v6.2.3": True, 2945 "v6.2.5": True, 2946 "v6.2.7": True, 2947 "v6.0.11": True 2948 } 2949 }, 2950 { 2951 "value": "user-group", 2952 "revisions": { 2953 "v6.0.0": True, 2954 "v7.0.0": True, 2955 "v6.0.5": True, 2956 "v6.4.4": True, 2957 "v6.4.0": True, 2958 "v6.4.1": True, 2959 "v6.2.0": True, 2960 "v6.2.3": True, 2961 "v6.2.5": True, 2962 "v6.2.7": True, 2963 "v6.0.11": True 2964 } 2965 }, 2966 { 2967 "value": "ip", 2968 "revisions": { 2969 "v6.0.0": True, 2970 "v7.0.0": True, 2971 "v6.0.5": True, 2972 "v6.4.4": True, 2973 "v6.4.0": True, 2974 "v6.4.1": True, 2975 "v6.2.0": True, 2976 "v6.2.3": True, 2977 "v6.2.5": True, 2978 "v6.2.7": True, 2979 "v6.0.11": True 2980 } 2981 }, 2982 { 2983 "value": "browser", 2984 "revisions": { 2985 "v6.0.0": True, 2986 "v7.0.0": True, 2987 "v6.0.5": True, 2988 "v6.4.4": True, 2989 "v6.4.0": True, 2990 "v6.4.1": True, 2991 "v6.2.0": True, 2992 "v6.2.3": True, 2993 "v6.2.5": True, 2994 "v6.2.7": True, 2995 "v6.0.11": True 2996 } 2997 }, 2998 { 2999 "value": "ask", 3000 "revisions": { 3001 "v6.0.0": True, 3002 "v7.0.0": True, 3003 "v6.0.5": True, 3004 "v6.4.4": True, 3005 "v6.4.0": True, 3006 "v6.4.1": True, 3007 "v6.2.0": True, 3008 "v6.2.3": True, 3009 "v6.2.5": True, 3010 "v6.2.7": True, 3011 "v6.0.11": True 3012 } 3013 } 3014 ], 3015 "revisions": { 3016 "v6.0.0": True, 3017 "v7.0.0": True, 3018 "v6.0.5": True, 3019 "v6.4.4": True, 3020 "v6.4.0": True, 3021 "v6.4.1": True, 3022 "v6.2.0": True, 3023 "v6.2.3": True, 3024 "v6.2.5": True, 3025 "v6.2.7": True, 3026 "v6.0.11": True 3027 } 3028 }, 3029 "profile_attribute": { 3030 "type": "string", 3031 "options": [ 3032 { 3033 "value": "User-Name", 3034 "revisions": { 3035 "v6.0.0": True, 3036 "v7.0.0": True, 3037 "v6.0.5": True, 3038 "v6.4.4": True, 3039 "v6.4.0": True, 3040 "v6.4.1": True, 3041 "v6.2.0": True, 3042 "v6.2.3": True, 3043 "v6.2.5": True, 3044 "v6.2.7": True, 3045 "v6.0.11": True 3046 } 3047 }, 3048 { 3049 "value": "NAS-IP-Address", 3050 "revisions": { 3051 "v6.0.0": True, 3052 "v7.0.0": True, 3053 "v6.0.5": True, 3054 "v6.4.4": True, 3055 "v6.4.0": True, 3056 "v6.4.1": True, 3057 "v6.2.0": True, 3058 "v6.2.3": True, 3059 "v6.2.5": True, 3060 "v6.2.7": True, 3061 "v6.0.11": True 3062 } 3063 }, 3064 { 3065 "value": "Framed-IP-Address", 3066 "revisions": { 3067 "v6.0.0": True, 3068 "v7.0.0": True, 3069 "v6.0.5": True, 3070 "v6.4.4": True, 3071 "v6.4.0": True, 3072 "v6.4.1": True, 3073 "v6.2.0": True, 3074 "v6.2.3": True, 3075 "v6.2.5": True, 3076 "v6.2.7": True, 3077 "v6.0.11": True 3078 } 3079 }, 3080 { 3081 "value": "Framed-IP-Netmask", 3082 "revisions": { 3083 "v6.0.0": True, 3084 "v7.0.0": True, 3085 "v6.0.5": True, 3086 "v6.4.4": True, 3087 "v6.4.0": True, 3088 "v6.4.1": True, 3089 "v6.2.0": True, 3090 "v6.2.3": True, 3091 "v6.2.5": True, 3092 "v6.2.7": True, 3093 "v6.0.11": True 3094 } 3095 }, 3096 { 3097 "value": "Filter-Id", 3098 "revisions": { 3099 "v6.0.0": True, 3100 "v7.0.0": True, 3101 "v6.0.5": True, 3102 "v6.4.4": True, 3103 "v6.4.0": True, 3104 "v6.4.1": True, 3105 "v6.2.0": True, 3106 "v6.2.3": True, 3107 "v6.2.5": True, 3108 "v6.2.7": True, 3109 "v6.0.11": True 3110 } 3111 }, 3112 { 3113 "value": "Login-IP-Host", 3114 "revisions": { 3115 "v6.0.0": True, 3116 "v7.0.0": True, 3117 "v6.0.5": True, 3118 "v6.4.4": True, 3119 "v6.4.0": True, 3120 "v6.4.1": True, 3121 "v6.2.0": True, 3122 "v6.2.3": True, 3123 "v6.2.5": True, 3124 "v6.2.7": True, 3125 "v6.0.11": True 3126 } 3127 }, 3128 { 3129 "value": "Reply-Message", 3130 "revisions": { 3131 "v6.0.0": True, 3132 "v7.0.0": True, 3133 "v6.0.5": True, 3134 "v6.4.4": True, 3135 "v6.4.0": True, 3136 "v6.4.1": True, 3137 "v6.2.0": True, 3138 "v6.2.3": True, 3139 "v6.2.5": True, 3140 "v6.2.7": True, 3141 "v6.0.11": True 3142 } 3143 }, 3144 { 3145 "value": "Callback-Number", 3146 "revisions": { 3147 "v6.0.0": True, 3148 "v7.0.0": True, 3149 "v6.0.5": True, 3150 "v6.4.4": True, 3151 "v6.4.0": True, 3152 "v6.4.1": True, 3153 "v6.2.0": True, 3154 "v6.2.3": True, 3155 "v6.2.5": True, 3156 "v6.2.7": True, 3157 "v6.0.11": True 3158 } 3159 }, 3160 { 3161 "value": "Callback-Id", 3162 "revisions": { 3163 "v6.0.0": True, 3164 "v7.0.0": True, 3165 "v6.0.5": True, 3166 "v6.4.4": True, 3167 "v6.4.0": True, 3168 "v6.4.1": True, 3169 "v6.2.0": True, 3170 "v6.2.3": True, 3171 "v6.2.5": True, 3172 "v6.2.7": True, 3173 "v6.0.11": True 3174 } 3175 }, 3176 { 3177 "value": "Framed-Route", 3178 "revisions": { 3179 "v6.0.0": True, 3180 "v7.0.0": True, 3181 "v6.0.5": True, 3182 "v6.4.4": True, 3183 "v6.4.0": True, 3184 "v6.4.1": True, 3185 "v6.2.0": True, 3186 "v6.2.3": True, 3187 "v6.2.5": True, 3188 "v6.2.7": True, 3189 "v6.0.11": True 3190 } 3191 }, 3192 { 3193 "value": "Framed-IPX-Network", 3194 "revisions": { 3195 "v6.0.0": True, 3196 "v7.0.0": True, 3197 "v6.0.5": True, 3198 "v6.4.4": True, 3199 "v6.4.0": True, 3200 "v6.4.1": True, 3201 "v6.2.0": True, 3202 "v6.2.3": True, 3203 "v6.2.5": True, 3204 "v6.2.7": True, 3205 "v6.0.11": True 3206 } 3207 }, 3208 { 3209 "value": "Class", 3210 "revisions": { 3211 "v6.0.0": True, 3212 "v7.0.0": True, 3213 "v6.0.5": True, 3214 "v6.4.4": True, 3215 "v6.4.0": True, 3216 "v6.4.1": True, 3217 "v6.2.0": True, 3218 "v6.2.3": True, 3219 "v6.2.5": True, 3220 "v6.2.7": True, 3221 "v6.0.11": True 3222 } 3223 }, 3224 { 3225 "value": "Called-Station-Id", 3226 "revisions": { 3227 "v6.0.0": True, 3228 "v7.0.0": True, 3229 "v6.0.5": True, 3230 "v6.4.4": True, 3231 "v6.4.0": True, 3232 "v6.4.1": True, 3233 "v6.2.0": True, 3234 "v6.2.3": True, 3235 "v6.2.5": True, 3236 "v6.2.7": True, 3237 "v6.0.11": True 3238 } 3239 }, 3240 { 3241 "value": "Calling-Station-Id", 3242 "revisions": { 3243 "v6.0.0": True, 3244 "v7.0.0": True, 3245 "v6.0.5": True, 3246 "v6.4.4": True, 3247 "v6.4.0": True, 3248 "v6.4.1": True, 3249 "v6.2.0": True, 3250 "v6.2.3": True, 3251 "v6.2.5": True, 3252 "v6.2.7": True, 3253 "v6.0.11": True 3254 } 3255 }, 3256 { 3257 "value": "NAS-Identifier", 3258 "revisions": { 3259 "v6.0.0": True, 3260 "v7.0.0": True, 3261 "v6.0.5": True, 3262 "v6.4.4": True, 3263 "v6.4.0": True, 3264 "v6.4.1": True, 3265 "v6.2.0": True, 3266 "v6.2.3": True, 3267 "v6.2.5": True, 3268 "v6.2.7": True, 3269 "v6.0.11": True 3270 } 3271 }, 3272 { 3273 "value": "Proxy-State", 3274 "revisions": { 3275 "v6.0.0": True, 3276 "v7.0.0": True, 3277 "v6.0.5": True, 3278 "v6.4.4": True, 3279 "v6.4.0": True, 3280 "v6.4.1": True, 3281 "v6.2.0": True, 3282 "v6.2.3": True, 3283 "v6.2.5": True, 3284 "v6.2.7": True, 3285 "v6.0.11": True 3286 } 3287 }, 3288 { 3289 "value": "Login-LAT-Service", 3290 "revisions": { 3291 "v6.0.0": True, 3292 "v7.0.0": True, 3293 "v6.0.5": True, 3294 "v6.4.4": True, 3295 "v6.4.0": True, 3296 "v6.4.1": True, 3297 "v6.2.0": True, 3298 "v6.2.3": True, 3299 "v6.2.5": True, 3300 "v6.2.7": True, 3301 "v6.0.11": True 3302 } 3303 }, 3304 { 3305 "value": "Login-LAT-Node", 3306 "revisions": { 3307 "v6.0.0": True, 3308 "v7.0.0": True, 3309 "v6.0.5": True, 3310 "v6.4.4": True, 3311 "v6.4.0": True, 3312 "v6.4.1": True, 3313 "v6.2.0": True, 3314 "v6.2.3": True, 3315 "v6.2.5": True, 3316 "v6.2.7": True, 3317 "v6.0.11": True 3318 } 3319 }, 3320 { 3321 "value": "Login-LAT-Group", 3322 "revisions": { 3323 "v6.0.0": True, 3324 "v7.0.0": True, 3325 "v6.0.5": True, 3326 "v6.4.4": True, 3327 "v6.4.0": True, 3328 "v6.4.1": True, 3329 "v6.2.0": True, 3330 "v6.2.3": True, 3331 "v6.2.5": True, 3332 "v6.2.7": True, 3333 "v6.0.11": True 3334 } 3335 }, 3336 { 3337 "value": "Framed-AppleTalk-Zone", 3338 "revisions": { 3339 "v6.0.0": True, 3340 "v7.0.0": True, 3341 "v6.0.5": True, 3342 "v6.4.4": True, 3343 "v6.4.0": True, 3344 "v6.4.1": True, 3345 "v6.2.0": True, 3346 "v6.2.3": True, 3347 "v6.2.5": True, 3348 "v6.2.7": True, 3349 "v6.0.11": True 3350 } 3351 }, 3352 { 3353 "value": "Acct-Session-Id", 3354 "revisions": { 3355 "v6.0.0": True, 3356 "v7.0.0": True, 3357 "v6.0.5": True, 3358 "v6.4.4": True, 3359 "v6.4.0": True, 3360 "v6.4.1": True, 3361 "v6.2.0": True, 3362 "v6.2.3": True, 3363 "v6.2.5": True, 3364 "v6.2.7": True, 3365 "v6.0.11": True 3366 } 3367 }, 3368 { 3369 "value": "Acct-Multi-Session-Id", 3370 "revisions": { 3371 "v6.0.0": True, 3372 "v7.0.0": True, 3373 "v6.0.5": True, 3374 "v6.4.4": True, 3375 "v6.4.0": True, 3376 "v6.4.1": True, 3377 "v6.2.0": True, 3378 "v6.2.3": True, 3379 "v6.2.5": True, 3380 "v6.2.7": True, 3381 "v6.0.11": True 3382 } 3383 } 3384 ], 3385 "revisions": { 3386 "v6.0.0": True, 3387 "v7.0.0": True, 3388 "v6.0.5": True, 3389 "v6.4.4": True, 3390 "v6.4.0": True, 3391 "v6.4.1": True, 3392 "v6.2.0": True, 3393 "v6.2.3": True, 3394 "v6.2.5": True, 3395 "v6.2.7": True, 3396 "v6.0.11": True 3397 } 3398 } 3399 }, 3400 "revisions": { 3401 "v6.0.0": True, 3402 "v7.0.0": True, 3403 "v6.0.5": True, 3404 "v6.4.4": True, 3405 "v6.4.0": True, 3406 "v6.4.1": True, 3407 "v6.2.0": True, 3408 "v6.2.3": True, 3409 "v6.2.5": True, 3410 "v6.2.7": True, 3411 "v6.0.11": True 3412 } 3413 }, 3414 "web_filter_cookie_log": { 3415 "type": "string", 3416 "options": [ 3417 { 3418 "value": "enable", 3419 "revisions": { 3420 "v6.0.0": True, 3421 "v7.0.0": True, 3422 "v6.0.5": True, 3423 "v6.4.4": True, 3424 "v6.4.0": True, 3425 "v6.4.1": True, 3426 "v6.2.0": True, 3427 "v6.2.3": True, 3428 "v6.2.5": True, 3429 "v6.2.7": True, 3430 "v6.0.11": True 3431 } 3432 }, 3433 { 3434 "value": "disable", 3435 "revisions": { 3436 "v6.0.0": True, 3437 "v7.0.0": True, 3438 "v6.0.5": True, 3439 "v6.4.4": True, 3440 "v6.4.0": True, 3441 "v6.4.1": True, 3442 "v6.2.0": True, 3443 "v6.2.3": True, 3444 "v6.2.5": True, 3445 "v6.2.7": True, 3446 "v6.0.11": True 3447 } 3448 } 3449 ], 3450 "revisions": { 3451 "v6.0.0": True, 3452 "v7.0.0": True, 3453 "v6.0.5": True, 3454 "v6.4.4": True, 3455 "v6.4.0": True, 3456 "v6.4.1": True, 3457 "v6.2.0": True, 3458 "v6.2.3": True, 3459 "v6.2.5": True, 3460 "v6.2.7": True, 3461 "v6.0.11": True 3462 } 3463 }, 3464 "wisp_servers": { 3465 "type": "list", 3466 "children": { 3467 "name": { 3468 "type": "string", 3469 "revisions": { 3470 "v6.0.0": True, 3471 "v7.0.0": True, 3472 "v6.0.5": True, 3473 "v6.4.4": True, 3474 "v6.4.0": True, 3475 "v6.4.1": True, 3476 "v6.2.0": True, 3477 "v6.2.3": True, 3478 "v6.2.5": True, 3479 "v6.2.7": True, 3480 "v6.0.11": True 3481 } 3482 } 3483 }, 3484 "revisions": { 3485 "v6.0.0": True, 3486 "v7.0.0": True, 3487 "v6.0.5": True, 3488 "v6.4.4": True, 3489 "v6.4.0": True, 3490 "v6.4.1": True, 3491 "v6.2.0": True, 3492 "v6.2.3": True, 3493 "v6.2.5": True, 3494 "v6.2.7": True, 3495 "v6.0.11": True 3496 } 3497 }, 3498 "web_ftgd_quota_usage": { 3499 "type": "string", 3500 "options": [ 3501 { 3502 "value": "enable", 3503 "revisions": { 3504 "v6.0.0": True, 3505 "v7.0.0": True, 3506 "v6.0.5": True, 3507 "v6.4.4": True, 3508 "v6.4.0": True, 3509 "v6.4.1": True, 3510 "v6.2.0": True, 3511 "v6.2.3": True, 3512 "v6.2.5": True, 3513 "v6.2.7": True, 3514 "v6.0.11": True 3515 } 3516 }, 3517 { 3518 "value": "disable", 3519 "revisions": { 3520 "v6.0.0": True, 3521 "v7.0.0": True, 3522 "v6.0.5": True, 3523 "v6.4.4": True, 3524 "v6.4.0": True, 3525 "v6.4.1": True, 3526 "v6.2.0": True, 3527 "v6.2.3": True, 3528 "v6.2.5": True, 3529 "v6.2.7": True, 3530 "v6.0.11": True 3531 } 3532 } 3533 ], 3534 "revisions": { 3535 "v6.0.0": True, 3536 "v7.0.0": True, 3537 "v6.0.5": True, 3538 "v6.4.4": True, 3539 "v6.4.0": True, 3540 "v6.4.1": True, 3541 "v6.2.0": True, 3542 "v6.2.3": True, 3543 "v6.2.5": True, 3544 "v6.2.7": True, 3545 "v6.0.11": True 3546 } 3547 }, 3548 "web_content_log": { 3549 "type": "string", 3550 "options": [ 3551 { 3552 "value": "enable", 3553 "revisions": { 3554 "v6.0.0": True, 3555 "v7.0.0": True, 3556 "v6.0.5": True, 3557 "v6.4.4": True, 3558 "v6.4.0": True, 3559 "v6.4.1": True, 3560 "v6.2.0": True, 3561 "v6.2.3": True, 3562 "v6.2.5": True, 3563 "v6.2.7": True, 3564 "v6.0.11": True 3565 } 3566 }, 3567 { 3568 "value": "disable", 3569 "revisions": { 3570 "v6.0.0": True, 3571 "v7.0.0": True, 3572 "v6.0.5": True, 3573 "v6.4.4": True, 3574 "v6.4.0": True, 3575 "v6.4.1": True, 3576 "v6.2.0": True, 3577 "v6.2.3": True, 3578 "v6.2.5": True, 3579 "v6.2.7": True, 3580 "v6.0.11": True 3581 } 3582 } 3583 ], 3584 "revisions": { 3585 "v6.0.0": True, 3586 "v7.0.0": True, 3587 "v6.0.5": True, 3588 "v6.4.4": True, 3589 "v6.4.0": True, 3590 "v6.4.1": True, 3591 "v6.2.0": True, 3592 "v6.2.3": True, 3593 "v6.2.5": True, 3594 "v6.2.7": True, 3595 "v6.0.11": True 3596 } 3597 }, 3598 "post_action": { 3599 "type": "string", 3600 "options": [ 3601 { 3602 "value": "normal", 3603 "revisions": { 3604 "v6.0.0": True, 3605 "v7.0.0": True, 3606 "v6.0.5": True, 3607 "v6.4.4": True, 3608 "v6.4.0": True, 3609 "v6.4.1": True, 3610 "v6.2.0": True, 3611 "v6.2.3": True, 3612 "v6.2.5": True, 3613 "v6.2.7": True, 3614 "v6.0.11": True 3615 } 3616 }, 3617 { 3618 "value": "block", 3619 "revisions": { 3620 "v6.0.0": True, 3621 "v7.0.0": True, 3622 "v6.0.5": True, 3623 "v6.4.4": True, 3624 "v6.4.0": True, 3625 "v6.4.1": True, 3626 "v6.2.0": True, 3627 "v6.2.3": True, 3628 "v6.2.5": True, 3629 "v6.2.7": True, 3630 "v6.0.11": True 3631 } 3632 } 3633 ], 3634 "revisions": { 3635 "v6.0.0": True, 3636 "v7.0.0": True, 3637 "v6.0.5": True, 3638 "v6.4.4": True, 3639 "v6.4.0": True, 3640 "v6.4.1": True, 3641 "v6.2.0": True, 3642 "v6.2.3": True, 3643 "v6.2.5": True, 3644 "v6.2.7": True, 3645 "v6.0.11": True 3646 } 3647 }, 3648 "web_ftgd_err_log": { 3649 "type": "string", 3650 "options": [ 3651 { 3652 "value": "enable", 3653 "revisions": { 3654 "v6.0.0": True, 3655 "v7.0.0": True, 3656 "v6.0.5": True, 3657 "v6.4.4": True, 3658 "v6.4.0": True, 3659 "v6.4.1": True, 3660 "v6.2.0": True, 3661 "v6.2.3": True, 3662 "v6.2.5": True, 3663 "v6.2.7": True, 3664 "v6.0.11": True 3665 } 3666 }, 3667 { 3668 "value": "disable", 3669 "revisions": { 3670 "v6.0.0": True, 3671 "v7.0.0": True, 3672 "v6.0.5": True, 3673 "v6.4.4": True, 3674 "v6.4.0": True, 3675 "v6.4.1": True, 3676 "v6.2.0": True, 3677 "v6.2.3": True, 3678 "v6.2.5": True, 3679 "v6.2.7": True, 3680 "v6.0.11": True 3681 } 3682 } 3683 ], 3684 "revisions": { 3685 "v6.0.0": True, 3686 "v7.0.0": True, 3687 "v6.0.5": True, 3688 "v6.4.4": True, 3689 "v6.4.0": True, 3690 "v6.4.1": True, 3691 "v6.2.0": True, 3692 "v6.2.3": True, 3693 "v6.2.5": True, 3694 "v6.2.7": True, 3695 "v6.0.11": True 3696 } 3697 }, 3698 "web_antiphishing_log": { 3699 "type": "string", 3700 "options": [ 3701 { 3702 "value": "enable", 3703 "revisions": { 3704 "v6.4.4": True, 3705 "v7.0.0": True, 3706 "v6.4.0": True, 3707 "v6.4.1": True 3708 } 3709 }, 3710 { 3711 "value": "disable", 3712 "revisions": { 3713 "v6.4.4": True, 3714 "v7.0.0": True, 3715 "v6.4.0": True, 3716 "v6.4.1": True 3717 } 3718 } 3719 ], 3720 "revisions": { 3721 "v6.4.4": True, 3722 "v7.0.0": True, 3723 "v6.4.0": True, 3724 "v6.4.1": True 3725 } 3726 }, 3727 "ftgd_wf": { 3728 "type": "dict", 3729 "children": { 3730 "rate_javascript_urls": { 3731 "type": "string", 3732 "options": [ 3733 { 3734 "value": "disable", 3735 "revisions": { 3736 "v6.0.0": True, 3737 "v7.0.0": True, 3738 "v6.0.5": True, 3739 "v6.4.4": True, 3740 "v6.4.0": True, 3741 "v6.4.1": True, 3742 "v6.2.0": True, 3743 "v6.2.3": True, 3744 "v6.2.5": True, 3745 "v6.2.7": True, 3746 "v6.0.11": True 3747 } 3748 }, 3749 { 3750 "value": "enable", 3751 "revisions": { 3752 "v6.0.0": True, 3753 "v7.0.0": True, 3754 "v6.0.5": True, 3755 "v6.4.4": True, 3756 "v6.4.0": True, 3757 "v6.4.1": True, 3758 "v6.2.0": True, 3759 "v6.2.3": True, 3760 "v6.2.5": True, 3761 "v6.2.7": True, 3762 "v6.0.11": True 3763 } 3764 } 3765 ], 3766 "revisions": { 3767 "v6.0.0": True, 3768 "v7.0.0": True, 3769 "v6.0.5": True, 3770 "v6.4.4": True, 3771 "v6.4.0": True, 3772 "v6.4.1": True, 3773 "v6.2.0": True, 3774 "v6.2.3": True, 3775 "v6.2.5": True, 3776 "v6.2.7": True, 3777 "v6.0.11": True 3778 } 3779 }, 3780 "filters": { 3781 "type": "list", 3782 "children": { 3783 "category": { 3784 "type": "integer", 3785 "revisions": { 3786 "v6.0.0": True, 3787 "v7.0.0": True, 3788 "v6.0.5": True, 3789 "v6.4.4": True, 3790 "v6.4.0": True, 3791 "v6.4.1": True, 3792 "v6.2.0": True, 3793 "v6.2.3": True, 3794 "v6.2.5": True, 3795 "v6.2.7": True, 3796 "v6.0.11": True 3797 } 3798 }, 3799 "warning_duration_type": { 3800 "type": "string", 3801 "options": [ 3802 { 3803 "value": "session", 3804 "revisions": { 3805 "v6.0.0": True, 3806 "v7.0.0": True, 3807 "v6.0.5": True, 3808 "v6.4.4": True, 3809 "v6.4.0": True, 3810 "v6.4.1": True, 3811 "v6.2.0": True, 3812 "v6.2.3": True, 3813 "v6.2.5": True, 3814 "v6.2.7": True, 3815 "v6.0.11": True 3816 } 3817 }, 3818 { 3819 "value": "timeout", 3820 "revisions": { 3821 "v6.0.0": True, 3822 "v7.0.0": True, 3823 "v6.0.5": True, 3824 "v6.4.4": True, 3825 "v6.4.0": True, 3826 "v6.4.1": True, 3827 "v6.2.0": True, 3828 "v6.2.3": True, 3829 "v6.2.5": True, 3830 "v6.2.7": True, 3831 "v6.0.11": True 3832 } 3833 } 3834 ], 3835 "revisions": { 3836 "v6.0.0": True, 3837 "v7.0.0": True, 3838 "v6.0.5": True, 3839 "v6.4.4": True, 3840 "v6.4.0": True, 3841 "v6.4.1": True, 3842 "v6.2.0": True, 3843 "v6.2.3": True, 3844 "v6.2.5": True, 3845 "v6.2.7": True, 3846 "v6.0.11": True 3847 } 3848 }, 3849 "log": { 3850 "type": "string", 3851 "options": [ 3852 { 3853 "value": "enable", 3854 "revisions": { 3855 "v6.0.0": True, 3856 "v7.0.0": True, 3857 "v6.0.5": True, 3858 "v6.4.4": True, 3859 "v6.4.0": True, 3860 "v6.4.1": True, 3861 "v6.2.0": True, 3862 "v6.2.3": True, 3863 "v6.2.5": True, 3864 "v6.2.7": True, 3865 "v6.0.11": True 3866 } 3867 }, 3868 { 3869 "value": "disable", 3870 "revisions": { 3871 "v6.0.0": True, 3872 "v7.0.0": True, 3873 "v6.0.5": True, 3874 "v6.4.4": True, 3875 "v6.4.0": True, 3876 "v6.4.1": True, 3877 "v6.2.0": True, 3878 "v6.2.3": True, 3879 "v6.2.5": True, 3880 "v6.2.7": True, 3881 "v6.0.11": True 3882 } 3883 } 3884 ], 3885 "revisions": { 3886 "v6.0.0": True, 3887 "v7.0.0": True, 3888 "v6.0.5": True, 3889 "v6.4.4": True, 3890 "v6.4.0": True, 3891 "v6.4.1": True, 3892 "v6.2.0": True, 3893 "v6.2.3": True, 3894 "v6.2.5": True, 3895 "v6.2.7": True, 3896 "v6.0.11": True 3897 } 3898 }, 3899 "override_replacemsg": { 3900 "type": "string", 3901 "revisions": { 3902 "v6.0.0": True, 3903 "v7.0.0": True, 3904 "v6.0.5": True, 3905 "v6.4.4": True, 3906 "v6.4.0": True, 3907 "v6.4.1": True, 3908 "v6.2.0": True, 3909 "v6.2.3": True, 3910 "v6.2.5": True, 3911 "v6.2.7": True, 3912 "v6.0.11": True 3913 } 3914 }, 3915 "id": { 3916 "type": "integer", 3917 "revisions": { 3918 "v6.0.0": True, 3919 "v7.0.0": True, 3920 "v6.0.5": True, 3921 "v6.4.4": True, 3922 "v6.4.0": True, 3923 "v6.4.1": True, 3924 "v6.2.0": True, 3925 "v6.2.3": True, 3926 "v6.2.5": True, 3927 "v6.2.7": True, 3928 "v6.0.11": True 3929 } 3930 }, 3931 "warning_prompt": { 3932 "type": "string", 3933 "options": [ 3934 { 3935 "value": "per-domain", 3936 "revisions": { 3937 "v6.0.0": True, 3938 "v7.0.0": True, 3939 "v6.0.5": True, 3940 "v6.4.4": True, 3941 "v6.4.0": True, 3942 "v6.4.1": True, 3943 "v6.2.0": True, 3944 "v6.2.3": True, 3945 "v6.2.5": True, 3946 "v6.2.7": True, 3947 "v6.0.11": True 3948 } 3949 }, 3950 { 3951 "value": "per-category", 3952 "revisions": { 3953 "v6.0.0": True, 3954 "v7.0.0": True, 3955 "v6.0.5": True, 3956 "v6.4.4": True, 3957 "v6.4.0": True, 3958 "v6.4.1": True, 3959 "v6.2.0": True, 3960 "v6.2.3": True, 3961 "v6.2.5": True, 3962 "v6.2.7": True, 3963 "v6.0.11": True 3964 } 3965 } 3966 ], 3967 "revisions": { 3968 "v6.0.0": True, 3969 "v7.0.0": True, 3970 "v6.0.5": True, 3971 "v6.4.4": True, 3972 "v6.4.0": True, 3973 "v6.4.1": True, 3974 "v6.2.0": True, 3975 "v6.2.3": True, 3976 "v6.2.5": True, 3977 "v6.2.7": True, 3978 "v6.0.11": True 3979 } 3980 }, 3981 "action": { 3982 "type": "string", 3983 "options": [ 3984 { 3985 "value": "block", 3986 "revisions": { 3987 "v6.0.0": True, 3988 "v7.0.0": True, 3989 "v6.0.5": True, 3990 "v6.4.4": True, 3991 "v6.4.0": True, 3992 "v6.4.1": True, 3993 "v6.2.0": True, 3994 "v6.2.3": True, 3995 "v6.2.5": True, 3996 "v6.2.7": True, 3997 "v6.0.11": True 3998 } 3999 }, 4000 { 4001 "value": "authenticate", 4002 "revisions": { 4003 "v6.0.0": True, 4004 "v7.0.0": True, 4005 "v6.0.5": True, 4006 "v6.4.4": True, 4007 "v6.4.0": True, 4008 "v6.4.1": True, 4009 "v6.2.0": True, 4010 "v6.2.3": True, 4011 "v6.2.5": True, 4012 "v6.2.7": True, 4013 "v6.0.11": True 4014 } 4015 }, 4016 { 4017 "value": "monitor", 4018 "revisions": { 4019 "v6.0.0": True, 4020 "v7.0.0": True, 4021 "v6.0.5": True, 4022 "v6.4.4": True, 4023 "v6.4.0": True, 4024 "v6.4.1": True, 4025 "v6.2.0": True, 4026 "v6.2.3": True, 4027 "v6.2.5": True, 4028 "v6.2.7": True, 4029 "v6.0.11": True 4030 } 4031 }, 4032 { 4033 "value": "warning", 4034 "revisions": { 4035 "v6.0.0": True, 4036 "v7.0.0": True, 4037 "v6.0.5": True, 4038 "v6.4.4": True, 4039 "v6.4.0": True, 4040 "v6.4.1": True, 4041 "v6.2.0": True, 4042 "v6.2.3": True, 4043 "v6.2.5": True, 4044 "v6.2.7": True, 4045 "v6.0.11": True 4046 } 4047 } 4048 ], 4049 "revisions": { 4050 "v6.0.0": True, 4051 "v7.0.0": True, 4052 "v6.0.5": True, 4053 "v6.4.4": True, 4054 "v6.4.0": True, 4055 "v6.4.1": True, 4056 "v6.2.0": True, 4057 "v6.2.3": True, 4058 "v6.2.5": True, 4059 "v6.2.7": True, 4060 "v6.0.11": True 4061 } 4062 }, 4063 "auth_usr_grp": { 4064 "type": "list", 4065 "children": { 4066 "name": { 4067 "type": "string", 4068 "revisions": { 4069 "v6.0.0": True, 4070 "v7.0.0": True, 4071 "v6.0.5": True, 4072 "v6.4.4": True, 4073 "v6.4.0": True, 4074 "v6.4.1": True, 4075 "v6.2.0": True, 4076 "v6.2.3": True, 4077 "v6.2.5": True, 4078 "v6.2.7": True, 4079 "v6.0.11": True 4080 } 4081 } 4082 }, 4083 "revisions": { 4084 "v6.0.0": True, 4085 "v7.0.0": True, 4086 "v6.0.5": True, 4087 "v6.4.4": True, 4088 "v6.4.0": True, 4089 "v6.4.1": True, 4090 "v6.2.0": True, 4091 "v6.2.3": True, 4092 "v6.2.5": True, 4093 "v6.2.7": True, 4094 "v6.0.11": True 4095 } 4096 }, 4097 "warn_duration": { 4098 "type": "string", 4099 "revisions": { 4100 "v6.0.0": True, 4101 "v7.0.0": True, 4102 "v6.0.5": True, 4103 "v6.4.4": True, 4104 "v6.4.0": True, 4105 "v6.4.1": True, 4106 "v6.2.0": True, 4107 "v6.2.3": True, 4108 "v6.2.5": True, 4109 "v6.2.7": True, 4110 "v6.0.11": True 4111 } 4112 } 4113 }, 4114 "revisions": { 4115 "v6.0.0": True, 4116 "v7.0.0": True, 4117 "v6.0.5": True, 4118 "v6.4.4": True, 4119 "v6.4.0": True, 4120 "v6.4.1": True, 4121 "v6.2.0": True, 4122 "v6.2.3": True, 4123 "v6.2.5": True, 4124 "v6.2.7": True, 4125 "v6.0.11": True 4126 } 4127 }, 4128 "max_quota_timeout": { 4129 "type": "integer", 4130 "revisions": { 4131 "v6.0.0": True, 4132 "v7.0.0": True, 4133 "v6.0.5": True, 4134 "v6.4.4": True, 4135 "v6.4.0": True, 4136 "v6.4.1": True, 4137 "v6.2.0": True, 4138 "v6.2.3": True, 4139 "v6.2.5": True, 4140 "v6.2.7": True, 4141 "v6.0.11": True 4142 } 4143 }, 4144 "ovrd": { 4145 "type": "string", 4146 "revisions": { 4147 "v6.0.0": True, 4148 "v7.0.0": True, 4149 "v6.0.5": True, 4150 "v6.4.4": True, 4151 "v6.4.0": True, 4152 "v6.4.1": True, 4153 "v6.2.0": True, 4154 "v6.2.3": True, 4155 "v6.2.5": True, 4156 "v6.2.7": True, 4157 "v6.0.11": True 4158 } 4159 }, 4160 "quota": { 4161 "type": "list", 4162 "children": { 4163 "category": { 4164 "type": "string", 4165 "revisions": { 4166 "v6.0.0": True, 4167 "v7.0.0": True, 4168 "v6.0.5": True, 4169 "v6.4.4": True, 4170 "v6.4.0": True, 4171 "v6.4.1": True, 4172 "v6.2.0": True, 4173 "v6.2.3": True, 4174 "v6.2.5": True, 4175 "v6.2.7": True, 4176 "v6.0.11": True 4177 } 4178 }, 4179 "override_replacemsg": { 4180 "type": "string", 4181 "revisions": { 4182 "v6.0.0": True, 4183 "v7.0.0": True, 4184 "v6.0.5": True, 4185 "v6.4.4": True, 4186 "v6.4.0": True, 4187 "v6.4.1": True, 4188 "v6.2.0": True, 4189 "v6.2.3": True, 4190 "v6.2.5": True, 4191 "v6.2.7": True, 4192 "v6.0.11": True 4193 } 4194 }, 4195 "value": { 4196 "type": "integer", 4197 "revisions": { 4198 "v6.0.0": True, 4199 "v7.0.0": True, 4200 "v6.0.5": True, 4201 "v6.4.4": True, 4202 "v6.4.0": True, 4203 "v6.4.1": True, 4204 "v6.2.0": True, 4205 "v6.2.3": True, 4206 "v6.2.5": True, 4207 "v6.2.7": True, 4208 "v6.0.11": True 4209 } 4210 }, 4211 "duration": { 4212 "type": "string", 4213 "revisions": { 4214 "v6.0.0": True, 4215 "v7.0.0": True, 4216 "v6.0.5": True, 4217 "v6.4.4": True, 4218 "v6.4.0": True, 4219 "v6.4.1": True, 4220 "v6.2.0": True, 4221 "v6.2.3": True, 4222 "v6.2.5": True, 4223 "v6.2.7": True, 4224 "v6.0.11": True 4225 } 4226 }, 4227 "type": { 4228 "type": "string", 4229 "options": [ 4230 { 4231 "value": "time", 4232 "revisions": { 4233 "v6.0.0": True, 4234 "v7.0.0": True, 4235 "v6.0.5": True, 4236 "v6.4.4": True, 4237 "v6.4.0": True, 4238 "v6.4.1": True, 4239 "v6.2.0": True, 4240 "v6.2.3": True, 4241 "v6.2.5": True, 4242 "v6.2.7": True, 4243 "v6.0.11": True 4244 } 4245 }, 4246 { 4247 "value": "traffic", 4248 "revisions": { 4249 "v6.0.0": True, 4250 "v7.0.0": True, 4251 "v6.0.5": True, 4252 "v6.4.4": True, 4253 "v6.4.0": True, 4254 "v6.4.1": True, 4255 "v6.2.0": True, 4256 "v6.2.3": True, 4257 "v6.2.5": True, 4258 "v6.2.7": True, 4259 "v6.0.11": True 4260 } 4261 } 4262 ], 4263 "revisions": { 4264 "v6.0.0": True, 4265 "v7.0.0": True, 4266 "v6.0.5": True, 4267 "v6.4.4": True, 4268 "v6.4.0": True, 4269 "v6.4.1": True, 4270 "v6.2.0": True, 4271 "v6.2.3": True, 4272 "v6.2.5": True, 4273 "v6.2.7": True, 4274 "v6.0.11": True 4275 } 4276 }, 4277 "id": { 4278 "type": "integer", 4279 "revisions": { 4280 "v6.0.0": True, 4281 "v7.0.0": True, 4282 "v6.0.5": True, 4283 "v6.4.4": True, 4284 "v6.4.0": True, 4285 "v6.4.1": True, 4286 "v6.2.0": True, 4287 "v6.2.3": True, 4288 "v6.2.5": True, 4289 "v6.2.7": True, 4290 "v6.0.11": True 4291 } 4292 }, 4293 "unit": { 4294 "type": "string", 4295 "options": [ 4296 { 4297 "value": "B", 4298 "revisions": { 4299 "v6.0.0": True, 4300 "v7.0.0": True, 4301 "v6.0.5": True, 4302 "v6.4.4": True, 4303 "v6.4.0": True, 4304 "v6.4.1": True, 4305 "v6.2.0": True, 4306 "v6.2.3": True, 4307 "v6.2.5": True, 4308 "v6.2.7": True, 4309 "v6.0.11": True 4310 } 4311 }, 4312 { 4313 "value": "KB", 4314 "revisions": { 4315 "v6.0.0": True, 4316 "v7.0.0": True, 4317 "v6.0.5": True, 4318 "v6.4.4": True, 4319 "v6.4.0": True, 4320 "v6.4.1": True, 4321 "v6.2.0": True, 4322 "v6.2.3": True, 4323 "v6.2.5": True, 4324 "v6.2.7": True, 4325 "v6.0.11": True 4326 } 4327 }, 4328 { 4329 "value": "MB", 4330 "revisions": { 4331 "v6.0.0": True, 4332 "v7.0.0": True, 4333 "v6.0.5": True, 4334 "v6.4.4": True, 4335 "v6.4.0": True, 4336 "v6.4.1": True, 4337 "v6.2.0": True, 4338 "v6.2.3": True, 4339 "v6.2.5": True, 4340 "v6.2.7": True, 4341 "v6.0.11": True 4342 } 4343 }, 4344 { 4345 "value": "GB", 4346 "revisions": { 4347 "v6.0.0": True, 4348 "v7.0.0": True, 4349 "v6.0.5": True, 4350 "v6.4.4": True, 4351 "v6.4.0": True, 4352 "v6.4.1": True, 4353 "v6.2.0": True, 4354 "v6.2.3": True, 4355 "v6.2.5": True, 4356 "v6.2.7": True, 4357 "v6.0.11": True 4358 } 4359 } 4360 ], 4361 "revisions": { 4362 "v6.0.0": True, 4363 "v7.0.0": True, 4364 "v6.0.5": True, 4365 "v6.4.4": True, 4366 "v6.4.0": True, 4367 "v6.4.1": True, 4368 "v6.2.0": True, 4369 "v6.2.3": True, 4370 "v6.2.5": True, 4371 "v6.2.7": True, 4372 "v6.0.11": True 4373 } 4374 } 4375 }, 4376 "revisions": { 4377 "v6.0.0": True, 4378 "v7.0.0": True, 4379 "v6.0.5": True, 4380 "v6.4.4": True, 4381 "v6.4.0": True, 4382 "v6.4.1": True, 4383 "v6.2.0": True, 4384 "v6.2.3": True, 4385 "v6.2.5": True, 4386 "v6.2.7": True, 4387 "v6.0.11": True 4388 } 4389 }, 4390 "rate_image_urls": { 4391 "type": "string", 4392 "options": [ 4393 { 4394 "value": "disable", 4395 "revisions": { 4396 "v6.0.0": True, 4397 "v6.0.5": True, 4398 "v6.4.0": True, 4399 "v6.4.1": True, 4400 "v6.2.0": True, 4401 "v6.2.3": True, 4402 "v6.2.5": True, 4403 "v6.2.7": True, 4404 "v6.0.11": True 4405 } 4406 }, 4407 { 4408 "value": "enable", 4409 "revisions": { 4410 "v6.0.0": True, 4411 "v6.0.5": True, 4412 "v6.4.0": True, 4413 "v6.4.1": True, 4414 "v6.2.0": True, 4415 "v6.2.3": True, 4416 "v6.2.5": True, 4417 "v6.2.7": True, 4418 "v6.0.11": True 4419 } 4420 } 4421 ], 4422 "revisions": { 4423 "v6.0.0": True, 4424 "v7.0.0": False, 4425 "v6.0.5": True, 4426 "v6.4.4": False, 4427 "v6.4.0": True, 4428 "v6.4.1": True, 4429 "v6.2.0": True, 4430 "v6.2.3": True, 4431 "v6.2.5": True, 4432 "v6.2.7": True, 4433 "v6.0.11": True 4434 } 4435 }, 4436 "exempt_quota": { 4437 "type": "string", 4438 "revisions": { 4439 "v6.0.0": True, 4440 "v7.0.0": True, 4441 "v6.0.5": True, 4442 "v6.4.4": True, 4443 "v6.4.0": True, 4444 "v6.4.1": True, 4445 "v6.2.0": True, 4446 "v6.2.3": True, 4447 "v6.2.5": True, 4448 "v6.2.7": True, 4449 "v6.0.11": True 4450 } 4451 }, 4452 "rate_css_urls": { 4453 "type": "string", 4454 "options": [ 4455 { 4456 "value": "disable", 4457 "revisions": { 4458 "v6.0.0": True, 4459 "v7.0.0": True, 4460 "v6.0.5": True, 4461 "v6.4.4": True, 4462 "v6.4.0": True, 4463 "v6.4.1": True, 4464 "v6.2.0": True, 4465 "v6.2.3": True, 4466 "v6.2.5": True, 4467 "v6.2.7": True, 4468 "v6.0.11": True 4469 } 4470 }, 4471 { 4472 "value": "enable", 4473 "revisions": { 4474 "v6.0.0": True, 4475 "v7.0.0": True, 4476 "v6.0.5": True, 4477 "v6.4.4": True, 4478 "v6.4.0": True, 4479 "v6.4.1": True, 4480 "v6.2.0": True, 4481 "v6.2.3": True, 4482 "v6.2.5": True, 4483 "v6.2.7": True, 4484 "v6.0.11": True 4485 } 4486 } 4487 ], 4488 "revisions": { 4489 "v6.0.0": True, 4490 "v7.0.0": True, 4491 "v6.0.5": True, 4492 "v6.4.4": True, 4493 "v6.4.0": True, 4494 "v6.4.1": True, 4495 "v6.2.0": True, 4496 "v6.2.3": True, 4497 "v6.2.5": True, 4498 "v6.2.7": True, 4499 "v6.0.11": True 4500 } 4501 }, 4502 "options": { 4503 "multiple_values": True, 4504 "type": "list", 4505 "options": [ 4506 { 4507 "value": "error-allow", 4508 "revisions": { 4509 "v6.0.0": True, 4510 "v7.0.0": True, 4511 "v6.0.5": True, 4512 "v6.4.4": True, 4513 "v6.4.0": True, 4514 "v6.4.1": True, 4515 "v6.2.0": True, 4516 "v6.2.3": True, 4517 "v6.2.5": True, 4518 "v6.2.7": True, 4519 "v6.0.11": True 4520 } 4521 }, 4522 { 4523 "value": "rate-server-ip", 4524 "revisions": { 4525 "v6.0.0": True, 4526 "v7.0.0": True, 4527 "v6.0.5": True, 4528 "v6.4.4": True, 4529 "v6.4.0": True, 4530 "v6.4.1": True, 4531 "v6.2.0": True, 4532 "v6.2.3": True, 4533 "v6.2.5": True, 4534 "v6.2.7": True, 4535 "v6.0.11": True 4536 } 4537 }, 4538 { 4539 "value": "connect-request-bypass", 4540 "revisions": { 4541 "v6.0.0": True, 4542 "v7.0.0": True, 4543 "v6.0.5": True, 4544 "v6.4.4": True, 4545 "v6.4.0": True, 4546 "v6.4.1": True, 4547 "v6.2.0": True, 4548 "v6.2.3": True, 4549 "v6.2.5": True, 4550 "v6.2.7": True, 4551 "v6.0.11": True 4552 } 4553 }, 4554 { 4555 "value": "ftgd-disable", 4556 "revisions": { 4557 "v6.0.0": True, 4558 "v7.0.0": True, 4559 "v6.0.5": True, 4560 "v6.4.4": True, 4561 "v6.4.0": True, 4562 "v6.4.1": True, 4563 "v6.2.0": True, 4564 "v6.2.3": True, 4565 "v6.2.5": True, 4566 "v6.2.7": True, 4567 "v6.0.11": True 4568 } 4569 } 4570 ], 4571 "revisions": { 4572 "v6.0.0": True, 4573 "v7.0.0": True, 4574 "v6.0.5": True, 4575 "v6.4.4": True, 4576 "v6.4.0": True, 4577 "v6.4.1": True, 4578 "v6.2.0": True, 4579 "v6.2.3": True, 4580 "v6.2.5": True, 4581 "v6.2.7": True, 4582 "v6.0.11": True 4583 } 4584 }, 4585 "rate_crl_urls": { 4586 "type": "string", 4587 "options": [ 4588 { 4589 "value": "disable", 4590 "revisions": { 4591 "v6.0.0": True, 4592 "v7.0.0": True, 4593 "v6.0.5": True, 4594 "v6.4.4": True, 4595 "v6.4.0": True, 4596 "v6.4.1": True, 4597 "v6.2.0": True, 4598 "v6.2.3": True, 4599 "v6.2.5": True, 4600 "v6.2.7": True, 4601 "v6.0.11": True 4602 } 4603 }, 4604 { 4605 "value": "enable", 4606 "revisions": { 4607 "v6.0.0": True, 4608 "v7.0.0": True, 4609 "v6.0.5": True, 4610 "v6.4.4": True, 4611 "v6.4.0": True, 4612 "v6.4.1": True, 4613 "v6.2.0": True, 4614 "v6.2.3": True, 4615 "v6.2.5": True, 4616 "v6.2.7": True, 4617 "v6.0.11": True 4618 } 4619 } 4620 ], 4621 "revisions": { 4622 "v6.0.0": True, 4623 "v7.0.0": True, 4624 "v6.0.5": True, 4625 "v6.4.4": True, 4626 "v6.4.0": True, 4627 "v6.4.1": True, 4628 "v6.2.0": True, 4629 "v6.2.3": True, 4630 "v6.2.5": True, 4631 "v6.2.7": True, 4632 "v6.0.11": True 4633 } 4634 } 4635 }, 4636 "revisions": { 4637 "v6.0.0": True, 4638 "v7.0.0": True, 4639 "v6.0.5": True, 4640 "v6.4.4": True, 4641 "v6.4.0": True, 4642 "v6.4.1": True, 4643 "v6.2.0": True, 4644 "v6.2.3": True, 4645 "v6.2.5": True, 4646 "v6.2.7": True, 4647 "v6.0.11": True 4648 } 4649 }, 4650 "web_extended_all_action_log": { 4651 "type": "string", 4652 "options": [ 4653 { 4654 "value": "enable", 4655 "revisions": { 4656 "v6.0.0": True, 4657 "v7.0.0": True, 4658 "v6.0.5": True, 4659 "v6.4.4": True, 4660 "v6.4.0": True, 4661 "v6.4.1": True, 4662 "v6.2.0": True, 4663 "v6.2.3": True, 4664 "v6.2.5": True, 4665 "v6.2.7": True, 4666 "v6.0.11": True 4667 } 4668 }, 4669 { 4670 "value": "disable", 4671 "revisions": { 4672 "v6.0.0": True, 4673 "v7.0.0": True, 4674 "v6.0.5": True, 4675 "v6.4.4": True, 4676 "v6.4.0": True, 4677 "v6.4.1": True, 4678 "v6.2.0": True, 4679 "v6.2.3": True, 4680 "v6.2.5": True, 4681 "v6.2.7": True, 4682 "v6.0.11": True 4683 } 4684 } 4685 ], 4686 "revisions": { 4687 "v6.0.0": True, 4688 "v7.0.0": True, 4689 "v6.0.5": True, 4690 "v6.4.4": True, 4691 "v6.4.0": True, 4692 "v6.4.1": True, 4693 "v6.2.0": True, 4694 "v6.2.3": True, 4695 "v6.2.5": True, 4696 "v6.2.7": True, 4697 "v6.0.11": True 4698 } 4699 }, 4700 "web_filter_vbs_log": { 4701 "type": "string", 4702 "options": [ 4703 { 4704 "value": "enable", 4705 "revisions": { 4706 "v6.0.0": True, 4707 "v7.0.0": True, 4708 "v6.0.5": True, 4709 "v6.4.4": True, 4710 "v6.4.0": True, 4711 "v6.4.1": True, 4712 "v6.2.0": True, 4713 "v6.2.3": True, 4714 "v6.2.5": True, 4715 "v6.2.7": True, 4716 "v6.0.11": True 4717 } 4718 }, 4719 { 4720 "value": "disable", 4721 "revisions": { 4722 "v6.0.0": True, 4723 "v7.0.0": True, 4724 "v6.0.5": True, 4725 "v6.4.4": True, 4726 "v6.4.0": True, 4727 "v6.4.1": True, 4728 "v6.2.0": True, 4729 "v6.2.3": True, 4730 "v6.2.5": True, 4731 "v6.2.7": True, 4732 "v6.0.11": True 4733 } 4734 } 4735 ], 4736 "revisions": { 4737 "v6.0.0": True, 4738 "v7.0.0": True, 4739 "v6.0.5": True, 4740 "v6.4.4": True, 4741 "v6.4.0": True, 4742 "v6.4.1": True, 4743 "v6.2.0": True, 4744 "v6.2.3": True, 4745 "v6.2.5": True, 4746 "v6.2.7": True, 4747 "v6.0.11": True 4748 } 4749 }, 4750 "antiphish": { 4751 "type": "dict", 4752 "children": { 4753 "status": { 4754 "type": "string", 4755 "options": [ 4756 { 4757 "value": "enable", 4758 "revisions": { 4759 "v6.4.4": True, 4760 "v7.0.0": True, 4761 "v6.4.0": True, 4762 "v6.4.1": True 4763 } 4764 }, 4765 { 4766 "value": "disable", 4767 "revisions": { 4768 "v6.4.4": True, 4769 "v7.0.0": True, 4770 "v6.4.0": True, 4771 "v6.4.1": True 4772 } 4773 } 4774 ], 4775 "revisions": { 4776 "v6.4.4": True, 4777 "v7.0.0": True, 4778 "v6.4.0": True, 4779 "v6.4.1": True 4780 } 4781 }, 4782 "check_uri": { 4783 "type": "string", 4784 "options": [ 4785 { 4786 "value": "enable", 4787 "revisions": { 4788 "v6.4.4": True, 4789 "v7.0.0": True, 4790 "v6.4.0": True, 4791 "v6.4.1": True 4792 } 4793 }, 4794 { 4795 "value": "disable", 4796 "revisions": { 4797 "v6.4.4": True, 4798 "v7.0.0": True, 4799 "v6.4.0": True, 4800 "v6.4.1": True 4801 } 4802 } 4803 ], 4804 "revisions": { 4805 "v6.4.4": True, 4806 "v7.0.0": True, 4807 "v6.4.0": True, 4808 "v6.4.1": True 4809 } 4810 }, 4811 "authentication": { 4812 "type": "string", 4813 "options": [ 4814 { 4815 "value": "domain-controller", 4816 "revisions": { 4817 "v7.0.0": True 4818 } 4819 }, 4820 { 4821 "value": "ldap", 4822 "revisions": { 4823 "v7.0.0": True 4824 } 4825 } 4826 ], 4827 "revisions": { 4828 "v7.0.0": True 4829 } 4830 }, 4831 "max_body_len": { 4832 "type": "integer", 4833 "revisions": { 4834 "v6.4.4": True, 4835 "v7.0.0": True, 4836 "v6.4.0": True, 4837 "v6.4.1": True 4838 } 4839 }, 4840 "custom_patterns": { 4841 "type": "list", 4842 "children": { 4843 "category": { 4844 "type": "string", 4845 "options": [ 4846 { 4847 "value": "username", 4848 "revisions": { 4849 "v6.4.4": True, 4850 "v7.0.0": True, 4851 "v6.4.0": True, 4852 "v6.4.1": True 4853 } 4854 }, 4855 { 4856 "value": "password", 4857 "revisions": { 4858 "v6.4.4": True, 4859 "v7.0.0": True, 4860 "v6.4.0": True, 4861 "v6.4.1": True 4862 } 4863 } 4864 ], 4865 "revisions": { 4866 "v6.4.4": True, 4867 "v7.0.0": True, 4868 "v6.4.0": True, 4869 "v6.4.1": True 4870 } 4871 }, 4872 "pattern": { 4873 "type": "string", 4874 "revisions": { 4875 "v6.4.4": True, 4876 "v7.0.0": True, 4877 "v6.4.0": True, 4878 "v6.4.1": True 4879 } 4880 }, 4881 "type": { 4882 "type": "string", 4883 "options": [ 4884 { 4885 "value": "regex", 4886 "revisions": { 4887 "v7.0.0": True 4888 } 4889 }, 4890 { 4891 "value": "literal", 4892 "revisions": { 4893 "v7.0.0": True 4894 } 4895 } 4896 ], 4897 "revisions": { 4898 "v7.0.0": True 4899 } 4900 } 4901 }, 4902 "revisions": { 4903 "v6.4.4": True, 4904 "v7.0.0": True, 4905 "v6.4.0": True, 4906 "v6.4.1": True 4907 } 4908 }, 4909 "check_basic_auth": { 4910 "type": "string", 4911 "options": [ 4912 { 4913 "value": "enable", 4914 "revisions": { 4915 "v6.4.4": True, 4916 "v7.0.0": True, 4917 "v6.4.0": True, 4918 "v6.4.1": True 4919 } 4920 }, 4921 { 4922 "value": "disable", 4923 "revisions": { 4924 "v6.4.4": True, 4925 "v7.0.0": True, 4926 "v6.4.0": True, 4927 "v6.4.1": True 4928 } 4929 } 4930 ], 4931 "revisions": { 4932 "v6.4.4": True, 4933 "v7.0.0": True, 4934 "v6.4.0": True, 4935 "v6.4.1": True 4936 } 4937 }, 4938 "ldap": { 4939 "type": "string", 4940 "revisions": { 4941 "v7.0.0": True 4942 } 4943 }, 4944 "default_action": { 4945 "type": "string", 4946 "options": [ 4947 { 4948 "value": "exempt", 4949 "revisions": { 4950 "v6.4.4": True, 4951 "v7.0.0": True, 4952 "v6.4.0": True, 4953 "v6.4.1": True 4954 } 4955 }, 4956 { 4957 "value": "log", 4958 "revisions": { 4959 "v6.4.4": True, 4960 "v7.0.0": True, 4961 "v6.4.0": True, 4962 "v6.4.1": True 4963 } 4964 }, 4965 { 4966 "value": "block", 4967 "revisions": { 4968 "v6.4.4": True, 4969 "v7.0.0": True, 4970 "v6.4.0": True, 4971 "v6.4.1": True 4972 } 4973 } 4974 ], 4975 "revisions": { 4976 "v6.4.4": True, 4977 "v7.0.0": True, 4978 "v6.4.0": True, 4979 "v6.4.1": True 4980 } 4981 }, 4982 "check_username_only": { 4983 "type": "string", 4984 "options": [ 4985 { 4986 "value": "enable", 4987 "revisions": { 4988 "v6.4.4": True, 4989 "v7.0.0": True 4990 } 4991 }, 4992 { 4993 "value": "disable", 4994 "revisions": { 4995 "v6.4.4": True, 4996 "v7.0.0": True 4997 } 4998 } 4999 ], 5000 "revisions": { 5001 "v6.4.4": True, 5002 "v7.0.0": True 5003 } 5004 }, 5005 "inspection_entries": { 5006 "type": "list", 5007 "children": { 5008 "action": { 5009 "type": "string", 5010 "options": [ 5011 { 5012 "value": "exempt", 5013 "revisions": { 5014 "v6.4.4": True, 5015 "v7.0.0": True, 5016 "v6.4.0": True, 5017 "v6.4.1": True 5018 } 5019 }, 5020 { 5021 "value": "log", 5022 "revisions": { 5023 "v6.4.4": True, 5024 "v7.0.0": True, 5025 "v6.4.0": True, 5026 "v6.4.1": True 5027 } 5028 }, 5029 { 5030 "value": "block", 5031 "revisions": { 5032 "v6.4.4": True, 5033 "v7.0.0": True, 5034 "v6.4.0": True, 5035 "v6.4.1": True 5036 } 5037 } 5038 ], 5039 "revisions": { 5040 "v6.4.4": True, 5041 "v7.0.0": True, 5042 "v6.4.0": True, 5043 "v6.4.1": True 5044 } 5045 }, 5046 "fortiguard_category": { 5047 "type": "string", 5048 "revisions": { 5049 "v6.4.4": True, 5050 "v7.0.0": True, 5051 "v6.4.0": True, 5052 "v6.4.1": True 5053 } 5054 }, 5055 "name": { 5056 "type": "string", 5057 "revisions": { 5058 "v6.4.4": True, 5059 "v7.0.0": True, 5060 "v6.4.0": True, 5061 "v6.4.1": True 5062 } 5063 } 5064 }, 5065 "revisions": { 5066 "v6.4.4": True, 5067 "v7.0.0": True, 5068 "v6.4.0": True, 5069 "v6.4.1": True 5070 } 5071 }, 5072 "domain_controller": { 5073 "type": "string", 5074 "revisions": { 5075 "v6.4.4": True, 5076 "v7.0.0": True, 5077 "v6.4.0": True, 5078 "v6.4.1": True 5079 } 5080 } 5081 }, 5082 "revisions": { 5083 "v6.4.4": True, 5084 "v7.0.0": True, 5085 "v6.4.0": True, 5086 "v6.4.1": True 5087 } 5088 }, 5089 "web_invalid_domain_log": { 5090 "type": "string", 5091 "options": [ 5092 { 5093 "value": "enable", 5094 "revisions": { 5095 "v6.0.0": True, 5096 "v7.0.0": True, 5097 "v6.0.5": True, 5098 "v6.4.4": True, 5099 "v6.4.0": True, 5100 "v6.4.1": True, 5101 "v6.2.0": True, 5102 "v6.2.3": True, 5103 "v6.2.5": True, 5104 "v6.2.7": True, 5105 "v6.0.11": True 5106 } 5107 }, 5108 { 5109 "value": "disable", 5110 "revisions": { 5111 "v6.0.0": True, 5112 "v7.0.0": True, 5113 "v6.0.5": True, 5114 "v6.4.4": True, 5115 "v6.4.0": True, 5116 "v6.4.1": True, 5117 "v6.2.0": True, 5118 "v6.2.3": True, 5119 "v6.2.5": True, 5120 "v6.2.7": True, 5121 "v6.0.11": True 5122 } 5123 } 5124 ], 5125 "revisions": { 5126 "v6.0.0": True, 5127 "v7.0.0": True, 5128 "v6.0.5": True, 5129 "v6.4.4": True, 5130 "v6.4.0": True, 5131 "v6.4.1": True, 5132 "v6.2.0": True, 5133 "v6.2.3": True, 5134 "v6.2.5": True, 5135 "v6.2.7": True, 5136 "v6.0.11": True 5137 } 5138 }, 5139 "name": { 5140 "type": "string", 5141 "revisions": { 5142 "v6.0.0": True, 5143 "v7.0.0": True, 5144 "v6.0.5": True, 5145 "v6.4.4": True, 5146 "v6.4.0": True, 5147 "v6.4.1": True, 5148 "v6.2.0": True, 5149 "v6.2.3": True, 5150 "v6.2.5": True, 5151 "v6.2.7": True, 5152 "v6.0.11": True 5153 } 5154 }, 5155 "file_filter": { 5156 "type": "dict", 5157 "children": { 5158 "status": { 5159 "type": "string", 5160 "options": [ 5161 { 5162 "value": "enable", 5163 "revisions": { 5164 "v6.2.0": True, 5165 "v6.2.3": True, 5166 "v6.2.5": True, 5167 "v6.2.7": True 5168 } 5169 }, 5170 { 5171 "value": "disable", 5172 "revisions": { 5173 "v6.2.0": True, 5174 "v6.2.3": True, 5175 "v6.2.5": True, 5176 "v6.2.7": True 5177 } 5178 } 5179 ], 5180 "revisions": { 5181 "v6.2.0": True, 5182 "v6.2.3": True, 5183 "v6.2.5": True, 5184 "v6.2.7": True 5185 } 5186 }, 5187 "scan_archive_contents": { 5188 "type": "string", 5189 "options": [ 5190 { 5191 "value": "enable", 5192 "revisions": { 5193 "v6.2.0": True, 5194 "v6.2.3": True, 5195 "v6.2.5": True, 5196 "v6.2.7": True 5197 } 5198 }, 5199 { 5200 "value": "disable", 5201 "revisions": { 5202 "v6.2.0": True, 5203 "v6.2.3": True, 5204 "v6.2.5": True, 5205 "v6.2.7": True 5206 } 5207 } 5208 ], 5209 "revisions": { 5210 "v6.2.0": True, 5211 "v6.2.3": True, 5212 "v6.2.5": True, 5213 "v6.2.7": True 5214 } 5215 }, 5216 "log": { 5217 "type": "string", 5218 "options": [ 5219 { 5220 "value": "enable", 5221 "revisions": { 5222 "v6.2.0": True, 5223 "v6.2.3": True, 5224 "v6.2.5": True, 5225 "v6.2.7": True 5226 } 5227 }, 5228 { 5229 "value": "disable", 5230 "revisions": { 5231 "v6.2.0": True, 5232 "v6.2.3": True, 5233 "v6.2.5": True, 5234 "v6.2.7": True 5235 } 5236 } 5237 ], 5238 "revisions": { 5239 "v6.2.0": True, 5240 "v6.2.3": True, 5241 "v6.2.5": True, 5242 "v6.2.7": True 5243 } 5244 }, 5245 "entries": { 5246 "type": "list", 5247 "children": { 5248 "comment": { 5249 "type": "string", 5250 "revisions": { 5251 "v6.2.0": True, 5252 "v6.2.3": True, 5253 "v6.2.5": True, 5254 "v6.2.7": True 5255 } 5256 }, 5257 "direction": { 5258 "type": "string", 5259 "options": [ 5260 { 5261 "value": "incoming", 5262 "revisions": { 5263 "v6.2.0": True, 5264 "v6.2.3": True, 5265 "v6.2.5": True, 5266 "v6.2.7": True 5267 } 5268 }, 5269 { 5270 "value": "outgoing", 5271 "revisions": { 5272 "v6.2.0": True, 5273 "v6.2.3": True, 5274 "v6.2.5": True, 5275 "v6.2.7": True 5276 } 5277 }, 5278 { 5279 "value": "any", 5280 "revisions": { 5281 "v6.2.0": True, 5282 "v6.2.3": True, 5283 "v6.2.5": True, 5284 "v6.2.7": True 5285 } 5286 } 5287 ], 5288 "revisions": { 5289 "v6.2.0": True, 5290 "v6.2.3": True, 5291 "v6.2.5": True, 5292 "v6.2.7": True 5293 } 5294 }, 5295 "protocol": { 5296 "multiple_values": True, 5297 "type": "list", 5298 "options": [ 5299 { 5300 "value": "http", 5301 "revisions": { 5302 "v6.2.0": True, 5303 "v6.2.3": True, 5304 "v6.2.5": True, 5305 "v6.2.7": True 5306 } 5307 }, 5308 { 5309 "value": "ftp", 5310 "revisions": { 5311 "v6.2.0": True, 5312 "v6.2.3": True, 5313 "v6.2.5": True, 5314 "v6.2.7": True 5315 } 5316 } 5317 ], 5318 "revisions": { 5319 "v6.2.0": True, 5320 "v6.2.3": True, 5321 "v6.2.5": True, 5322 "v6.2.7": True 5323 } 5324 }, 5325 "file_type": { 5326 "type": "list", 5327 "children": { 5328 "name": { 5329 "type": "string", 5330 "revisions": { 5331 "v6.2.0": True, 5332 "v6.2.3": True, 5333 "v6.2.5": True, 5334 "v6.2.7": True 5335 } 5336 } 5337 }, 5338 "revisions": { 5339 "v6.2.0": True, 5340 "v6.2.3": True, 5341 "v6.2.5": True, 5342 "v6.2.7": True 5343 } 5344 }, 5345 "password_protected": { 5346 "type": "string", 5347 "options": [ 5348 { 5349 "value": "yes", 5350 "revisions": { 5351 "v6.2.0": True, 5352 "v6.2.3": True, 5353 "v6.2.5": True, 5354 "v6.2.7": True 5355 } 5356 }, 5357 { 5358 "value": "any", 5359 "revisions": { 5360 "v6.2.0": True, 5361 "v6.2.3": True, 5362 "v6.2.5": True, 5363 "v6.2.7": True 5364 } 5365 } 5366 ], 5367 "revisions": { 5368 "v6.2.0": True, 5369 "v6.2.3": True, 5370 "v6.2.5": True, 5371 "v6.2.7": True 5372 } 5373 }, 5374 "filter": { 5375 "type": "string", 5376 "revisions": { 5377 "v6.2.0": True, 5378 "v6.2.3": True, 5379 "v6.2.5": True, 5380 "v6.2.7": True 5381 } 5382 }, 5383 "action": { 5384 "type": "string", 5385 "options": [ 5386 { 5387 "value": "log", 5388 "revisions": { 5389 "v6.2.0": True, 5390 "v6.2.3": True, 5391 "v6.2.5": True, 5392 "v6.2.7": True 5393 } 5394 }, 5395 { 5396 "value": "block", 5397 "revisions": { 5398 "v6.2.0": True, 5399 "v6.2.3": True, 5400 "v6.2.5": True, 5401 "v6.2.7": True 5402 } 5403 } 5404 ], 5405 "revisions": { 5406 "v6.2.0": True, 5407 "v6.2.3": True, 5408 "v6.2.5": True, 5409 "v6.2.7": True 5410 } 5411 } 5412 }, 5413 "revisions": { 5414 "v6.2.0": True, 5415 "v6.2.3": True, 5416 "v6.2.5": True, 5417 "v6.2.7": True 5418 } 5419 } 5420 }, 5421 "revisions": { 5422 "v7.0.0": False, 5423 "v6.4.4": False, 5424 "v6.4.0": False, 5425 "v6.4.1": False, 5426 "v6.2.0": True, 5427 "v6.2.3": True, 5428 "v6.2.5": True, 5429 "v6.2.7": True 5430 } 5431 }, 5432 "wisp": { 5433 "type": "string", 5434 "options": [ 5435 { 5436 "value": "enable", 5437 "revisions": { 5438 "v6.0.0": True, 5439 "v7.0.0": True, 5440 "v6.0.5": True, 5441 "v6.4.4": True, 5442 "v6.4.0": True, 5443 "v6.4.1": True, 5444 "v6.2.0": True, 5445 "v6.2.3": True, 5446 "v6.2.5": True, 5447 "v6.2.7": True, 5448 "v6.0.11": True 5449 } 5450 }, 5451 { 5452 "value": "disable", 5453 "revisions": { 5454 "v6.0.0": True, 5455 "v7.0.0": True, 5456 "v6.0.5": True, 5457 "v6.4.4": True, 5458 "v6.4.0": True, 5459 "v6.4.1": True, 5460 "v6.2.0": True, 5461 "v6.2.3": True, 5462 "v6.2.5": True, 5463 "v6.2.7": True, 5464 "v6.0.11": True 5465 } 5466 } 5467 ], 5468 "revisions": { 5469 "v6.0.0": True, 5470 "v7.0.0": True, 5471 "v6.0.5": True, 5472 "v6.4.4": True, 5473 "v6.4.0": True, 5474 "v6.4.1": True, 5475 "v6.2.0": True, 5476 "v6.2.3": True, 5477 "v6.2.5": True, 5478 "v6.2.7": True, 5479 "v6.0.11": True 5480 } 5481 }, 5482 "youtube_channel_filter": { 5483 "type": "list", 5484 "children": { 5485 "comment": { 5486 "type": "string", 5487 "revisions": { 5488 "v6.0.0": True, 5489 "v6.0.5": True, 5490 "v6.4.4": True, 5491 "v6.4.0": True, 5492 "v6.4.1": True, 5493 "v6.2.0": True, 5494 "v6.2.3": True, 5495 "v6.2.5": True, 5496 "v6.2.7": True, 5497 "v6.0.11": True 5498 } 5499 }, 5500 "channel_id": { 5501 "type": "string", 5502 "revisions": { 5503 "v6.0.0": True, 5504 "v6.0.5": True, 5505 "v6.4.4": True, 5506 "v6.4.0": True, 5507 "v6.4.1": True, 5508 "v6.2.0": True, 5509 "v6.2.3": True, 5510 "v6.2.5": True, 5511 "v6.2.7": True, 5512 "v6.0.11": True 5513 } 5514 }, 5515 "id": { 5516 "type": "integer", 5517 "revisions": { 5518 "v6.0.0": True, 5519 "v6.0.5": True, 5520 "v6.4.4": True, 5521 "v6.4.0": True, 5522 "v6.4.1": True, 5523 "v6.2.0": True, 5524 "v6.2.3": True, 5525 "v6.2.5": True, 5526 "v6.2.7": True, 5527 "v6.0.11": True 5528 } 5529 } 5530 }, 5531 "revisions": { 5532 "v6.0.0": True, 5533 "v7.0.0": False, 5534 "v6.0.5": True, 5535 "v6.4.4": True, 5536 "v6.4.0": True, 5537 "v6.4.1": True, 5538 "v6.2.0": True, 5539 "v6.2.3": True, 5540 "v6.2.5": True, 5541 "v6.2.7": True, 5542 "v6.0.11": True 5543 } 5544 }, 5545 "https_replacemsg": { 5546 "type": "string", 5547 "options": [ 5548 { 5549 "value": "enable", 5550 "revisions": { 5551 "v6.0.0": True, 5552 "v7.0.0": True, 5553 "v6.0.5": True, 5554 "v6.4.4": True, 5555 "v6.4.0": True, 5556 "v6.4.1": True, 5557 "v6.2.0": True, 5558 "v6.2.3": True, 5559 "v6.2.5": True, 5560 "v6.2.7": True, 5561 "v6.0.11": True 5562 } 5563 }, 5564 { 5565 "value": "disable", 5566 "revisions": { 5567 "v6.0.0": True, 5568 "v7.0.0": True, 5569 "v6.0.5": True, 5570 "v6.4.4": True, 5571 "v6.4.0": True, 5572 "v6.4.1": True, 5573 "v6.2.0": True, 5574 "v6.2.3": True, 5575 "v6.2.5": True, 5576 "v6.2.7": True, 5577 "v6.0.11": True 5578 } 5579 } 5580 ], 5581 "revisions": { 5582 "v6.0.0": True, 5583 "v7.0.0": True, 5584 "v6.0.5": True, 5585 "v6.4.4": True, 5586 "v6.4.0": True, 5587 "v6.4.1": True, 5588 "v6.2.0": True, 5589 "v6.2.3": True, 5590 "v6.2.5": True, 5591 "v6.2.7": True, 5592 "v6.0.11": True 5593 } 5594 }, 5595 "log_all_url": { 5596 "type": "string", 5597 "options": [ 5598 { 5599 "value": "enable", 5600 "revisions": { 5601 "v6.0.0": True, 5602 "v7.0.0": True, 5603 "v6.0.5": True, 5604 "v6.4.4": True, 5605 "v6.4.0": True, 5606 "v6.4.1": True, 5607 "v6.2.0": True, 5608 "v6.2.3": True, 5609 "v6.2.5": True, 5610 "v6.2.7": True, 5611 "v6.0.11": True 5612 } 5613 }, 5614 { 5615 "value": "disable", 5616 "revisions": { 5617 "v6.0.0": True, 5618 "v7.0.0": True, 5619 "v6.0.5": True, 5620 "v6.4.4": True, 5621 "v6.4.0": True, 5622 "v6.4.1": True, 5623 "v6.2.0": True, 5624 "v6.2.3": True, 5625 "v6.2.5": True, 5626 "v6.2.7": True, 5627 "v6.0.11": True 5628 } 5629 } 5630 ], 5631 "revisions": { 5632 "v6.0.0": True, 5633 "v7.0.0": True, 5634 "v6.0.5": True, 5635 "v6.4.4": True, 5636 "v6.4.0": True, 5637 "v6.4.1": True, 5638 "v6.2.0": True, 5639 "v6.2.3": True, 5640 "v6.2.5": True, 5641 "v6.2.7": True, 5642 "v6.0.11": True 5643 } 5644 }, 5645 "options": { 5646 "multiple_values": True, 5647 "type": "list", 5648 "options": [ 5649 { 5650 "value": "activexfilter", 5651 "revisions": { 5652 "v6.0.0": True, 5653 "v7.0.0": True, 5654 "v6.0.5": True, 5655 "v6.4.4": True, 5656 "v6.4.0": True, 5657 "v6.4.1": True, 5658 "v6.2.0": True, 5659 "v6.2.3": True, 5660 "v6.2.5": True, 5661 "v6.2.7": True, 5662 "v6.0.11": True 5663 } 5664 }, 5665 { 5666 "value": "cookiefilter", 5667 "revisions": { 5668 "v6.0.0": True, 5669 "v7.0.0": True, 5670 "v6.0.5": True, 5671 "v6.4.4": True, 5672 "v6.4.0": True, 5673 "v6.4.1": True, 5674 "v6.2.0": True, 5675 "v6.2.3": True, 5676 "v6.2.5": True, 5677 "v6.2.7": True, 5678 "v6.0.11": True 5679 } 5680 }, 5681 { 5682 "value": "javafilter", 5683 "revisions": { 5684 "v6.0.0": True, 5685 "v7.0.0": True, 5686 "v6.0.5": True, 5687 "v6.4.4": True, 5688 "v6.4.0": True, 5689 "v6.4.1": True, 5690 "v6.2.0": True, 5691 "v6.2.3": True, 5692 "v6.2.5": True, 5693 "v6.2.7": True, 5694 "v6.0.11": True 5695 } 5696 }, 5697 { 5698 "value": "block-invalid-url", 5699 "revisions": { 5700 "v6.0.0": True, 5701 "v7.0.0": True, 5702 "v6.0.5": True, 5703 "v6.4.4": True, 5704 "v6.4.0": True, 5705 "v6.4.1": True, 5706 "v6.2.0": True, 5707 "v6.2.3": True, 5708 "v6.2.5": True, 5709 "v6.2.7": True, 5710 "v6.0.11": True 5711 } 5712 }, 5713 { 5714 "value": "jscript", 5715 "revisions": { 5716 "v6.0.0": True, 5717 "v7.0.0": True, 5718 "v6.0.5": True, 5719 "v6.4.4": True, 5720 "v6.4.0": True, 5721 "v6.4.1": True, 5722 "v6.2.0": True, 5723 "v6.2.3": True, 5724 "v6.2.5": True, 5725 "v6.2.7": True, 5726 "v6.0.11": True 5727 } 5728 }, 5729 { 5730 "value": "js", 5731 "revisions": { 5732 "v6.0.0": True, 5733 "v7.0.0": True, 5734 "v6.0.5": True, 5735 "v6.4.4": True, 5736 "v6.4.0": True, 5737 "v6.4.1": True, 5738 "v6.2.0": True, 5739 "v6.2.3": True, 5740 "v6.2.5": True, 5741 "v6.2.7": True, 5742 "v6.0.11": True 5743 } 5744 }, 5745 { 5746 "value": "vbs", 5747 "revisions": { 5748 "v6.0.0": True, 5749 "v7.0.0": True, 5750 "v6.0.5": True, 5751 "v6.4.4": True, 5752 "v6.4.0": True, 5753 "v6.4.1": True, 5754 "v6.2.0": True, 5755 "v6.2.3": True, 5756 "v6.2.5": True, 5757 "v6.2.7": True, 5758 "v6.0.11": True 5759 } 5760 }, 5761 { 5762 "value": "unknown", 5763 "revisions": { 5764 "v6.0.0": True, 5765 "v7.0.0": True, 5766 "v6.0.5": True, 5767 "v6.4.4": True, 5768 "v6.4.0": True, 5769 "v6.4.1": True, 5770 "v6.2.0": True, 5771 "v6.2.3": True, 5772 "v6.2.5": True, 5773 "v6.2.7": True, 5774 "v6.0.11": True 5775 } 5776 }, 5777 { 5778 "value": "intrinsic", 5779 "revisions": { 5780 "v6.0.0": True, 5781 "v7.0.0": True, 5782 "v6.0.5": True, 5783 "v6.4.4": True, 5784 "v6.4.0": True, 5785 "v6.4.1": True, 5786 "v6.2.0": True, 5787 "v6.2.3": True, 5788 "v6.2.5": True, 5789 "v6.2.7": True, 5790 "v6.0.11": True 5791 } 5792 }, 5793 { 5794 "value": "wf-referer", 5795 "revisions": { 5796 "v6.0.0": True, 5797 "v7.0.0": True, 5798 "v6.0.5": True, 5799 "v6.4.4": True, 5800 "v6.4.0": True, 5801 "v6.4.1": True, 5802 "v6.2.0": True, 5803 "v6.2.3": True, 5804 "v6.2.5": True, 5805 "v6.2.7": True, 5806 "v6.0.11": True 5807 } 5808 }, 5809 { 5810 "value": "wf-cookie", 5811 "revisions": { 5812 "v6.0.0": True, 5813 "v7.0.0": True, 5814 "v6.0.5": True, 5815 "v6.4.4": True, 5816 "v6.4.0": True, 5817 "v6.4.1": True, 5818 "v6.2.0": True, 5819 "v6.2.3": True, 5820 "v6.2.5": True, 5821 "v6.2.7": True, 5822 "v6.0.11": True 5823 } 5824 }, 5825 { 5826 "value": "per-user-bwl", 5827 "revisions": { 5828 "v6.0.0": True, 5829 "v7.0.0": False, 5830 "v6.0.5": True, 5831 "v6.4.4": True, 5832 "v6.4.0": True, 5833 "v6.4.1": True, 5834 "v6.2.0": True, 5835 "v6.2.3": True, 5836 "v6.2.5": True, 5837 "v6.2.7": True, 5838 "v6.0.11": True 5839 } 5840 }, 5841 { 5842 "value": "per-user-bal", 5843 "revisions": { 5844 "v7.0.0": True 5845 } 5846 } 5847 ], 5848 "revisions": { 5849 "v6.0.0": True, 5850 "v7.0.0": True, 5851 "v6.0.5": True, 5852 "v6.4.4": True, 5853 "v6.4.0": True, 5854 "v6.4.1": True, 5855 "v6.2.0": True, 5856 "v6.2.3": True, 5857 "v6.2.5": True, 5858 "v6.2.7": True, 5859 "v6.0.11": True 5860 } 5861 }, 5862 "inspection_mode": { 5863 "type": "string", 5864 "options": [ 5865 { 5866 "value": "proxy", 5867 "revisions": { 5868 "v6.0.11": True, 5869 "v6.0.0": True, 5870 "v6.0.5": True 5871 } 5872 }, 5873 { 5874 "value": "flow-based", 5875 "revisions": { 5876 "v6.0.11": True, 5877 "v6.0.0": True, 5878 "v6.0.5": True 5879 } 5880 } 5881 ], 5882 "revisions": { 5883 "v6.0.0": True, 5884 "v7.0.0": False, 5885 "v6.0.5": True, 5886 "v6.4.4": False, 5887 "v6.4.0": False, 5888 "v6.4.1": False, 5889 "v6.2.0": False, 5890 "v6.2.3": False, 5891 "v6.2.5": False, 5892 "v6.2.7": False, 5893 "v6.0.11": True 5894 } 5895 } 5896 }, 5897 "revisions": { 5898 "v6.0.0": True, 5899 "v7.0.0": True, 5900 "v6.0.5": True, 5901 "v6.4.4": True, 5902 "v6.4.0": True, 5903 "v6.4.1": True, 5904 "v6.2.0": True, 5905 "v6.2.3": True, 5906 "v6.2.5": True, 5907 "v6.2.7": True, 5908 "v6.0.11": True 5909 } 5910} 5911 5912 5913def main(): 5914 module_spec = schema_to_module_spec(versioned_schema) 5915 mkeyname = 'name' 5916 fields = { 5917 "access_token": {"required": False, "type": "str", "no_log": True}, 5918 "enable_log": {"required": False, "type": bool}, 5919 "vdom": {"required": False, "type": "str", "default": "root"}, 5920 "state": {"required": True, "type": "str", 5921 "choices": ["present", "absent"]}, 5922 "webfilter_profile": { 5923 "required": False, "type": "dict", "default": None, 5924 "options": { 5925 } 5926 } 5927 } 5928 for attribute_name in module_spec['options']: 5929 fields["webfilter_profile"]['options'][attribute_name] = module_spec['options'][attribute_name] 5930 if mkeyname and mkeyname == attribute_name: 5931 fields["webfilter_profile"]['options'][attribute_name]['required'] = True 5932 5933 check_legacy_fortiosapi() 5934 module = AnsibleModule(argument_spec=fields, 5935 supports_check_mode=True) 5936 5937 versions_check_result = None 5938 if module._socket_path: 5939 connection = Connection(module._socket_path) 5940 if 'access_token' in module.params: 5941 connection.set_option('access_token', module.params['access_token']) 5942 5943 if 'enable_log' in module.params: 5944 connection.set_option('enable_log', module.params['enable_log']) 5945 else: 5946 connection.set_option('enable_log', False) 5947 fos = FortiOSHandler(connection, module, mkeyname) 5948 versions_check_result = check_schema_versioning(fos, versioned_schema, "webfilter_profile") 5949 5950 is_error, has_changed, result = fortios_webfilter(module.params, fos, module.check_mode) 5951 5952 else: 5953 module.fail_json(**FAIL_SOCKET_MSG) 5954 5955 if versions_check_result and versions_check_result['matched'] is False: 5956 module.warn("Ansible has detected version mismatch between FortOS system and your playbook, see more details by specifying option -vvv") 5957 5958 if not is_error: 5959 if versions_check_result and versions_check_result['matched'] is False: 5960 module.exit_json(changed=has_changed, version_check_warning=versions_check_result, meta=result) 5961 else: 5962 module.exit_json(changed=has_changed, meta=result) 5963 else: 5964 if versions_check_result and versions_check_result['matched'] is False: 5965 module.fail_json(msg="Error in repo", version_check_warning=versions_check_result, meta=result) 5966 else: 5967 module.fail_json(msg="Error in repo", meta=result) 5968 5969 5970if __name__ == '__main__': 5971 main() 5972