99 lines
4.2 KiB
YAML
99 lines
4.2 KiB
YAML
|
---
|
||
|
apiVersion: apiextensions.k8s.io/v1
|
||
|
kind: CustomResourceDefinition
|
||
|
metadata:
|
||
|
annotations:
|
||
|
controller-gen.kubebuilder.io/version: v0.13.0
|
||
|
name: dosprotectedresources.appprotectdos.f5.com
|
||
|
spec:
|
||
|
group: appprotectdos.f5.com
|
||
|
names:
|
||
|
kind: DosProtectedResource
|
||
|
listKind: DosProtectedResourceList
|
||
|
plural: dosprotectedresources
|
||
|
shortNames:
|
||
|
- pr
|
||
|
singular: dosprotectedresource
|
||
|
scope: Namespaced
|
||
|
versions:
|
||
|
- name: v1beta1
|
||
|
schema:
|
||
|
openAPIV3Schema:
|
||
|
description: DosProtectedResource defines a Dos protected resource.
|
||
|
properties:
|
||
|
apiVersion:
|
||
|
description: 'APIVersion defines the versioned schema of this representation
|
||
|
of an object. Servers should convert recognized schemas to the latest
|
||
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||
|
type: string
|
||
|
kind:
|
||
|
description: 'Kind is a string value representing the REST resource this
|
||
|
object represents. Servers may infer this from the endpoint the client
|
||
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||
|
type: string
|
||
|
metadata:
|
||
|
type: object
|
||
|
spec:
|
||
|
description: DosProtectedResourceSpec defines the properties and values
|
||
|
a DosProtectedResource can have.
|
||
|
properties:
|
||
|
apDosMonitor:
|
||
|
description: 'ApDosMonitor is how NGINX App Protect DoS monitors the
|
||
|
stress level of the protected object. The monitor requests are sent
|
||
|
from localhost (127.0.0.1). Default value: URI - None, protocol
|
||
|
- http1, timeout - NGINX App Protect DoS default.'
|
||
|
properties:
|
||
|
protocol:
|
||
|
description: Protocol determines if the server listens on http1
|
||
|
/ http2 / grpc / websocket. The default is http1.
|
||
|
enum:
|
||
|
- http1
|
||
|
- http2
|
||
|
- grpc
|
||
|
- websocket
|
||
|
type: string
|
||
|
timeout:
|
||
|
description: Timeout determines how long (in seconds) should NGINX
|
||
|
App Protect DoS wait for a response. Default is 10 seconds for
|
||
|
http1/http2 and 5 seconds for grpc.
|
||
|
format: int64
|
||
|
type: integer
|
||
|
uri:
|
||
|
description: 'URI is the destination to the desired protected
|
||
|
object in the nginx.conf:'
|
||
|
type: string
|
||
|
type: object
|
||
|
apDosPolicy:
|
||
|
description: ApDosPolicy is the namespace/name of a ApDosPolicy resource
|
||
|
type: string
|
||
|
dosAccessLogDest:
|
||
|
description: DosAccessLogDest is the network address for the access
|
||
|
logs
|
||
|
type: string
|
||
|
dosSecurityLog:
|
||
|
description: DosSecurityLog defines the security log of the DosProtectedResource.
|
||
|
properties:
|
||
|
apDosLogConf:
|
||
|
description: ApDosLogConf is the namespace/name of a APDosLogConf
|
||
|
resource
|
||
|
type: string
|
||
|
dosLogDest:
|
||
|
description: DosLogDest is the network address of a logging service,
|
||
|
can be either IP or DNS name.
|
||
|
type: string
|
||
|
enable:
|
||
|
description: Enable enables the security logging feature if set
|
||
|
to true
|
||
|
type: boolean
|
||
|
type: object
|
||
|
enable:
|
||
|
description: Enable enables the DOS feature if set to true
|
||
|
type: boolean
|
||
|
name:
|
||
|
description: Name is the name of protected object, max of 63 characters.
|
||
|
type: string
|
||
|
type: object
|
||
|
type: object
|
||
|
served: true
|
||
|
storage: true
|