@pulumi/kubernetes-compliance-policies
Version:
This repository contains a growing set of Compliance Policies to validate your infrastructure using Pulumi's Crossguard Policy-as-Code framework.
396 lines (395 loc) • 19.6 kB
JavaScript
"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.RolePatch = exports.RoleList = exports.RoleBindingPatch = exports.RoleBindingList = exports.RoleBinding = exports.Role = exports.ClusterRolePatch = exports.ClusterRoleList = exports.ClusterRoleBindingPatch = exports.ClusterRoleBindingList = exports.ClusterRoleBinding = exports.ClusterRole = void 0;
const policy_1 = require("@pulumi/policy");
const compliance_policy_manager_1 = require("@pulumi/compliance-policy-manager");
const v1beta1_1 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_2 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_3 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_4 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_5 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_6 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_7 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_8 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_9 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_10 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_11 = require("@pulumi/kubernetes/rbac/v1beta1");
const v1beta1_12 = require("@pulumi/kubernetes/rbac/v1beta1");
var ClusterRole;
(function (ClusterRole) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRole).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
ClusterRole.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-clusterrole-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRole).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_1.ClusterRole, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes ClusterRole shouldn't use an unstable API (rbac.v1beta1.ClusterRole).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(ClusterRole || (ClusterRole = {}));
exports.ClusterRole = ClusterRole;
var ClusterRoleBinding;
(function (ClusterRoleBinding) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleBinding).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
ClusterRoleBinding.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-clusterrolebinding-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleBinding).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_2.ClusterRoleBinding, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes ClusterRoleBinding shouldn't use an unstable API (rbac.v1beta1.ClusterRoleBinding).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(ClusterRoleBinding || (ClusterRoleBinding = {}));
exports.ClusterRoleBinding = ClusterRoleBinding;
var ClusterRoleBindingList;
(function (ClusterRoleBindingList) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleBindingList).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
ClusterRoleBindingList.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-clusterrolebindinglist-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleBindingList).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_3.ClusterRoleBindingList, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes ClusterRoleBindingList shouldn't use an unstable API (rbac.v1beta1.ClusterRoleBindingList).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(ClusterRoleBindingList || (ClusterRoleBindingList = {}));
exports.ClusterRoleBindingList = ClusterRoleBindingList;
var ClusterRoleBindingPatch;
(function (ClusterRoleBindingPatch) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleBindingPatch).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
ClusterRoleBindingPatch.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-clusterrolebindingpatch-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleBindingPatch).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_4.ClusterRoleBindingPatch, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes ClusterRoleBindingPatch shouldn't use an unstable API (rbac.v1beta1.ClusterRoleBindingPatch).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(ClusterRoleBindingPatch || (ClusterRoleBindingPatch = {}));
exports.ClusterRoleBindingPatch = ClusterRoleBindingPatch;
var ClusterRoleList;
(function (ClusterRoleList) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleList).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
ClusterRoleList.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-clusterrolelist-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRoleList).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_5.ClusterRoleList, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes ClusterRoleList shouldn't use an unstable API (rbac.v1beta1.ClusterRoleList).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(ClusterRoleList || (ClusterRoleList = {}));
exports.ClusterRoleList = ClusterRoleList;
var ClusterRolePatch;
(function (ClusterRolePatch) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRolePatch).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
ClusterRolePatch.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-clusterrolepatch-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.ClusterRolePatch).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_6.ClusterRolePatch, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes ClusterRolePatch shouldn't use an unstable API (rbac.v1beta1.ClusterRolePatch).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(ClusterRolePatch || (ClusterRolePatch = {}));
exports.ClusterRolePatch = ClusterRolePatch;
var Role;
(function (Role) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.Role).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
Role.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-role-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.Role).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_7.Role, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes Role shouldn't use an unstable API (rbac.v1beta1.Role).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(Role || (Role = {}));
exports.Role = Role;
var RoleBinding;
(function (RoleBinding) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleBinding).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
RoleBinding.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-rolebinding-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleBinding).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_8.RoleBinding, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes RoleBinding shouldn't use an unstable API (rbac.v1beta1.RoleBinding).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(RoleBinding || (RoleBinding = {}));
exports.RoleBinding = RoleBinding;
var RoleBindingList;
(function (RoleBindingList) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleBindingList).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
RoleBindingList.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-rolebindinglist-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleBindingList).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_9.RoleBindingList, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes RoleBindingList shouldn't use an unstable API (rbac.v1beta1.RoleBindingList).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(RoleBindingList || (RoleBindingList = {}));
exports.RoleBindingList = RoleBindingList;
var RoleBindingPatch;
(function (RoleBindingPatch) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleBindingPatch).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
RoleBindingPatch.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-rolebindingpatch-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleBindingPatch).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_10.RoleBindingPatch, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes RoleBindingPatch shouldn't use an unstable API (rbac.v1beta1.RoleBindingPatch).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(RoleBindingPatch || (RoleBindingPatch = {}));
exports.RoleBindingPatch = RoleBindingPatch;
var RoleList;
(function (RoleList) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleList).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
RoleList.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-rolelist-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RoleList).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_11.RoleList, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes RoleList shouldn't use an unstable API (rbac.v1beta1.RoleList).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(RoleList || (RoleList = {}));
exports.RoleList = RoleList;
var RolePatch;
(function (RolePatch) {
/**
* Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RolePatch).
*
* @severity medium
* @frameworks none
* @topics api, beta, unstable
* @link https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups-and-versioning
*/
RolePatch.disallowBetaResource = compliance_policy_manager_1.policyManager.registerPolicy({
resourceValidationPolicy: {
name: "kubernetes-rbac-v1beta1-rolepatch-disallow-beta-resource",
description: "Disallow the use of non-stable (Beta) Kubernetes resouces (rbac.v1beta1.RolePatch).",
configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
enforcementLevel: "advisory",
validateResource: (0, policy_1.validateResourceOfType)(v1beta1_12.RolePatch, (_, args, reportViolation) => {
if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
return;
}
reportViolation("Kubernetes RolePatch shouldn't use an unstable API (rbac.v1beta1.RolePatch).");
}),
},
vendors: ["kubernetes"],
services: ["rbac"],
severity: "medium",
topics: ["api", "unstable", "beta"],
});
})(RolePatch || (RolePatch = {}));
exports.RolePatch = RolePatch;