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.
10855 10856 10857 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10855 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
10793 10794 10795 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10793 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
10798 10799 10800 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10798 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
10803 10804 10805 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10803 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
10810 10811 10812 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10810 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
10818 10819 10820 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10818 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
10823 10824 10825 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10823 def developer_apps @developer_apps end |
#developers ⇒ Array<String>
Optional. A list of developers. Limit 1000 per action.
Corresponds to the JSON property developers
10828 10829 10830 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10828 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
10835 10836 10837 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10835 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
10841 10842 10843 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10841 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
10847 10848 10849 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10847 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
10853 10854 10855 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10853 def user_agents @user_agents end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
10860 10861 10862 10863 10864 10865 10866 10867 10868 10869 10870 10871 10872 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10860 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 |