netscaler.adc.botprofile_ratelimit_binding (2.5.1) — module

Binding Resource definition for describing association between botprofile and ratelimit resources

| "added in version" 2.0.0 of netscaler.adc"

Authors: Sumanth Lingappa (@sumanth-lingappa)

preview | supported by community

Install collection

Install with ansible-galaxy collection install netscaler.adc:==2.5.1


Add to requirements.yml

  collections:
    - name: netscaler.adc
      version: 2.5.1

Description

Binding Resource definition for describing association between botprofile and ratelimit resources

Inputs

    
name:
    description:
    - Name for the profile. Must begin with a letter, number, or the underscore character
      (_), and must contain only letters, numbers, and the hyphen (-), period (.), pound
      (#), space ( ), at (@), equals (=), colon (:), and underscore (_) characters. Cannot
      be changed after the profile is added.
    - ''
    - 'The following requirement applies only to the Citrix ADC CLI:'
    - If the name includes one or more spaces, enclose the name in double or single quotation
      marks (for example, "my profile" or 'my profile').
    type: str

nsip:
    description:
    - The ip address of the NetScaler ADC appliance where the nitro API calls will be
      made.
    - The port can be specified with the colon (:). E.g. 192.168.1.1:555.
    required: true
    type: str

rate:
    description:
    - Maximum number of requests that are allowed in this session in the given period
      time.
    type: float

state:
    choices:
    - present
    - absent
    default: present
    description:
    - The state of the resource being configured by the module on the NetScaler ADC node.
    - When C(present), the resource will be added/updated configured according to the
      module's parameters.
    - When C(absent), the resource will be deleted from the NetScaler ADC node.
    type: str

api_path:
    default: nitro/v1/config
    description:
    - Base NITRO API path.
    - Define only in case of an ADM service proxy call
    type: str

timeslice:
    description:
    - Time interval during which requests are tracked to check if they cross the given
      rate.
    type: float

cookiename:
    description:
    - Cookie name which is used to identify the session for session rate-limiting.
    type: str

logmessage:
    description:
    - Message to be logged for this binding.
    type: str

nitro_pass:
    description:
    - The password with which to authenticate to the NetScaler ADC node.
    required: false
    type: str

nitro_user:
    description:
    - The username with which to authenticate to the NetScaler ADC node.
    required: false
    type: str

countrycode:
    choices:
    - AF
    - AX
    - AL
    - DZ
    - AS
    - AD
    - AO
    - AI
    - AQ
    - AG
    - AR
    - AM
    - AW
    - AU
    - AT
    - AZ
    - BS
    - BH
    - BD
    - BB
    - BY
    - BE
    - BZ
    - BJ
    - BM
    - BT
    - BO
    - BQ
    - BA
    - BW
    - BR
    - IO
    - BN
    - BG
    - BF
    - BI
    - KH
    - CM
    - CA
    - CV
    - KY
    - CF
    - TD
    - CL
    - CN
    - CX
    - CC
    - CO
    - KM
    - CG
    - CD
    - CK
    - CR
    - CI
    - HR
    - CU
    - CW
    - CY
    - CZ
    - DK
    - DJ
    - DM
    - DO
    - EC
    - EG
    - SV
    - GQ
    - ER
    - EE
    - ET
    - FK
    - FO
    - FJ
    - FI
    - FR
    - GF
    - PF
    - TF
    - GA
    - GM
    - GE
    - DE
    - GH
    - GI
    - GR
    - GL
    - GD
    - GP
    - GU
    - GT
    - GG
    - GN
    - GW
    - GY
    - HT
    - HM
    - VA
    - HN
    - HK
    - HU
    - IS
    - IN
    - ID
    - IR
    - IQ
    - IE
    - IM
    - IL
    - IT
    - JM
    - JP
    - JE
    - JO
    - KZ
    - KE
    - KI
    - XK
    - KW
    - KG
    - LA
    - LV
    - LB
    - LS
    - LR
    - LY
    - LI
    - LT
    - LU
    - MO
    - MK
    - MG
    - MW
    - MY
    - MV
    - ML
    - MT
    - MH
    - MQ
    - MR
    - MU
    - YT
    - MX
    - FM
    - MD
    - MC
    - MN
    - ME
    - MS
    - MA
    - MZ
    - MM
    - NA
    - NR
    - NP
    - NL
    - NC
    - NZ
    - NI
    - NE
    - NG
    - NU
    - NF
    - KP
    - MP
    - 'NO'
    - OM
    - PK
    - PW
    - PS
    - PA
    - PG
    - PY
    - PE
    - PH
    - PN
    - PL
    - PT
    - PR
    - QA
    - RE
    - RO
    - RU
    - RW
    - BL
    - SH
    - KN
    - LC
    - MF
    - PM
    - VC
    - WS
    - SM
    - ST
    - SA
    - SN
    - RS
    - SC
    - SL
    - SG
    - SX
    - SK
    - SI
    - SB
    - SO
    - SZA
    - GS
    - KR
    - SS
    - ES
    - LK
    - SD
    - SR
    - SJ
    - SZ
    - SE
    - CH
    - SY
    - TW
    - TJ
    - TZ
    - TH
    - TL
    - TG
    - TK
    - TO
    - TT
    - TN
    - TR
    - TM
    - TC
    - TV
    - UG
    - UA
    - AE
    - GB
    - US
    - UM
    - UY
    - UZ
    - VU
    - VE
    - VN
    - VG
    - VI
    - WF
    - EH
    - YE
    - ZM
    - ZW
    description:
    - Country name which is used for geolocation rate-limiting.
    type: str

save_config:
    default: false
    description:
    - If C(true) the module will save the configuration on the NetScaler ADC node if it
      makes any changes.
    - The module will not save the configuration on the NetScaler ADC node if it made
      no changes.
    type: bool

bot_ratelimit:
    description:
    - Rate-limit binding. Maximum 30 bindings can be configured per profile for rate-limit
      detection. For SOURCE_IP type, only one binding can be configured, and for URL type,
      only one binding is allowed per URL, and for SESSION type, only one binding is allowed
      for a cookie name. To update the values of an existing binding, user has to first
      unbind that binding, and then needs to bind again with new values.
    type: bool

nitro_protocol:
    choices:
    - http
    - https
    default: https
    description:
    - Which protocol to use when accessing the nitro API objects.
    type: str

validate_certs:
    default: true
    description:
    - If C(false), SSL certificates will not be validated. This should only be used on
      personally controlled sites using self-signed certificates.
    required: false
    type: bool

bot_bind_comment:
    description:
    - Any comments about this binding.
    type: str

nitro_auth_token:
    description:
    - The authentication token provided by a login operation.
    type: str
    version_added: 2.6.0
    version_added_collection: netscaler.adc

bot_rate_limit_url:
    description:
    - URL for the resource based rate-limiting.
    type: str

bot_rate_limit_type:
    choices:
    - SESSION
    - SOURCE_IP
    - URL
    - GEOLOCATION
    - JA3_FINGERPRINT
    description:
    - 'Rate-limiting type Following rate-limiting types are allowed:'
    - '*C(SOURCE_IP) - Rate-limiting based on the client IP.'
    - '*C(SESSION) - Rate-limiting based on the configured cookie name.'
    - '*C(URL) - Rate-limiting based on the configured C(URL).'
    - '*C(GEOLOCATION) - Rate-limiting based on the configured country name.'
    type: str

bot_rate_limit_action:
    choices:
    - NONE
    - LOG
    - DROP
    - REDIRECT
    - RESET
    description:
    - One or more actions to be taken when the current rate becomes more than the configured
      rate. Only C(LOG) action can be combined with C(DROP), C(REDIRECT) or C(RESET) action.
    elements: str
    type: list

bot_rate_limit_enabled:
    choices:
    - 'ON'
    - 'OFF'
    description:
    - Enable or disable rate-limit binding.
    type: str

Outputs

changed:
  description: Indicates if any change is made by the module
  returned: always
  sample: true
  type: bool
diff:
  description: Dictionary of before and after changes
  returned: always
  sample:
    after:
      key2: pqr
    before:
      key1: xyz
    prepared: changes done
  type: dict
diff_list:
  description: List of differences between the actual configured object and the configuration
    specified in the module
  returned: when changed
  sample:
  - 'Attribute `key1` differs. Desired: (<class ''str''>) XYZ. Existing: (<class ''str''>)
    PQR'
  type: list
failed:
  description: Indicates if the module failed or not
  returned: always
  sample: false
  type: bool
loglines:
  description: list of logged messages by the module
  returned: always
  sample:
  - message 1
  - message 2
  type: list