UNPKG

@pulumi/google-compliance-policies

Version:

This repository contains a growing set of Compliance Policies to validate your infrastructure using Pulumi's Crossguard Policy-as-Code framework.

885 lines (884 loc) 261 kB
"use strict"; // Copyright 2016-2024, Pulumi Corporation. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // ------------------------------- WARNING ------------------------------------- // This file was programmatically generated. Do not edit unless you know what // you're doing. // ------------------------------- WARNING ------------------------------------- Object.defineProperty(exports, "__esModule", { value: true }); exports.InterconnectAttachment = exports.Interconnect = exports.InstantSnapshotIamPolicy = exports.InstantSnapshotIamMember = exports.InstantSnapshotIamBinding = exports.InstantSnapshot = exports.InstanceTemplateIamPolicy = exports.InstanceTemplateIamMember = exports.InstanceTemplateIamBinding = exports.InstanceTemplate = exports.InstanceIamPolicy = exports.InstanceIamMember = exports.InstanceIamBinding = exports.InstanceGroupManagerResizeRequest = exports.InstanceGroupManager = exports.InstanceGroup = exports.Instance = exports.ImageIamPolicy = exports.ImageIamMember = exports.ImageIamBinding = exports.Image = exports.HttpsHealthCheck = exports.HttpHealthCheck = exports.HealthCheck = exports.GlobalPublicDelegatedPrefix = exports.GlobalNetworkEndpointGroup = exports.GlobalForwardingRule = exports.GlobalAddress = exports.FutureReservation = exports.ForwardingRule = exports.FirewallPolicyIamPolicy = exports.FirewallPolicyIamMember = exports.FirewallPolicyIamBinding = exports.FirewallPolicy = exports.Firewall = exports.ExternalVpnGateway = exports.DiskIamPolicy = exports.DiskIamMember = exports.DiskIamBinding = exports.Disk = exports.BackendServiceIamPolicy = exports.BackendServiceIamMember = exports.BackendServiceIamBinding = exports.BackendService = exports.BackendBucketIamPolicy = exports.BackendBucketIamMember = exports.BackendBucketIamBinding = exports.BackendBucket = exports.Autoscaler = exports.Address = void 0; exports.RegionDiskIamPolicy = exports.RegionDiskIamMember = exports.RegionDiskIamBinding = exports.RegionDisk = exports.RegionCommitment = exports.RegionBackendServiceIamPolicy = exports.RegionBackendServiceIamMember = exports.RegionBackendServiceIamBinding = exports.RegionBackendService = exports.RegionAutoscaler = exports.PublicDelegatedPrefix = exports.PublicAdvertisedPrefix = exports.PacketMirroring = exports.OrganizationSecurityPolicy = exports.NodeTemplateIamPolicy = exports.NodeTemplateIamMember = exports.NodeTemplateIamBinding = exports.NodeTemplate = exports.NodeGroupIamPolicy = exports.NodeGroupIamMember = exports.NodeGroupIamBinding = exports.NodeGroup = exports.NetworkFirewallPolicyIamPolicy = exports.NetworkFirewallPolicyIamMember = exports.NetworkFirewallPolicyIamBinding = exports.NetworkFirewallPolicy = exports.NetworkEndpointGroup = exports.NetworkEdgeSecurityService = exports.NetworkAttachmentIamPolicy = exports.NetworkAttachmentIamMember = exports.NetworkAttachmentIamBinding = exports.NetworkAttachment = exports.Network = exports.MachineImageIamPolicy = exports.MachineImageIamMember = exports.MachineImageIamBinding = exports.MachineImage = exports.LicenseIamPolicy = exports.LicenseIamMember = exports.LicenseIamBinding = exports.LicenseCodeIamPolicy = exports.LicenseCodeIamMember = exports.LicenseCodeIamBinding = exports.License = exports.InterconnectIamPolicy = exports.InterconnectIamMember = exports.InterconnectIamBinding = exports.InterconnectAttachmentIamPolicy = exports.InterconnectAttachmentIamMember = exports.InterconnectAttachmentIamBinding = void 0; exports.StoragePoolIamPolicy = exports.StoragePoolIamMember = exports.StoragePoolIamBinding = exports.StoragePool = exports.SslPolicy = exports.SslCertificate = exports.SnapshotIamPolicy = exports.SnapshotIamMember = exports.SnapshotIamBinding = exports.Snapshot = exports.ServiceAttachmentIamPolicy = exports.ServiceAttachmentIamMember = exports.ServiceAttachmentIamBinding = exports.ServiceAttachment = exports.SecurityPolicy = exports.Router = exports.Route = exports.ResourcePolicyIamPolicy = exports.ResourcePolicyIamMember = exports.ResourcePolicyIamBinding = exports.ResourcePolicy = exports.ReservationIamPolicy = exports.ReservationIamMember = exports.ReservationIamBinding = exports.Reservation = exports.RegionUrlMap = exports.RegionTargetTcpProxy = exports.RegionTargetHttpsProxy = exports.RegionTargetHttpProxy = exports.RegionSslPolicy = exports.RegionSslCertificate = exports.RegionSnapshotIamPolicy = exports.RegionSnapshotIamMember = exports.RegionSnapshotIamBinding = exports.RegionSnapshot = exports.RegionSecurityPolicy = exports.RegionNotificationEndpoint = exports.RegionNetworkFirewallPolicyIamPolicy = exports.RegionNetworkFirewallPolicyIamMember = exports.RegionNetworkFirewallPolicyIamBinding = exports.RegionNetworkFirewallPolicy = exports.RegionNetworkEndpointGroup = exports.RegionInstantSnapshotIamPolicy = exports.RegionInstantSnapshotIamMember = exports.RegionInstantSnapshotIamBinding = exports.RegionInstantSnapshot = exports.RegionInstanceTemplate = exports.RegionInstanceGroupManager = exports.RegionHealthCheckService = exports.RegionHealthCheck = void 0; exports.ZoneQueuedResource = exports.VpnTunnel = exports.VpnGateway = exports.UrlMap = exports.TargetVpnGateway = exports.TargetTcpProxy = exports.TargetSslProxy = exports.TargetPool = exports.TargetInstance = exports.TargetHttpsProxy = exports.TargetHttpProxy = exports.TargetGrpcProxy = exports.SubnetworkIamPolicy = exports.SubnetworkIamMember = exports.SubnetworkIamBinding = exports.Subnetwork = void 0; const policy_1 = require("@pulumi/policy"); const compliance_policy_manager_1 = require("@pulumi/compliance-policy-manager"); const alpha_1 = require("@pulumi/google-native/compute/alpha"); const alpha_2 = require("@pulumi/google-native/compute/alpha"); const alpha_3 = require("@pulumi/google-native/compute/alpha"); const alpha_4 = require("@pulumi/google-native/compute/alpha"); const alpha_5 = require("@pulumi/google-native/compute/alpha"); const alpha_6 = require("@pulumi/google-native/compute/alpha"); const alpha_7 = require("@pulumi/google-native/compute/alpha"); const alpha_8 = require("@pulumi/google-native/compute/alpha"); const alpha_9 = require("@pulumi/google-native/compute/alpha"); const alpha_10 = require("@pulumi/google-native/compute/alpha"); const alpha_11 = require("@pulumi/google-native/compute/alpha"); const alpha_12 = require("@pulumi/google-native/compute/alpha"); const alpha_13 = require("@pulumi/google-native/compute/alpha"); const alpha_14 = require("@pulumi/google-native/compute/alpha"); const alpha_15 = require("@pulumi/google-native/compute/alpha"); const alpha_16 = require("@pulumi/google-native/compute/alpha"); const alpha_17 = require("@pulumi/google-native/compute/alpha"); const alpha_18 = require("@pulumi/google-native/compute/alpha"); const alpha_19 = require("@pulumi/google-native/compute/alpha"); const alpha_20 = require("@pulumi/google-native/compute/alpha"); const alpha_21 = require("@pulumi/google-native/compute/alpha"); const alpha_22 = require("@pulumi/google-native/compute/alpha"); const alpha_23 = require("@pulumi/google-native/compute/alpha"); const alpha_24 = require("@pulumi/google-native/compute/alpha"); const alpha_25 = require("@pulumi/google-native/compute/alpha"); const alpha_26 = require("@pulumi/google-native/compute/alpha"); const alpha_27 = require("@pulumi/google-native/compute/alpha"); const alpha_28 = require("@pulumi/google-native/compute/alpha"); const alpha_29 = require("@pulumi/google-native/compute/alpha"); const alpha_30 = require("@pulumi/google-native/compute/alpha"); const alpha_31 = require("@pulumi/google-native/compute/alpha"); const alpha_32 = require("@pulumi/google-native/compute/alpha"); const alpha_33 = require("@pulumi/google-native/compute/alpha"); const alpha_34 = require("@pulumi/google-native/compute/alpha"); const alpha_35 = require("@pulumi/google-native/compute/alpha"); const alpha_36 = require("@pulumi/google-native/compute/alpha"); const alpha_37 = require("@pulumi/google-native/compute/alpha"); const alpha_38 = require("@pulumi/google-native/compute/alpha"); const alpha_39 = require("@pulumi/google-native/compute/alpha"); const alpha_40 = require("@pulumi/google-native/compute/alpha"); const alpha_41 = require("@pulumi/google-native/compute/alpha"); const alpha_42 = require("@pulumi/google-native/compute/alpha"); const alpha_43 = require("@pulumi/google-native/compute/alpha"); const alpha_44 = require("@pulumi/google-native/compute/alpha"); const alpha_45 = require("@pulumi/google-native/compute/alpha"); const alpha_46 = require("@pulumi/google-native/compute/alpha"); const alpha_47 = require("@pulumi/google-native/compute/alpha"); const alpha_48 = require("@pulumi/google-native/compute/alpha"); const alpha_49 = require("@pulumi/google-native/compute/alpha"); const alpha_50 = require("@pulumi/google-native/compute/alpha"); const alpha_51 = require("@pulumi/google-native/compute/alpha"); const alpha_52 = require("@pulumi/google-native/compute/alpha"); const alpha_53 = require("@pulumi/google-native/compute/alpha"); const alpha_54 = require("@pulumi/google-native/compute/alpha"); const alpha_55 = require("@pulumi/google-native/compute/alpha"); const alpha_56 = require("@pulumi/google-native/compute/alpha"); const alpha_57 = require("@pulumi/google-native/compute/alpha"); const alpha_58 = require("@pulumi/google-native/compute/alpha"); const alpha_59 = require("@pulumi/google-native/compute/alpha"); const alpha_60 = require("@pulumi/google-native/compute/alpha"); const alpha_61 = require("@pulumi/google-native/compute/alpha"); const alpha_62 = require("@pulumi/google-native/compute/alpha"); const alpha_63 = require("@pulumi/google-native/compute/alpha"); const alpha_64 = require("@pulumi/google-native/compute/alpha"); const alpha_65 = require("@pulumi/google-native/compute/alpha"); const alpha_66 = require("@pulumi/google-native/compute/alpha"); const alpha_67 = require("@pulumi/google-native/compute/alpha"); const alpha_68 = require("@pulumi/google-native/compute/alpha"); const alpha_69 = require("@pulumi/google-native/compute/alpha"); const alpha_70 = require("@pulumi/google-native/compute/alpha"); const alpha_71 = require("@pulumi/google-native/compute/alpha"); const alpha_72 = require("@pulumi/google-native/compute/alpha"); const alpha_73 = require("@pulumi/google-native/compute/alpha"); const alpha_74 = require("@pulumi/google-native/compute/alpha"); const alpha_75 = require("@pulumi/google-native/compute/alpha"); const alpha_76 = require("@pulumi/google-native/compute/alpha"); const alpha_77 = require("@pulumi/google-native/compute/alpha"); const alpha_78 = require("@pulumi/google-native/compute/alpha"); const alpha_79 = require("@pulumi/google-native/compute/alpha"); const alpha_80 = require("@pulumi/google-native/compute/alpha"); const alpha_81 = require("@pulumi/google-native/compute/alpha"); const alpha_82 = require("@pulumi/google-native/compute/alpha"); const alpha_83 = require("@pulumi/google-native/compute/alpha"); const alpha_84 = require("@pulumi/google-native/compute/alpha"); const alpha_85 = require("@pulumi/google-native/compute/alpha"); const alpha_86 = require("@pulumi/google-native/compute/alpha"); const alpha_87 = require("@pulumi/google-native/compute/alpha"); const alpha_88 = require("@pulumi/google-native/compute/alpha"); const alpha_89 = require("@pulumi/google-native/compute/alpha"); const alpha_90 = require("@pulumi/google-native/compute/alpha"); const alpha_91 = require("@pulumi/google-native/compute/alpha"); const alpha_92 = require("@pulumi/google-native/compute/alpha"); const alpha_93 = require("@pulumi/google-native/compute/alpha"); const alpha_94 = require("@pulumi/google-native/compute/alpha"); const alpha_95 = require("@pulumi/google-native/compute/alpha"); const alpha_96 = require("@pulumi/google-native/compute/alpha"); const alpha_97 = require("@pulumi/google-native/compute/alpha"); const alpha_98 = require("@pulumi/google-native/compute/alpha"); const alpha_99 = require("@pulumi/google-native/compute/alpha"); const alpha_100 = require("@pulumi/google-native/compute/alpha"); const alpha_101 = require("@pulumi/google-native/compute/alpha"); const alpha_102 = require("@pulumi/google-native/compute/alpha"); const alpha_103 = require("@pulumi/google-native/compute/alpha"); const alpha_104 = require("@pulumi/google-native/compute/alpha"); const alpha_105 = require("@pulumi/google-native/compute/alpha"); const alpha_106 = require("@pulumi/google-native/compute/alpha"); const alpha_107 = require("@pulumi/google-native/compute/alpha"); const alpha_108 = require("@pulumi/google-native/compute/alpha"); const alpha_109 = require("@pulumi/google-native/compute/alpha"); const alpha_110 = require("@pulumi/google-native/compute/alpha"); const alpha_111 = require("@pulumi/google-native/compute/alpha"); const alpha_112 = require("@pulumi/google-native/compute/alpha"); const alpha_113 = require("@pulumi/google-native/compute/alpha"); const alpha_114 = require("@pulumi/google-native/compute/alpha"); const alpha_115 = require("@pulumi/google-native/compute/alpha"); const alpha_116 = require("@pulumi/google-native/compute/alpha"); const alpha_117 = require("@pulumi/google-native/compute/alpha"); const alpha_118 = require("@pulumi/google-native/compute/alpha"); const alpha_119 = require("@pulumi/google-native/compute/alpha"); const alpha_120 = require("@pulumi/google-native/compute/alpha"); const alpha_121 = require("@pulumi/google-native/compute/alpha"); const alpha_122 = require("@pulumi/google-native/compute/alpha"); const alpha_123 = require("@pulumi/google-native/compute/alpha"); const alpha_124 = require("@pulumi/google-native/compute/alpha"); const alpha_125 = require("@pulumi/google-native/compute/alpha"); const alpha_126 = require("@pulumi/google-native/compute/alpha"); const alpha_127 = require("@pulumi/google-native/compute/alpha"); const alpha_128 = require("@pulumi/google-native/compute/alpha"); const alpha_129 = require("@pulumi/google-native/compute/alpha"); const alpha_130 = require("@pulumi/google-native/compute/alpha"); const alpha_131 = require("@pulumi/google-native/compute/alpha"); const alpha_132 = require("@pulumi/google-native/compute/alpha"); const alpha_133 = require("@pulumi/google-native/compute/alpha"); const alpha_134 = require("@pulumi/google-native/compute/alpha"); const alpha_135 = require("@pulumi/google-native/compute/alpha"); const alpha_136 = require("@pulumi/google-native/compute/alpha"); const alpha_137 = require("@pulumi/google-native/compute/alpha"); const alpha_138 = require("@pulumi/google-native/compute/alpha"); const alpha_139 = require("@pulumi/google-native/compute/alpha"); const alpha_140 = require("@pulumi/google-native/compute/alpha"); const alpha_141 = require("@pulumi/google-native/compute/alpha"); const alpha_142 = require("@pulumi/google-native/compute/alpha"); const alpha_143 = require("@pulumi/google-native/compute/alpha"); const alpha_144 = require("@pulumi/google-native/compute/alpha"); const alpha_145 = require("@pulumi/google-native/compute/alpha"); const alpha_146 = require("@pulumi/google-native/compute/alpha"); const alpha_147 = require("@pulumi/google-native/compute/alpha"); const alpha_148 = require("@pulumi/google-native/compute/alpha"); const alpha_149 = require("@pulumi/google-native/compute/alpha"); const alpha_150 = require("@pulumi/google-native/compute/alpha"); const alpha_151 = require("@pulumi/google-native/compute/alpha"); const alpha_152 = require("@pulumi/google-native/compute/alpha"); const alpha_153 = require("@pulumi/google-native/compute/alpha"); const alpha_154 = require("@pulumi/google-native/compute/alpha"); const alpha_155 = require("@pulumi/google-native/compute/alpha"); const alpha_156 = require("@pulumi/google-native/compute/alpha"); const alpha_157 = require("@pulumi/google-native/compute/alpha"); const alpha_158 = require("@pulumi/google-native/compute/alpha"); const alpha_159 = require("@pulumi/google-native/compute/alpha"); const alpha_160 = require("@pulumi/google-native/compute/alpha"); const alpha_161 = require("@pulumi/google-native/compute/alpha"); const alpha_162 = require("@pulumi/google-native/compute/alpha"); const alpha_163 = require("@pulumi/google-native/compute/alpha"); const alpha_164 = require("@pulumi/google-native/compute/alpha"); const alpha_165 = require("@pulumi/google-native/compute/alpha"); const alpha_166 = require("@pulumi/google-native/compute/alpha"); var Address; (function (Address) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.Address). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ Address.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-address-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.Address).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_1.Address, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute Address shouldn't use an unstable API (compute.alpha.Address)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(Address || (Address = {})); exports.Address = Address; var Autoscaler; (function (Autoscaler) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.Autoscaler). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ Autoscaler.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-autoscaler-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.Autoscaler).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_2.Autoscaler, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute Autoscaler shouldn't use an unstable API (compute.alpha.Autoscaler)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(Autoscaler || (Autoscaler = {})); exports.Autoscaler = Autoscaler; var BackendBucket; (function (BackendBucket) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucket). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendBucket.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendbucket-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucket).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_3.BackendBucket, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendBucket shouldn't use an unstable API (compute.alpha.BackendBucket)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendBucket || (BackendBucket = {})); exports.BackendBucket = BackendBucket; var BackendBucketIamBinding; (function (BackendBucketIamBinding) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucketIamBinding). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendBucketIamBinding.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendbucketiambinding-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucketIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_4.BackendBucketIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendBucketIamBinding shouldn't use an unstable API (compute.alpha.BackendBucketIamBinding)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendBucketIamBinding || (BackendBucketIamBinding = {})); exports.BackendBucketIamBinding = BackendBucketIamBinding; var BackendBucketIamMember; (function (BackendBucketIamMember) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucketIamMember). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendBucketIamMember.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendbucketiammember-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucketIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_5.BackendBucketIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendBucketIamMember shouldn't use an unstable API (compute.alpha.BackendBucketIamMember)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendBucketIamMember || (BackendBucketIamMember = {})); exports.BackendBucketIamMember = BackendBucketIamMember; var BackendBucketIamPolicy; (function (BackendBucketIamPolicy) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucketIamPolicy). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendBucketIamPolicy.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendbucketiampolicy-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendBucketIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_6.BackendBucketIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendBucketIamPolicy shouldn't use an unstable API (compute.alpha.BackendBucketIamPolicy)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendBucketIamPolicy || (BackendBucketIamPolicy = {})); exports.BackendBucketIamPolicy = BackendBucketIamPolicy; var BackendService; (function (BackendService) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendService). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendService.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendservice-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendService).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_7.BackendService, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendService shouldn't use an unstable API (compute.alpha.BackendService)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendService || (BackendService = {})); exports.BackendService = BackendService; var BackendServiceIamBinding; (function (BackendServiceIamBinding) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendServiceIamBinding). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendServiceIamBinding.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendserviceiambinding-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendServiceIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_8.BackendServiceIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendServiceIamBinding shouldn't use an unstable API (compute.alpha.BackendServiceIamBinding)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendServiceIamBinding || (BackendServiceIamBinding = {})); exports.BackendServiceIamBinding = BackendServiceIamBinding; var BackendServiceIamMember; (function (BackendServiceIamMember) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendServiceIamMember). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendServiceIamMember.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendserviceiammember-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendServiceIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_9.BackendServiceIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendServiceIamMember shouldn't use an unstable API (compute.alpha.BackendServiceIamMember)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendServiceIamMember || (BackendServiceIamMember = {})); exports.BackendServiceIamMember = BackendServiceIamMember; var BackendServiceIamPolicy; (function (BackendServiceIamPolicy) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendServiceIamPolicy). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ BackendServiceIamPolicy.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-backendserviceiampolicy-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.BackendServiceIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_10.BackendServiceIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute BackendServiceIamPolicy shouldn't use an unstable API (compute.alpha.BackendServiceIamPolicy)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(BackendServiceIamPolicy || (BackendServiceIamPolicy = {})); exports.BackendServiceIamPolicy = BackendServiceIamPolicy; var Disk; (function (Disk) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.Disk). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ Disk.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-disk-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.Disk).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_11.Disk, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute Disk shouldn't use an unstable API (compute.alpha.Disk)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(Disk || (Disk = {})); exports.Disk = Disk; var DiskIamBinding; (function (DiskIamBinding) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.DiskIamBinding). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ DiskIamBinding.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-diskiambinding-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.DiskIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_12.DiskIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute DiskIamBinding shouldn't use an unstable API (compute.alpha.DiskIamBinding)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(DiskIamBinding || (DiskIamBinding = {})); exports.DiskIamBinding = DiskIamBinding; var DiskIamMember; (function (DiskIamMember) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.DiskIamMember). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ DiskIamMember.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-diskiammember-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.DiskIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_13.DiskIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute DiskIamMember shouldn't use an unstable API (compute.alpha.DiskIamMember)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(DiskIamMember || (DiskIamMember = {})); exports.DiskIamMember = DiskIamMember; var DiskIamPolicy; (function (DiskIamPolicy) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.DiskIamPolicy). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ DiskIamPolicy.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-diskiampolicy-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.DiskIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_14.DiskIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute DiskIamPolicy shouldn't use an unstable API (compute.alpha.DiskIamPolicy)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(DiskIamPolicy || (DiskIamPolicy = {})); exports.DiskIamPolicy = DiskIamPolicy; var ExternalVpnGateway; (function (ExternalVpnGateway) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.ExternalVpnGateway). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ ExternalVpnGateway.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-externalvpngateway-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.ExternalVpnGateway).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_15.ExternalVpnGateway, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute ExternalVpnGateway shouldn't use an unstable API (compute.alpha.ExternalVpnGateway)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(ExternalVpnGateway || (ExternalVpnGateway = {})); exports.ExternalVpnGateway = ExternalVpnGateway; var Firewall; (function (Firewall) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.Firewall). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ Firewall.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-firewall-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.Firewall).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_16.Firewall, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute Firewall shouldn't use an unstable API (compute.alpha.Firewall)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(Firewall || (Firewall = {})); exports.Firewall = Firewall; var FirewallPolicy; (function (FirewallPolicy) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicy). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ FirewallPolicy.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-firewallpolicy-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_17.FirewallPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute FirewallPolicy shouldn't use an unstable API (compute.alpha.FirewallPolicy)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(FirewallPolicy || (FirewallPolicy = {})); exports.FirewallPolicy = FirewallPolicy; var FirewallPolicyIamBinding; (function (FirewallPolicyIamBinding) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicyIamBinding). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ FirewallPolicyIamBinding.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-firewallpolicyiambinding-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicyIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_18.FirewallPolicyIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute FirewallPolicyIamBinding shouldn't use an unstable API (compute.alpha.FirewallPolicyIamBinding)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(FirewallPolicyIamBinding || (FirewallPolicyIamBinding = {})); exports.FirewallPolicyIamBinding = FirewallPolicyIamBinding; var FirewallPolicyIamMember; (function (FirewallPolicyIamMember) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicyIamMember). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ FirewallPolicyIamMember.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-firewallpolicyiammember-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicyIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_19.FirewallPolicyIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute FirewallPolicyIamMember shouldn't use an unstable API (compute.alpha.FirewallPolicyIamMember)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(FirewallPolicyIamMember || (FirewallPolicyIamMember = {})); exports.FirewallPolicyIamMember = FirewallPolicyIamMember; var FirewallPolicyIamPolicy; (function (FirewallPolicyIamPolicy) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicyIamPolicy). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ FirewallPolicyIamPolicy.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-firewallpolicyiampolicy-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.FirewallPolicyIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_20.FirewallPolicyIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute FirewallPolicyIamPolicy shouldn't use an unstable API (compute.alpha.FirewallPolicyIamPolicy)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(FirewallPolicyIamPolicy || (FirewallPolicyIamPolicy = {})); exports.FirewallPolicyIamPolicy = FirewallPolicyIamPolicy; var ForwardingRule; (function (ForwardingRule) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.ForwardingRule). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ ForwardingRule.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-forwardingrule-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.ForwardingRule).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_21.ForwardingRule, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute ForwardingRule shouldn't use an unstable API (compute.alpha.ForwardingRule)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(ForwardingRule || (ForwardingRule = {})); exports.ForwardingRule = ForwardingRule; var FutureReservation; (function (FutureReservation) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.FutureReservation). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ FutureReservation.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-futurereservation-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.FutureReservation).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_22.FutureReservation, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute FutureReservation shouldn't use an unstable API (compute.alpha.FutureReservation)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(FutureReservation || (FutureReservation = {})); exports.FutureReservation = FutureReservation; var GlobalAddress; (function (GlobalAddress) { /** * Disallow the use of non-stable (Alpha) resouces (compute.alpha.GlobalAddress). * * @severity medium * @frameworks none * @topics alpha, api, unstable * @link https://cloud.google.com/apis/design/versioning */ GlobalAddress.disallowAlphaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-compute-alpha-globaladdress-disallow-alpha-resource", description: "Disallow the use of non-stable (Alpha) resouces (compute.alpha.GlobalAddress).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(alpha_23.GlobalAddress, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Compute GlobalAddress shouldn't use an unstable API (compute.alpha.GlobalAddress)."); }), }, vendors: ["google"], services: ["compute"], severity: "medium", topics: ["api", "unstable", "alpha"], }); })(GlobalAddress || (GlobalAddress = {})); exports.GlobalAddress = GlobalAddress; var GlobalForwardingRule; (function (GlobalForwardingRule) {