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.
10893 10894 10895 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10893 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
10831 10832 10833 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10831 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
10836 10837 10838 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10836 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
10841 10842 10843 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10841 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
10848 10849 10850 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10848 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
10856 10857 10858 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10856 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
10861 10862 10863 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10861 def developer_apps @developer_apps end |
#developers ⇒ Array<String>
Optional. A list of developers. Limit 1000 per action.
Corresponds to the JSON property developers
10866 10867 10868 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10866 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
10873 10874 10875 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10873 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
10879 10880 10881 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10879 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
10885 10886 10887 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10885 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
10891 10892 10893 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10891 def user_agents @user_agents end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 |
# File 'lib/google/apis/apigee_v1/classes.rb', line 10898 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 |