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.

489 lines (488 loc) 24.7 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.Workspace = exports.WorkflowInvocation = exports.WorkflowConfig = exports.RepositoryWorkspaceIamPolicy = exports.RepositoryWorkspaceIamMember = exports.RepositoryWorkspaceIamBinding = exports.RepositoryIamPolicy = exports.RepositoryIamMember = exports.RepositoryIamBinding = exports.Repository = exports.ReleaseConfig = exports.CompilationResult = exports.CollectionIamPolicy = exports.CollectionIamMember = exports.CollectionIamBinding = void 0; const policy_1 = require("@pulumi/policy"); const compliance_policy_manager_1 = require("@pulumi/compliance-policy-manager"); const v1beta1_1 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_2 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_3 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_4 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_5 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_6 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_7 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_8 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_9 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_10 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_11 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_12 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_13 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_14 = require("@pulumi/google-native/dataform/v1beta1"); const v1beta1_15 = require("@pulumi/google-native/dataform/v1beta1"); var CollectionIamBinding; (function (CollectionIamBinding) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CollectionIamBinding). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ CollectionIamBinding.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-collectioniambinding-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CollectionIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_1.CollectionIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform CollectionIamBinding shouldn't use an unstable API (dataform.v1beta1.CollectionIamBinding)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(CollectionIamBinding || (CollectionIamBinding = {})); exports.CollectionIamBinding = CollectionIamBinding; var CollectionIamMember; (function (CollectionIamMember) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CollectionIamMember). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ CollectionIamMember.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-collectioniammember-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CollectionIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_2.CollectionIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform CollectionIamMember shouldn't use an unstable API (dataform.v1beta1.CollectionIamMember)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(CollectionIamMember || (CollectionIamMember = {})); exports.CollectionIamMember = CollectionIamMember; var CollectionIamPolicy; (function (CollectionIamPolicy) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CollectionIamPolicy). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ CollectionIamPolicy.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-collectioniampolicy-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CollectionIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_3.CollectionIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform CollectionIamPolicy shouldn't use an unstable API (dataform.v1beta1.CollectionIamPolicy)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(CollectionIamPolicy || (CollectionIamPolicy = {})); exports.CollectionIamPolicy = CollectionIamPolicy; var CompilationResult; (function (CompilationResult) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CompilationResult). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ CompilationResult.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-compilationresult-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.CompilationResult).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_4.CompilationResult, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform CompilationResult shouldn't use an unstable API (dataform.v1beta1.CompilationResult)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(CompilationResult || (CompilationResult = {})); exports.CompilationResult = CompilationResult; var ReleaseConfig; (function (ReleaseConfig) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.ReleaseConfig). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ ReleaseConfig.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-releaseconfig-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.ReleaseConfig).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_5.ReleaseConfig, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform ReleaseConfig shouldn't use an unstable API (dataform.v1beta1.ReleaseConfig)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(ReleaseConfig || (ReleaseConfig = {})); exports.ReleaseConfig = ReleaseConfig; var Repository; (function (Repository) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.Repository). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ Repository.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repository-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.Repository).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_6.Repository, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform Repository shouldn't use an unstable API (dataform.v1beta1.Repository)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(Repository || (Repository = {})); exports.Repository = Repository; var RepositoryIamBinding; (function (RepositoryIamBinding) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryIamBinding). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ RepositoryIamBinding.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repositoryiambinding-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_7.RepositoryIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform RepositoryIamBinding shouldn't use an unstable API (dataform.v1beta1.RepositoryIamBinding)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(RepositoryIamBinding || (RepositoryIamBinding = {})); exports.RepositoryIamBinding = RepositoryIamBinding; var RepositoryIamMember; (function (RepositoryIamMember) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryIamMember). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ RepositoryIamMember.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repositoryiammember-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_8.RepositoryIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform RepositoryIamMember shouldn't use an unstable API (dataform.v1beta1.RepositoryIamMember)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(RepositoryIamMember || (RepositoryIamMember = {})); exports.RepositoryIamMember = RepositoryIamMember; var RepositoryIamPolicy; (function (RepositoryIamPolicy) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryIamPolicy). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ RepositoryIamPolicy.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repositoryiampolicy-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_9.RepositoryIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform RepositoryIamPolicy shouldn't use an unstable API (dataform.v1beta1.RepositoryIamPolicy)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(RepositoryIamPolicy || (RepositoryIamPolicy = {})); exports.RepositoryIamPolicy = RepositoryIamPolicy; var RepositoryWorkspaceIamBinding; (function (RepositoryWorkspaceIamBinding) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryWorkspaceIamBinding). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ RepositoryWorkspaceIamBinding.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repositoryworkspaceiambinding-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryWorkspaceIamBinding).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_10.RepositoryWorkspaceIamBinding, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform RepositoryWorkspaceIamBinding shouldn't use an unstable API (dataform.v1beta1.RepositoryWorkspaceIamBinding)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(RepositoryWorkspaceIamBinding || (RepositoryWorkspaceIamBinding = {})); exports.RepositoryWorkspaceIamBinding = RepositoryWorkspaceIamBinding; var RepositoryWorkspaceIamMember; (function (RepositoryWorkspaceIamMember) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryWorkspaceIamMember). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ RepositoryWorkspaceIamMember.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repositoryworkspaceiammember-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryWorkspaceIamMember).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_11.RepositoryWorkspaceIamMember, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform RepositoryWorkspaceIamMember shouldn't use an unstable API (dataform.v1beta1.RepositoryWorkspaceIamMember)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(RepositoryWorkspaceIamMember || (RepositoryWorkspaceIamMember = {})); exports.RepositoryWorkspaceIamMember = RepositoryWorkspaceIamMember; var RepositoryWorkspaceIamPolicy; (function (RepositoryWorkspaceIamPolicy) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryWorkspaceIamPolicy). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ RepositoryWorkspaceIamPolicy.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-repositoryworkspaceiampolicy-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.RepositoryWorkspaceIamPolicy).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_12.RepositoryWorkspaceIamPolicy, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform RepositoryWorkspaceIamPolicy shouldn't use an unstable API (dataform.v1beta1.RepositoryWorkspaceIamPolicy)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(RepositoryWorkspaceIamPolicy || (RepositoryWorkspaceIamPolicy = {})); exports.RepositoryWorkspaceIamPolicy = RepositoryWorkspaceIamPolicy; var WorkflowConfig; (function (WorkflowConfig) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.WorkflowConfig). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ WorkflowConfig.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-workflowconfig-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.WorkflowConfig).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_13.WorkflowConfig, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform WorkflowConfig shouldn't use an unstable API (dataform.v1beta1.WorkflowConfig)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(WorkflowConfig || (WorkflowConfig = {})); exports.WorkflowConfig = WorkflowConfig; var WorkflowInvocation; (function (WorkflowInvocation) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.WorkflowInvocation). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ WorkflowInvocation.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-workflowinvocation-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.WorkflowInvocation).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_14.WorkflowInvocation, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform WorkflowInvocation shouldn't use an unstable API (dataform.v1beta1.WorkflowInvocation)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(WorkflowInvocation || (WorkflowInvocation = {})); exports.WorkflowInvocation = WorkflowInvocation; var Workspace; (function (Workspace) { /** * Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.Workspace). * * @severity medium * @frameworks none * @topics api, beta, unstable * @link https://cloud.google.com/apis/design/versioning */ Workspace.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({ resourceValidationPolicy: { name: "googlenative-dataform-v1beta1-workspace-disallow-beta-resource", description: "Disallow the use of non-stable (Beta) resouces (dataform.v1beta1.Workspace).", configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema, enforcementLevel: "advisory", validateResource: (0, policy_1.validateResourceOfType)(v1beta1_15.Workspace, (_, args, reportViolation) => { if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) { return; } reportViolation("Dataform Workspace shouldn't use an unstable API (dataform.v1beta1.Workspace)."); }), }, vendors: ["google"], services: ["dataform"], severity: "medium", topics: ["api", "unstable", "beta"], }); })(Workspace || (Workspace = {})); exports.Workspace = Workspace;