|
3 | 3 | "config": { |
4 | 4 | "properties": { |
5 | 5 | "anonymous": { |
| 6 | + "description": "An optional string (consumer UUID or username) value to use as an `anonymous` consumer if authentication fails. If empty (default null), the request will fail with an authentication failure `4xx`. When set, the plugin will skip ACE processing for requests that are already authenticated by other plugins with higher priority.", |
6 | 7 | "type": "string" |
7 | 8 | }, |
8 | 9 | "match_policy": { |
9 | 10 | "default": "if_present", |
| 11 | + "description": "Determines how the ACE plugin will behave when a request doesn't match an existing operation from an API or API package in Dev Portal. The `required` setting requires every incoming request to match a defined operation. If a request doesn't match, ACE rejects the request outright with a 404. The `if_present` setting makes the ACE plugin only engage with a request when it matches an operation, allowing a request to still be processed by other plugins with a lower priority than ACE.", |
10 | 12 | "enum": [ |
11 | 13 | "if_present", |
12 | 14 | "required" |
|
17 | 19 | "properties": { |
18 | 20 | "redis": { |
19 | 21 | "properties": { |
| 22 | + "cloud_authentication": { |
| 23 | + "description": "Cloud auth related configs for connecting to a Cloud Provider's Redis instance.", |
| 24 | + "properties": { |
| 25 | + "auth_provider": { |
| 26 | + "description": "Auth providers to be used to authenticate to a Cloud Provider's Redis instance. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault).", |
| 27 | + "enum": [ |
| 28 | + "aws", |
| 29 | + "azure", |
| 30 | + "gcp" |
| 31 | + ], |
| 32 | + "type": "string", |
| 33 | + "x-referenceable": true |
| 34 | + }, |
| 35 | + "aws_access_key_id": { |
| 36 | + "description": "AWS Access Key ID to be used for authentication when `auth_provider` is set to `aws`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 37 | + "type": "string", |
| 38 | + "x-encrypted": true, |
| 39 | + "x-referenceable": true |
| 40 | + }, |
| 41 | + "aws_assume_role_arn": { |
| 42 | + "description": "The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 43 | + "type": "string", |
| 44 | + "x-encrypted": true, |
| 45 | + "x-referenceable": true |
| 46 | + }, |
| 47 | + "aws_cache_name": { |
| 48 | + "description": "The name of the AWS Elasticache cluster when `auth_provider` is set to `aws`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault).", |
| 49 | + "type": "string", |
| 50 | + "x-referenceable": true |
| 51 | + }, |
| 52 | + "aws_is_serverless": { |
| 53 | + "default": true, |
| 54 | + "description": "This flag specifies whether the cluster is serverless when auth_provider is set to `aws`.", |
| 55 | + "type": "boolean" |
| 56 | + }, |
| 57 | + "aws_region": { |
| 58 | + "description": "The region of the AWS ElastiCache cluster when `auth_provider` is set to `aws`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault).", |
| 59 | + "type": "string", |
| 60 | + "x-referenceable": true |
| 61 | + }, |
| 62 | + "aws_role_session_name": { |
| 63 | + "description": "The session name for the temporary credentials when assuming the IAM role. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 64 | + "type": "string", |
| 65 | + "x-encrypted": true, |
| 66 | + "x-referenceable": true |
| 67 | + }, |
| 68 | + "aws_secret_access_key": { |
| 69 | + "description": "AWS Secret Access Key to be used for authentication when `auth_provider` is set to `aws`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 70 | + "type": "string", |
| 71 | + "x-encrypted": true, |
| 72 | + "x-referenceable": true |
| 73 | + }, |
| 74 | + "azure_client_id": { |
| 75 | + "description": "Azure Client ID to be used for authentication when `auth_provider` is set to `azure`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 76 | + "type": "string", |
| 77 | + "x-encrypted": true, |
| 78 | + "x-referenceable": true |
| 79 | + }, |
| 80 | + "azure_client_secret": { |
| 81 | + "description": "Azure Client Secret to be used for authentication when `auth_provider` is set to `azure`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 82 | + "type": "string", |
| 83 | + "x-encrypted": true, |
| 84 | + "x-referenceable": true |
| 85 | + }, |
| 86 | + "azure_tenant_id": { |
| 87 | + "description": "Azure Tenant ID to be used for authentication when `auth_provider` is set to `azure`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 88 | + "type": "string", |
| 89 | + "x-encrypted": true, |
| 90 | + "x-referenceable": true |
| 91 | + }, |
| 92 | + "gcp_service_account_json": { |
| 93 | + "description": "GCP Service Account JSON to be used for authentication when `auth_provider` is set to `gcp`. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault). \nThis field is [encrypted](/gateway/keyring/).", |
| 94 | + "type": "string", |
| 95 | + "x-encrypted": true, |
| 96 | + "x-referenceable": true |
| 97 | + } |
| 98 | + }, |
| 99 | + "type": "object" |
| 100 | + }, |
20 | 101 | "cluster_max_redirections": { |
21 | 102 | "default": 5, |
22 | 103 | "description": "Maximum retry attempts for redirection.", |
|
63 | 144 | }, |
64 | 145 | "host": { |
65 | 146 | "default": "127.0.0.1", |
66 | | - "description": "A string representing a host name, such as example.com.", |
67 | | - "type": "string" |
| 147 | + "description": "A string representing a host name, such as example.com. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault).", |
| 148 | + "type": "string", |
| 149 | + "x-referenceable": true |
68 | 150 | }, |
69 | 151 | "keepalive_backlog": { |
70 | 152 | "description": "Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return `nil`. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than `keepalive_pool_size`. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than `keepalive_pool_size`.", |
|
87 | 169 | }, |
88 | 170 | "port": { |
89 | 171 | "default": 6379, |
90 | | - "description": "An integer representing a port number between 0 and 65535, inclusive.", |
| 172 | + "description": "An integer representing a port number between 0 and 65535, inclusive. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault).", |
91 | 173 | "maximum": 65535, |
92 | 174 | "minimum": 0, |
93 | | - "type": "integer" |
| 175 | + "type": "integer", |
| 176 | + "x-referenceable": true |
94 | 177 | }, |
95 | 178 | "read_timeout": { |
96 | 179 | "default": 2000, |
|
153 | 236 | "x-referenceable": true |
154 | 237 | }, |
155 | 238 | "server_name": { |
156 | | - "description": "A string representing an SNI (server name indication) value for TLS.", |
157 | | - "type": "string" |
| 239 | + "description": "A string representing an SNI (server name indication) value for TLS. \nThis field is [referenceable](/gateway/entities/vault/#how-do-i-reference-secrets-stored-in-a-vault).", |
| 240 | + "type": "string", |
| 241 | + "x-referenceable": true |
158 | 242 | }, |
159 | 243 | "ssl": { |
160 | 244 | "default": false, |
|
175 | 259 | "type": "object" |
176 | 260 | }, |
177 | 261 | "sync_rate": { |
| 262 | + "description": "How often to sync counter data to the central data store. A value of 0 results in synchronous behavior (counter synchronization happens in each request's context and contributes directly to the latency of the request). A value greater than 0 results in asynchronous behavior and specifies the interval (in seconds) for synchronizing counters. The minimum allowed interval is 0.02 seconds (20ms). If omitted, the plugin ignores sync behavior entirely and only stores counters in node memory.", |
178 | 263 | "maximum": 3600, |
179 | 264 | "minimum": 0, |
180 | 265 | "type": "number" |
|
0 commit comments