-
Notifications
You must be signed in to change notification settings - Fork 69
/
zz_mssqlservervulnerabilityassessment_types.go
executable file
·185 lines (142 loc) · 10.5 KB
/
zz_mssqlservervulnerabilityassessment_types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
// SPDX-FileCopyrightText: 2024 The Crossplane Authors <https://crossplane.io>
//
// SPDX-License-Identifier: Apache-2.0
// Code generated by upjet. DO NOT EDIT.
package v1beta1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
v1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
)
type MSSQLServerVulnerabilityAssessmentInitParameters struct {
// The recurring scans settings. The recurring_scans block supports fields documented below.
RecurringScans []MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"`
// The id of the security alert policy of the MS SQL Server. Changing this forces a new resource to be created.
// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/sql/v1beta1.MSSQLServerSecurityAlertPolicy
// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
ServerSecurityAlertPolicyID *string `json:"serverSecurityAlertPolicyId,omitempty" tf:"server_security_alert_policy_id,omitempty"`
// Reference to a MSSQLServerSecurityAlertPolicy in sql to populate serverSecurityAlertPolicyId.
// +kubebuilder:validation:Optional
ServerSecurityAlertPolicyIDRef *v1.Reference `json:"serverSecurityAlertPolicyIdRef,omitempty" tf:"-"`
// Selector for a MSSQLServerSecurityAlertPolicy in sql to populate serverSecurityAlertPolicyId.
// +kubebuilder:validation:Optional
ServerSecurityAlertPolicyIDSelector *v1.Selector `json:"serverSecurityAlertPolicyIdSelector,omitempty" tf:"-"`
// A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/).
StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"`
}
type MSSQLServerVulnerabilityAssessmentObservation struct {
// The ID of the MS SQL Server Vulnerability Assessment.
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// The recurring scans settings. The recurring_scans block supports fields documented below.
RecurringScans []MSSQLServerVulnerabilityAssessmentRecurringScansObservation `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"`
// The id of the security alert policy of the MS SQL Server. Changing this forces a new resource to be created.
ServerSecurityAlertPolicyID *string `json:"serverSecurityAlertPolicyId,omitempty" tf:"server_security_alert_policy_id,omitempty"`
// A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/).
StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"`
}
type MSSQLServerVulnerabilityAssessmentParameters struct {
// The recurring scans settings. The recurring_scans block supports fields documented below.
// +kubebuilder:validation:Optional
RecurringScans []MSSQLServerVulnerabilityAssessmentRecurringScansParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"`
// The id of the security alert policy of the MS SQL Server. Changing this forces a new resource to be created.
// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/sql/v1beta1.MSSQLServerSecurityAlertPolicy
// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
// +kubebuilder:validation:Optional
ServerSecurityAlertPolicyID *string `json:"serverSecurityAlertPolicyId,omitempty" tf:"server_security_alert_policy_id,omitempty"`
// Reference to a MSSQLServerSecurityAlertPolicy in sql to populate serverSecurityAlertPolicyId.
// +kubebuilder:validation:Optional
ServerSecurityAlertPolicyIDRef *v1.Reference `json:"serverSecurityAlertPolicyIdRef,omitempty" tf:"-"`
// Selector for a MSSQLServerSecurityAlertPolicy in sql to populate serverSecurityAlertPolicyId.
// +kubebuilder:validation:Optional
ServerSecurityAlertPolicyIDSelector *v1.Selector `json:"serverSecurityAlertPolicyIdSelector,omitempty" tf:"-"`
// Specifies the identifier key of the storage account for vulnerability assessment scan results. If storage_container_sas_key isn't specified, storage_account_access_key is required.
// +kubebuilder:validation:Optional
StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"`
// A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/).
// +kubebuilder:validation:Optional
StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"`
// A shared access signature (SAS Key) that has write access to the blob container specified in storage_container_path parameter. If storage_account_access_key isn't specified, storage_container_sas_key is required.
// +kubebuilder:validation:Optional
StorageContainerSASKeySecretRef *v1.SecretKeySelector `json:"storageContainerSasKeySecretRef,omitempty" tf:"-"`
}
type MSSQLServerVulnerabilityAssessmentRecurringScansInitParameters struct {
// Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false.
EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"`
// Specifies an array of email addresses to which the scan notification is sent.
Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"`
// Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false.
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}
type MSSQLServerVulnerabilityAssessmentRecurringScansObservation struct {
// Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false.
EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"`
// Specifies an array of email addresses to which the scan notification is sent.
Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"`
// Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false.
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}
type MSSQLServerVulnerabilityAssessmentRecurringScansParameters struct {
// Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false.
// +kubebuilder:validation:Optional
EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"`
// Specifies an array of email addresses to which the scan notification is sent.
// +kubebuilder:validation:Optional
Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"`
// Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false.
// +kubebuilder:validation:Optional
Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`
}
// MSSQLServerVulnerabilityAssessmentSpec defines the desired state of MSSQLServerVulnerabilityAssessment
type MSSQLServerVulnerabilityAssessmentSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider MSSQLServerVulnerabilityAssessmentParameters `json:"forProvider"`
// THIS IS A BETA FIELD. It will be honored
// unless the Management Policies feature flag is disabled.
// InitProvider holds the same fields as ForProvider, with the exception
// of Identifier and other resource reference fields. The fields that are
// in InitProvider are merged into ForProvider when the resource is created.
// The same fields are also added to the terraform ignore_changes hook, to
// avoid updating them after creation. This is useful for fields that are
// required on creation, but we do not desire to update them after creation,
// for example because of an external controller is managing them, like an
// autoscaler.
InitProvider MSSQLServerVulnerabilityAssessmentInitParameters `json:"initProvider,omitempty"`
}
// MSSQLServerVulnerabilityAssessmentStatus defines the observed state of MSSQLServerVulnerabilityAssessment.
type MSSQLServerVulnerabilityAssessmentStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider MSSQLServerVulnerabilityAssessmentObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// +kubebuilder:subresource:status
// +kubebuilder:storageversion
// MSSQLServerVulnerabilityAssessment is the Schema for the MSSQLServerVulnerabilityAssessments API. Manages the Vulnerability Assessment for a MS SQL Server.
// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status"
// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status"
// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name"
// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"
// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure}
type MSSQLServerVulnerabilityAssessment struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageContainerPath) || (has(self.initProvider) && has(self.initProvider.storageContainerPath))",message="spec.forProvider.storageContainerPath is a required parameter"
Spec MSSQLServerVulnerabilityAssessmentSpec `json:"spec"`
Status MSSQLServerVulnerabilityAssessmentStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// MSSQLServerVulnerabilityAssessmentList contains a list of MSSQLServerVulnerabilityAssessments
type MSSQLServerVulnerabilityAssessmentList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []MSSQLServerVulnerabilityAssessment `json:"items"`
}
// Repository type metadata.
var (
MSSQLServerVulnerabilityAssessment_Kind = "MSSQLServerVulnerabilityAssessment"
MSSQLServerVulnerabilityAssessment_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: MSSQLServerVulnerabilityAssessment_Kind}.String()
MSSQLServerVulnerabilityAssessment_KindAPIVersion = MSSQLServerVulnerabilityAssessment_Kind + "." + CRDGroupVersion.String()
MSSQLServerVulnerabilityAssessment_GroupVersionKind = CRDGroupVersion.WithKind(MSSQLServerVulnerabilityAssessment_Kind)
)
func init() {
SchemeBuilder.Register(&MSSQLServerVulnerabilityAssessment{}, &MSSQLServerVulnerabilityAssessmentList{})
}