## Description
<!-- **Please link some issue here describing what you are trying to achieve.**
In case there is no issue present for your PR, please consider creating one.
At least please give us some description what you are trying to achieve and why your change is needed. -->
relates to #1234
## Checklist
- [ ] Issue was linked above
- [ ] Code format was applied: `make fmt`
- [ ] Examples were added / adjusted (see `examples/` directory)
- [x] Docs are up-to-date: `make generate-docs` (will be checked by CI)
- [ ] Unit tests got implemented or updated
- [ ] Acceptance tests got implemented or updated (see e.g. [here](f5f99d1709/stackit/internal/services/dns/dns_acc_test.go))
- [x] Unit tests are passing: `make test` (will be checked by CI)
- [x] No linter issues: `make lint` (will be checked by CI)
Reviewed-on: #4
Reviewed-by: Andre_Harms <andre.harms@stackit.cloud>
Co-authored-by: Marcel S. Henselin <marcel.henselin@stackit.cloud>
Co-committed-by: Marcel S. Henselin <marcel.henselin@stackit.cloud>
325 lines
11 KiB
Go
325 lines
11 KiB
Go
/*
|
|
STACKIT Application Load Balancer Web Application Firewall API
|
|
|
|
Generate a Web Application Firewall (WAF) to use with Application Load Balancers (ALB). The name of the WAF configuration is used in the listener of the ALB. This will activate the WAF for that ALB. An ALB with a WAF can have OWASP core rule set enabled and in addition can have custom rule configurations. To create a WAF one first needs to create all the configurations that are referenced in the WAF configuration. Currently this only consists of a rule configuration, which is written in Seclang. Once all configurations are created and referenced in the WAF configuration it can be used with an ALB. Currently updating a WAF configuration will not update an existing ALB until the Load Balancer VMs are restarted.
|
|
|
|
API version: 1alpha.0.0
|
|
*/
|
|
|
|
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
|
|
|
|
package albwafalpha
|
|
|
|
import (
|
|
"encoding/json"
|
|
)
|
|
|
|
// checks if the CreateWAFPayload type satisfies the MappedNullable interface at compile time
|
|
var _ MappedNullable = &CreateWAFPayload{}
|
|
|
|
/*
|
|
types and functions for coreRuleSetName
|
|
*/
|
|
|
|
// isNotNullableString
|
|
type CreateWAFPayloadGetCoreRuleSetNameAttributeType = *string
|
|
|
|
func getCreateWAFPayloadGetCoreRuleSetNameAttributeTypeOk(arg CreateWAFPayloadGetCoreRuleSetNameAttributeType) (ret CreateWAFPayloadGetCoreRuleSetNameRetType, ok bool) {
|
|
if arg == nil {
|
|
return ret, false
|
|
}
|
|
return *arg, true
|
|
}
|
|
|
|
func setCreateWAFPayloadGetCoreRuleSetNameAttributeType(arg *CreateWAFPayloadGetCoreRuleSetNameAttributeType, val CreateWAFPayloadGetCoreRuleSetNameRetType) {
|
|
*arg = &val
|
|
}
|
|
|
|
type CreateWAFPayloadGetCoreRuleSetNameArgType = string
|
|
type CreateWAFPayloadGetCoreRuleSetNameRetType = string
|
|
|
|
/*
|
|
types and functions for name
|
|
*/
|
|
|
|
// isNotNullableString
|
|
type CreateWAFPayloadGetNameAttributeType = *string
|
|
|
|
func getCreateWAFPayloadGetNameAttributeTypeOk(arg CreateWAFPayloadGetNameAttributeType) (ret CreateWAFPayloadGetNameRetType, ok bool) {
|
|
if arg == nil {
|
|
return ret, false
|
|
}
|
|
return *arg, true
|
|
}
|
|
|
|
func setCreateWAFPayloadGetNameAttributeType(arg *CreateWAFPayloadGetNameAttributeType, val CreateWAFPayloadGetNameRetType) {
|
|
*arg = &val
|
|
}
|
|
|
|
type CreateWAFPayloadGetNameArgType = string
|
|
type CreateWAFPayloadGetNameRetType = string
|
|
|
|
/*
|
|
types and functions for projectId
|
|
*/
|
|
|
|
// isNotNullableString
|
|
type CreateWAFPayloadGetProjectIdAttributeType = *string
|
|
|
|
func getCreateWAFPayloadGetProjectIdAttributeTypeOk(arg CreateWAFPayloadGetProjectIdAttributeType) (ret CreateWAFPayloadGetProjectIdRetType, ok bool) {
|
|
if arg == nil {
|
|
return ret, false
|
|
}
|
|
return *arg, true
|
|
}
|
|
|
|
func setCreateWAFPayloadGetProjectIdAttributeType(arg *CreateWAFPayloadGetProjectIdAttributeType, val CreateWAFPayloadGetProjectIdRetType) {
|
|
*arg = &val
|
|
}
|
|
|
|
type CreateWAFPayloadGetProjectIdArgType = string
|
|
type CreateWAFPayloadGetProjectIdRetType = string
|
|
|
|
/*
|
|
types and functions for region
|
|
*/
|
|
|
|
// isNotNullableString
|
|
type CreateWAFPayloadGetRegionAttributeType = *string
|
|
|
|
func getCreateWAFPayloadGetRegionAttributeTypeOk(arg CreateWAFPayloadGetRegionAttributeType) (ret CreateWAFPayloadGetRegionRetType, ok bool) {
|
|
if arg == nil {
|
|
return ret, false
|
|
}
|
|
return *arg, true
|
|
}
|
|
|
|
func setCreateWAFPayloadGetRegionAttributeType(arg *CreateWAFPayloadGetRegionAttributeType, val CreateWAFPayloadGetRegionRetType) {
|
|
*arg = &val
|
|
}
|
|
|
|
type CreateWAFPayloadGetRegionArgType = string
|
|
type CreateWAFPayloadGetRegionRetType = string
|
|
|
|
/*
|
|
types and functions for rulesConfigName
|
|
*/
|
|
|
|
// isNotNullableString
|
|
type CreateWAFPayloadGetRulesConfigNameAttributeType = *string
|
|
|
|
func getCreateWAFPayloadGetRulesConfigNameAttributeTypeOk(arg CreateWAFPayloadGetRulesConfigNameAttributeType) (ret CreateWAFPayloadGetRulesConfigNameRetType, ok bool) {
|
|
if arg == nil {
|
|
return ret, false
|
|
}
|
|
return *arg, true
|
|
}
|
|
|
|
func setCreateWAFPayloadGetRulesConfigNameAttributeType(arg *CreateWAFPayloadGetRulesConfigNameAttributeType, val CreateWAFPayloadGetRulesConfigNameRetType) {
|
|
*arg = &val
|
|
}
|
|
|
|
type CreateWAFPayloadGetRulesConfigNameArgType = string
|
|
type CreateWAFPayloadGetRulesConfigNameRetType = string
|
|
|
|
// CreateWAFPayload CreateWAFRequest creates a WAF with rules.
|
|
type CreateWAFPayload struct {
|
|
// Name of the core rule set configuration for that WAF.
|
|
CoreRuleSetName CreateWAFPayloadGetCoreRuleSetNameAttributeType `json:"coreRuleSetName,omitempty"`
|
|
// WAF name
|
|
Name CreateWAFPayloadGetNameAttributeType `json:"name,omitempty"`
|
|
// Project identifier
|
|
ProjectId CreateWAFPayloadGetProjectIdAttributeType `json:"projectId,omitempty"`
|
|
// Region
|
|
Region CreateWAFPayloadGetRegionAttributeType `json:"region,omitempty"`
|
|
// Name of the rule configuration for that WAF.
|
|
RulesConfigName CreateWAFPayloadGetRulesConfigNameAttributeType `json:"rulesConfigName,omitempty"`
|
|
}
|
|
|
|
// NewCreateWAFPayload instantiates a new CreateWAFPayload object
|
|
// This constructor will assign default values to properties that have it defined,
|
|
// and makes sure properties required by API are set, but the set of arguments
|
|
// will change when the set of required properties is changed
|
|
func NewCreateWAFPayload() *CreateWAFPayload {
|
|
this := CreateWAFPayload{}
|
|
return &this
|
|
}
|
|
|
|
// NewCreateWAFPayloadWithDefaults instantiates a new CreateWAFPayload object
|
|
// This constructor will only assign default values to properties that have it defined,
|
|
// but it doesn't guarantee that properties required by API are set
|
|
func NewCreateWAFPayloadWithDefaults() *CreateWAFPayload {
|
|
this := CreateWAFPayload{}
|
|
return &this
|
|
}
|
|
|
|
// GetCoreRuleSetName returns the CoreRuleSetName field value if set, zero value otherwise.
|
|
func (o *CreateWAFPayload) GetCoreRuleSetName() (res CreateWAFPayloadGetCoreRuleSetNameRetType) {
|
|
res, _ = o.GetCoreRuleSetNameOk()
|
|
return
|
|
}
|
|
|
|
// GetCoreRuleSetNameOk returns a tuple with the CoreRuleSetName field value if set, nil otherwise
|
|
// and a boolean to check if the value has been set.
|
|
func (o *CreateWAFPayload) GetCoreRuleSetNameOk() (ret CreateWAFPayloadGetCoreRuleSetNameRetType, ok bool) {
|
|
return getCreateWAFPayloadGetCoreRuleSetNameAttributeTypeOk(o.CoreRuleSetName)
|
|
}
|
|
|
|
// HasCoreRuleSetName returns a boolean if a field has been set.
|
|
func (o *CreateWAFPayload) HasCoreRuleSetName() bool {
|
|
_, ok := o.GetCoreRuleSetNameOk()
|
|
return ok
|
|
}
|
|
|
|
// SetCoreRuleSetName gets a reference to the given string and assigns it to the CoreRuleSetName field.
|
|
func (o *CreateWAFPayload) SetCoreRuleSetName(v CreateWAFPayloadGetCoreRuleSetNameRetType) {
|
|
setCreateWAFPayloadGetCoreRuleSetNameAttributeType(&o.CoreRuleSetName, v)
|
|
}
|
|
|
|
// GetName returns the Name field value if set, zero value otherwise.
|
|
func (o *CreateWAFPayload) GetName() (res CreateWAFPayloadGetNameRetType) {
|
|
res, _ = o.GetNameOk()
|
|
return
|
|
}
|
|
|
|
// GetNameOk returns a tuple with the Name field value if set, nil otherwise
|
|
// and a boolean to check if the value has been set.
|
|
func (o *CreateWAFPayload) GetNameOk() (ret CreateWAFPayloadGetNameRetType, ok bool) {
|
|
return getCreateWAFPayloadGetNameAttributeTypeOk(o.Name)
|
|
}
|
|
|
|
// HasName returns a boolean if a field has been set.
|
|
func (o *CreateWAFPayload) HasName() bool {
|
|
_, ok := o.GetNameOk()
|
|
return ok
|
|
}
|
|
|
|
// SetName gets a reference to the given string and assigns it to the Name field.
|
|
func (o *CreateWAFPayload) SetName(v CreateWAFPayloadGetNameRetType) {
|
|
setCreateWAFPayloadGetNameAttributeType(&o.Name, v)
|
|
}
|
|
|
|
// GetProjectId returns the ProjectId field value if set, zero value otherwise.
|
|
func (o *CreateWAFPayload) GetProjectId() (res CreateWAFPayloadGetProjectIdRetType) {
|
|
res, _ = o.GetProjectIdOk()
|
|
return
|
|
}
|
|
|
|
// GetProjectIdOk returns a tuple with the ProjectId field value if set, nil otherwise
|
|
// and a boolean to check if the value has been set.
|
|
func (o *CreateWAFPayload) GetProjectIdOk() (ret CreateWAFPayloadGetProjectIdRetType, ok bool) {
|
|
return getCreateWAFPayloadGetProjectIdAttributeTypeOk(o.ProjectId)
|
|
}
|
|
|
|
// HasProjectId returns a boolean if a field has been set.
|
|
func (o *CreateWAFPayload) HasProjectId() bool {
|
|
_, ok := o.GetProjectIdOk()
|
|
return ok
|
|
}
|
|
|
|
// SetProjectId gets a reference to the given string and assigns it to the ProjectId field.
|
|
func (o *CreateWAFPayload) SetProjectId(v CreateWAFPayloadGetProjectIdRetType) {
|
|
setCreateWAFPayloadGetProjectIdAttributeType(&o.ProjectId, v)
|
|
}
|
|
|
|
// GetRegion returns the Region field value if set, zero value otherwise.
|
|
func (o *CreateWAFPayload) GetRegion() (res CreateWAFPayloadGetRegionRetType) {
|
|
res, _ = o.GetRegionOk()
|
|
return
|
|
}
|
|
|
|
// GetRegionOk returns a tuple with the Region field value if set, nil otherwise
|
|
// and a boolean to check if the value has been set.
|
|
func (o *CreateWAFPayload) GetRegionOk() (ret CreateWAFPayloadGetRegionRetType, ok bool) {
|
|
return getCreateWAFPayloadGetRegionAttributeTypeOk(o.Region)
|
|
}
|
|
|
|
// HasRegion returns a boolean if a field has been set.
|
|
func (o *CreateWAFPayload) HasRegion() bool {
|
|
_, ok := o.GetRegionOk()
|
|
return ok
|
|
}
|
|
|
|
// SetRegion gets a reference to the given string and assigns it to the Region field.
|
|
func (o *CreateWAFPayload) SetRegion(v CreateWAFPayloadGetRegionRetType) {
|
|
setCreateWAFPayloadGetRegionAttributeType(&o.Region, v)
|
|
}
|
|
|
|
// GetRulesConfigName returns the RulesConfigName field value if set, zero value otherwise.
|
|
func (o *CreateWAFPayload) GetRulesConfigName() (res CreateWAFPayloadGetRulesConfigNameRetType) {
|
|
res, _ = o.GetRulesConfigNameOk()
|
|
return
|
|
}
|
|
|
|
// GetRulesConfigNameOk returns a tuple with the RulesConfigName field value if set, nil otherwise
|
|
// and a boolean to check if the value has been set.
|
|
func (o *CreateWAFPayload) GetRulesConfigNameOk() (ret CreateWAFPayloadGetRulesConfigNameRetType, ok bool) {
|
|
return getCreateWAFPayloadGetRulesConfigNameAttributeTypeOk(o.RulesConfigName)
|
|
}
|
|
|
|
// HasRulesConfigName returns a boolean if a field has been set.
|
|
func (o *CreateWAFPayload) HasRulesConfigName() bool {
|
|
_, ok := o.GetRulesConfigNameOk()
|
|
return ok
|
|
}
|
|
|
|
// SetRulesConfigName gets a reference to the given string and assigns it to the RulesConfigName field.
|
|
func (o *CreateWAFPayload) SetRulesConfigName(v CreateWAFPayloadGetRulesConfigNameRetType) {
|
|
setCreateWAFPayloadGetRulesConfigNameAttributeType(&o.RulesConfigName, v)
|
|
}
|
|
|
|
func (o CreateWAFPayload) ToMap() (map[string]interface{}, error) {
|
|
toSerialize := map[string]interface{}{}
|
|
if val, ok := getCreateWAFPayloadGetCoreRuleSetNameAttributeTypeOk(o.CoreRuleSetName); ok {
|
|
toSerialize["CoreRuleSetName"] = val
|
|
}
|
|
if val, ok := getCreateWAFPayloadGetNameAttributeTypeOk(o.Name); ok {
|
|
toSerialize["Name"] = val
|
|
}
|
|
if val, ok := getCreateWAFPayloadGetProjectIdAttributeTypeOk(o.ProjectId); ok {
|
|
toSerialize["ProjectId"] = val
|
|
}
|
|
if val, ok := getCreateWAFPayloadGetRegionAttributeTypeOk(o.Region); ok {
|
|
toSerialize["Region"] = val
|
|
}
|
|
if val, ok := getCreateWAFPayloadGetRulesConfigNameAttributeTypeOk(o.RulesConfigName); ok {
|
|
toSerialize["RulesConfigName"] = val
|
|
}
|
|
return toSerialize, nil
|
|
}
|
|
|
|
type NullableCreateWAFPayload struct {
|
|
value *CreateWAFPayload
|
|
isSet bool
|
|
}
|
|
|
|
func (v NullableCreateWAFPayload) Get() *CreateWAFPayload {
|
|
return v.value
|
|
}
|
|
|
|
func (v *NullableCreateWAFPayload) Set(val *CreateWAFPayload) {
|
|
v.value = val
|
|
v.isSet = true
|
|
}
|
|
|
|
func (v NullableCreateWAFPayload) IsSet() bool {
|
|
return v.isSet
|
|
}
|
|
|
|
func (v *NullableCreateWAFPayload) Unset() {
|
|
v.value = nil
|
|
v.isSet = false
|
|
}
|
|
|
|
func NewNullableCreateWAFPayload(val *CreateWAFPayload) *NullableCreateWAFPayload {
|
|
return &NullableCreateWAFPayload{value: val, isSet: true}
|
|
}
|
|
|
|
func (v NullableCreateWAFPayload) MarshalJSON() ([]byte, error) {
|
|
return json.Marshal(v.value)
|
|
}
|
|
|
|
func (v *NullableCreateWAFPayload) UnmarshalJSON(src []byte) error {
|
|
v.isSet = true
|
|
return json.Unmarshal(src, &v.value)
|
|
}
|