Class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityActionConditionConfig
- Inherits:
-
Object
- Object
- Google::Apis::ApigeeV1::GoogleCloudApigeeV1SecurityActionConditionConfig
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/apigee_v1/classes.rb,
lib/google/apis/apigee_v1/representations.rb,
lib/google/apis/apigee_v1/representations.rb
Overview
The following are a list of conditions. A valid SecurityAction must contain at least one condition. Within a condition, each element is ORed. Across conditions elements are ANDed. For example if a SecurityAction has the following: ip_address_ranges: ["ip1", "ip2"] and bot_reasons: ["Flooder", " Robot Abuser"] then this is interpreted as: enforce the action if the incoming request has ((ip_address_ranges = "ip1" OR ip_address_ranges = "ip2") AND ( bot_reasons="Flooder" OR bot_reasons="Robot Abuser")). Conditions other than ip_address_ranges and bot_reasons cannot be ANDed.
Instance Attribute Summary collapse
-
#access_tokens ⇒ Array<String>
Optional.
-
#api_keys ⇒ Array<String>
Optional.
-
#api_products ⇒ Array<String>
Optional.
-
#asns ⇒ Array<Fixnum>
Optional.
-
#bot_reasons ⇒ Array<String>
Optional.
-
#developer_apps ⇒ Array<String>
Optional.
-
#developers ⇒ Array<String>
Optional.
-
#http_methods ⇒ Array<String>
Optional.
-
#ip_address_ranges ⇒ Array<String>
Optional.
-
#region_codes ⇒ Array<String>
Optional.
-
#user_agents ⇒ Array<String>
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudApigeeV1SecurityActionConditionConfig
constructor
A new instance of GoogleCloudApigeeV1SecurityActionConditionConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudApigeeV1SecurityActionConditionConfig
Returns a new instance of GoogleCloudApigeeV1SecurityActionConditionConfig.
9665 9666 9667 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9665 def initialize(**args) update!(**args) end |
Instance Attribute Details
#access_tokens ⇒ Array<String>
Optional. A list of access_tokens. Limit 1000 per action.
Corresponds to the JSON property accessTokens
9603 9604 9605 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9603 def access_tokens @access_tokens end |
#api_keys ⇒ Array<String>
Optional. A list of API keys. Limit 1000 per action.
Corresponds to the JSON property apiKeys
9608 9609 9610 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9608 def api_keys @api_keys end |
#api_products ⇒ Array<String>
Optional. A list of API Products. Limit 1000 per action.
Corresponds to the JSON property apiProducts
9613 9614 9615 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9613 def api_products @api_products end |
#asns ⇒ Array<Fixnum>
Optional. A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/
wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of
https://linter.aip.dev/141/forbidden-types.
Corresponds to the JSON property asns
9620 9621 9622 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9620 def asns @asns end |
#bot_reasons ⇒ Array<String>
Optional. A list of Bot Reasons. Current options: Flooder, Brute Guessor,
Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced
Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds,
Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
Corresponds to the JSON property botReasons
9628 9629 9630 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9628 def bot_reasons @bot_reasons end |
#developer_apps ⇒ Array<String>
Optional. A list of developer apps. Limit 1000 per action.
Corresponds to the JSON property developerApps
9633 9634 9635 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9633 def developer_apps @developer_apps end |
#developers ⇒ Array<String>
Optional. A list of developers. Limit 1000 per action.
Corresponds to the JSON property developers
9638 9639 9640 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9638 def developers @developers end |
#http_methods ⇒ Array<String>
Optional. Act only on particular HTTP methods. E.g. A read-only API can block
POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE,
CONNECT, OPTIONS, TRACE and PATCH.
Corresponds to the JSON property httpMethods
9645 9646 9647 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9645 def http_methods @http_methods end |
#ip_address_ranges ⇒ Array<String>
Optional. A list of IP addresses. This could be either IPv4 or IPv6. Limited
to 100 per action.
Corresponds to the JSON property ipAddressRanges
9651 9652 9653 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9651 def ip_address_ranges @ip_address_ranges end |
#region_codes ⇒ Array<String>
Optional. A list of countries/region codes to act on, e.g. US. This follows
https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
Corresponds to the JSON property regionCodes
9657 9658 9659 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9657 def region_codes @region_codes end |
#user_agents ⇒ Array<String>
Optional. A list of user agents to deny. We look for exact matches. Limit 50
per action.
Corresponds to the JSON property userAgents
9663 9664 9665 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9663 def user_agents @user_agents end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
9670 9671 9672 9673 9674 9675 9676 9677 9678 9679 9680 9681 9682 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 9670 def update!(**args) @access_tokens = args[:access_tokens] if args.key?(:access_tokens) @api_keys = args[:api_keys] if args.key?(:api_keys) @api_products = args[:api_products] if args.key?(:api_products) @asns = args[:asns] if args.key?(:asns) @bot_reasons = args[:bot_reasons] if args.key?(:bot_reasons) @developer_apps = args[:developer_apps] if args.key?(:developer_apps) @developers = args[:developers] if args.key?(:developers) @http_methods = args[:http_methods] if args.key?(:http_methods) @ip_address_ranges = args[:ip_address_ranges] if args.key?(:ip_address_ranges) @region_codes = args[:region_codes] if args.key?(:region_codes) @user_agents = args[:user_agents] if args.key?(:user_agents) end |