From e6352411acf653a98e18dd75fd7a2f12fced59d1 Mon Sep 17 00:00:00 2001 From: Heinrich Gantenbein Date: Fri, 5 Aug 2022 16:02:06 -0500 Subject: [PATCH] New feature definitionEntryList --- Definitions/Assignments/README.md | 190 +- Definitions/Documentation/README.md | 8 +- Definitions/Exemptions/README.md | 14 +- Definitions/README.md | 10 +- Docs/Azure Security Controls Process.vsdx | Bin 767973 -> 803039 bytes Docs/Images/PaC-Deploy-Scripts.png | Bin 36196 -> 64697 bytes Docs/Images/PaC-GitHub-Flow.png | Bin 109269 -> 104535 bytes README.md | 37 +- ...d-AzPoliciesInitiativesAssignmentsPlan.ps1 | 27 +- Scripts/Deploy/Convert-XlsToCsv.ps1 | 2 +- .../Build-AzInitiativeDefinitionsPlan.ps1 | 73 +- .../Helpers/Build-AzPolicyAssignmentsPlan.ps1 | 503 ++-- .../Helpers/Build-AzPolicyExemptionsPlan.ps1 | 6 +- ...d-PolicyAssignmentDocumenationFragment.ps1 | 190 -- ...Confirm-InitiativeDefinitionUsedExists.ps1 | 2 +- .../Confirm-ObjectValueEqualityDeep.ps1 | 4 +- Scripts/Helpers/Get-AssignmentDefinitions.ps1 | 381 +++ Scripts/Helpers/Get-AssignmentDefs.ps1 | 218 -- .../Get-AzAssignmentsAtScopeRecursive.ps1 | 6 +- Scripts/Helpers/Invoke-AzCli.ps1 | 2 +- Scripts/Helpers/Write-AssignmentDetails.ps1 | 27 + Scripts/Operations/New-AzPolicyReaderRole.ps1 | 10 +- .../allowed-locations-assignments.jsonc | 12 +- .../security-baseline-assignments.jsonc | 2682 +---------------- .../Assignments/tag-assignments.jsonc | 194 +- .../Definitions/Documentation/contoso.jsonc | 6 +- .../allowed-locations-initiative.jsonc | 282 -- StarterKit/Definitions/global-settings.jsonc | 10 +- StarterKit/Pipelines/AzureDevOps/pipeline.yml | 60 +- 29 files changed, 995 insertions(+), 3961 deletions(-) delete mode 100644 Scripts/Helpers/Build-PolicyAssignmentDocumenationFragment.ps1 create mode 100644 Scripts/Helpers/Get-AssignmentDefinitions.ps1 delete mode 100644 Scripts/Helpers/Get-AssignmentDefs.ps1 create mode 100644 Scripts/Helpers/Write-AssignmentDetails.ps1 diff --git a/Definitions/Assignments/README.md b/Definitions/Assignments/README.md index 8e8ea5b7..29197ca8 100644 --- a/Definitions/Assignments/README.md +++ b/Definitions/Assignments/README.md @@ -3,19 +3,22 @@ ## Table of Contents -- [Components](#components) -- [Assignment File Overview Diagram](#assignment-file-overview-diagram) -- [Assignment Json file structure](#assignment-json-file-structure) -- [Assignment Node Components](#assignment-node-components) -- [Details for `scope` and `notScope` Values](#details-for--scope--and--notscope--values) -- [Using the `PacAssignmentSelector`](#using-the--pacassignmentselector-) -- [Resource Group patterns in `notScope`](#resource-group-patterns-in--notscope-) -- [Example Scope Definition](#example-scope-definition) -- [Reading List](#reading-list) +* [Components](#components) +* [Assignment structure](#assignment-structure) +* [Assignment nodes](#assignment-nodes) +* [Details for `scope` and `notScope`](#details-for-scope-and-notscope) + * [Using the `PacAssignmentSelector`](#using-the-pacassignmentselector) + * [Resource Group patterns in `notScope`](#resource-group-patterns-in-notscope) + * [Example Scope Definition](#example-scope-definition) +* [Examples in StarterKit](#examples-in-starterkit) + * [Single node to assign allowed locations enforcement](#single-node-to-assign-allowed-locations-enforcement) + * [Hierarchy to assign security and compliance initiatives](#hierarchy-to-assign-security-and-compliance-initiatives) + * [Hierarchy to manage Azure resource tags](#hierarchy-to-manage-azure-resource-tags) +* [Reading List](#reading-list) ## Components -This chapter describes how **Policy Assignments** are handled by PaC. To learn about how custom Policy and Initiative definitions are managed, see the [Policy Definitions](../Policies/README.md) and [Initiative Definitions](../Initiatives/README.md). +This chapter describes how **Policy Assignments** are handled by EPAC. To learn about how custom Policy and Initiative definitions are managed, see the [Policy Definitions](../Policies/README.md) and [Initiative Definitions](../Initiatives/README.md). The components required for **creating / updating / deleting Policy assignments and Policy set (initiative) assignments** are the following: @@ -26,158 +29,33 @@ The components required for **creating / updating / deleting Policy assignments
-## Assignment File Overview Diagram +## Assignment structure -Assignment files are hierarchical for efficient Json definitions, avoiding duplication of Json with copy/paste. -
- -![Assignment File Overview Diagram](../../Docs/Images/PaC-Assignment-Structure.png) +Assignment Json is hierarchical for efficient definitions, avoiding duplication of Json with copy/paste -
+**Note:** the tee is not required to be balanced. The number of levels is not restricted; however, anything beyond 5 levels is unnecessary in real scenarios and would be difficult to read and manage. -## Assignment Json file structure - -`scope` and `notScope` use a `PacAssignmentSelector` to specify which scope to use for different environments and tenants. The value for the `PacAssignmentSelector` is passed to the build script as a parameter. A star matches any `PacAssignmentSelector` specified. - - ```json -{ - "nodeName": "NodeOneName", - "parameters": { - "GlobalParameterOne": [ - "TestValue" - ] - }, - "children": [ - { - "nodeName": "ChildNodeName", - "scope": { - "dev": [ - "Specified scope such as: '/subscriptions/00000000-0000-0000-000000000000" - ], - "test": [ - "Specified scope such as: '/subscriptions/00000000-0000-0000-000000000000" - ], - "prod": [ - "Specified scope such as: /providers/Microsoft.Management/managementGroups/" - ] - }, - "children": [ - { - "nodeName": "nodeName", - "assignment": { - "name": "Assignment Name", - "displayName": "Assignment Display Name", - "description": "Assignment Description" - }, - "definitionEntry": { - "policyName": "Reference to Initiative or Policy being assigned", - "friendlyNameToDocumentIfGuid": "Human friendly name of policy or initiative" - }, - "parameters": { - "Local Parameter such as 'Effect'": "Deny" - }, - "children": [ - { - "nodeName": "NodeOne", - "assignment": { - "name": "AssignmentOne", - "displayName": "Display Name", - "description": "Description" - }, - "parameters": { - "Lowest Level Local Parameter": "Value" - } - }, - { - "nodeName": "NodeTwo", - "assignment": { - "name": "AssignmentTwo", - "displayName": "Display Name", - "description": "Description" - }, - "parameters": { - "Lowest Level Local Parameter": "Value" - } - } - - ] - }, - - ] - }, - { - "nodeName": "NodeTwoName", - "definitionEntry": { - "policyName": "Reference to Initiative or Policy being assigned", - "friendlyNameToDocumentIfGuid": "Human friendly name of policy or initiative" - }, - "assignment": { - "name": "Assignment Name", - "displayName": "Display Name", - "description": "Description of assignment" - }, - "parameters": { - "Local Parameter such as 'Effect'": "Deny" - }, - "children": [ - { - "nodeName": "NodeOne", - "assignment": { - "name": "Assignment Name", - "displayName": "Assignment Display Name", - "description": "Assignment Description" - }, - "parameters": { - "Lowest Level Local Parameter": "Value" - }, - "scope": { - "prod": [ - "Desired scope such as: /providers/Microsoft.Management/managementGroups/Contoso-Prod" - ] - } - }, - { - "nodeName": "NodeTwo", - "assignment": { - "name": "Assignment Name", - "displayName": "Display Name", - "description": "Display Name" - }, - "parameters": { - "Lowest Level Local Parameter": "Value" - }, - "scope": { - "prod": [ - "Desired scope such as: /providers/Microsoft.Management/managementGroups/Contoso-NonProd" - ] - } - } - ] - } - ] -} -``` +![Assignment File Overview Diagram](../../Docs/Images/PaC-Assignment-Structure.png)
-## Assignment Node Components +## Assignment nodes | Key | Description | Rule | |-----|-------------|------| | `nodeName` | arbitrary name of the node for usage by the scripts to pinpoint format errors. | Must exist in each node. | | `managedIdentityLocation` | Selects the Managed Identity location for Policies with `DeployIfnotExists` and `Modify` effects. | Any node: overrides previous setting. | | `scope` | List of scopes for assignment. | Must exist exactly once in each branch of the tree. | -| `notScope` | List of notScopes. | Cumulative in branch. May not appear at a child node once the `scope` has been determined. | -| `assignment` | Assignment `name`, `displayName` and `description`. | String values are concatenated in each branch. Assignment `name` lengths are limited to 24. Must exist at least once in every branch. | +| `notScope` | List of notScopes. | Cumulative in branch. May not appear at a child node once the `scope` has been defined. | +| `assignment` | Assignment `name`, `displayName` and `description`. The fields `name` and `displayName` are required. | String values are concatenated in each branch. Assignment `name` lengths are limited to 24. Must exist at least once in every branch. | | `parameters` | Parameter values for the assignment. Specified parameters not defined in the assigned Policy or Initiative are silently ignored. | Union of all the `parameters` defined in a branch. `parameters` redefined at a child (recursive) node overwrite the parent nodes value. | | `ignoreBranch` | Ignore the rest of the tee staring at this node. Can be used to define future assignments without deploying the assignments. | Any node: overrides are ignored. | -| `enforcementMode` | Similar to `ignoreBranch`, it deploys the assignment and sets the assignment to `Default` or `DoNotEnforce`. `DoNotEnforce` allows a whatif analysis. | Any node: overrides previous setting | -| `definitionEntry` | Specifies the `policyName` or `initiativeName` for the assignment. The name should not be a fully qualified `id`. `friendlyNameToDocumentIfGuid` and is purely used as a comment to make the Json more readable if the name is a GUID. | Must exist exactly once in each branch of the tree. | +| `enforcementMode` | Similar to `ignoreBranch`, it deploys the assignment and sets the assignment to `Default` or `DoNotEnforce`. `DoNotEnforce` allows a what if analysis. | Any node: overrides previous setting | | `additionalRoleAssignments` | `roleDefinitionIds` are calculated from the included (direct or indirect via Initiative) Policy definition(s). Fo some Policies, such as DINE `diagnosticsSettings` the monitor destination might be in a different branch of the Management Group tree from the Assignment. This field specifies any roles requiring assignments in that MG branch. The value is an array, each element containing two items: `roleDefinitionId` and `scope` | Union of all the `additionalRoleAssignments` defined in this branch | +| Option 1: `definitionEntry` | Specify the `policyName` or `initiativeName` for the assignment. The name should not be a fully qualified `id`. `friendlyNameToDocumentIfGuid` is purely used as a comment to make the Json more readable if the name is a GUID (optional). | Either option 1 or option 2 must exist exactly once in each branch of the tree. | +| Option 2: `definitionEntryList` | List of definitions to assign - creates one assignment per list entry for each tree branch. Each entry must specify a `policyName` or `initiativeName` and may specify `friendlyNameToDocumentIfGuid`. A nested `assignment` must be included to differentiate the multiple assignments being created from a `definitionEntryList`. This `assignment` structure may include an `append` boolean field to indicate that the fields should be appended instead of (default) concatenated first. | Either option 1 or option 2 must exist exactly once in each branch of the tree. | -
- -## Details for `scope` and `notScope` Values +## Details for `scope` and `notScope` ### Using the `PacAssignmentSelector` @@ -190,12 +68,28 @@ The assignment selector determines the array being selected for this run of the ### Example Scope Definition | Scope | Example | -|---|---| +|-------|---------| | Management group | `/providers/Microsoft.Management/managementGroups/` | | Subscription | `/subscriptions/` | | Resource Group | `/subscriptions//resourceGroups/` | -
+## Examples in StarterKit folder + +### Single node to assign allowed locations enforcement + +Assignment file [allowed-locations-assignments.jsonc](../../StarterKit/Definitions/Assignments/allowed-locations-assignments.jsonc) contains a single node to assign a single Initiative to one scope. + +### Hierarchy to assign security and compliance initiatives + +Assignment file [security-baseline-assignments.jsonc](../../StarterKit/Definitions/Assignments/security-baseline-assignments.jsonc) contains 2 levels of hierarchy containing the root node and 2 child nodes. It uses a `definitionEntryList` instead of `definitionEntry`. Defining this with the `definitionEntry` approach would have increased the hierarchy from 2 levels (3 nodes) to 3 levels (7 nodes). + +**Note**: With only two types of environments, 3 nodes versus 7 nodes is a small difference; however if you have a more complex environment differentiation with lots of environment types and parameters this becomes quickly untenable. As an extreme illustration with 8 environments (e.g., sandbox, dev, integration, testing, uat, perf, pre-prod and prod), you would need to specify 25 nodes. Such a file would likely be thousands of lines long and completely unreadable + +### Hierarchy to manage Azure resource tags + +Assignment file [tag-assignments.jsonc](../../StarterKit/Definitions/Assignments/tag-assignments.jsonc) defines: +- Required tags and inherited tags with a `definitionEntryList` using 2 levels (plus the root node) +- Environment tag values for resource groups with a `definitionEntry` using two levels (plus the shared root node) ## Reading List diff --git a/Definitions/Documentation/README.md b/Definitions/Documentation/README.md index 11bb6d75..3f9eb2ad 100644 --- a/Definitions/Documentation/README.md +++ b/Definitions/Documentation/README.md @@ -33,7 +33,7 @@ Each file must contain one or both documentation topics. This example file has b "documentAssignments": { "environmentCategories": [ { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "environmentCategory": "PROD", "scopes": [ // Used in Markdown output only "Management Groups: Contoso-Prod" @@ -50,7 +50,7 @@ Each file must contain one or both documentation topics. This example file has b ] }, { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "environmentCategory": "NONPROD", "scopes": [ // Used in Markdown output only "Management Groups: Contoso-NonProd" @@ -67,7 +67,7 @@ Each file must contain one or both documentation topics. This example file has b ] }, { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "environmentCategory": "DEV", "scopes": [ // Used in Markdown output only "Management Groups: Contoso-Dev" @@ -117,7 +117,7 @@ Each file must contain one or both documentation topics. This example file has b }, "documentInitiatives": [ { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "fileNameStem": "contoso-compliance-initiatives", "title": "Document interesting Initiatives", "initiatives": [ diff --git a/Definitions/Exemptions/README.md b/Definitions/Exemptions/README.md index 72fbb771..180d6b3f 100644 --- a/Definitions/Exemptions/README.md +++ b/Definitions/Exemptions/README.md @@ -8,13 +8,15 @@ ## Exemption Files -Exemptions can be defined as Json or CSV files. The names of the definition files don't matter. Additionally, through the use of a third-party PowerShell module from the PowerShell Gallery `ImportExcel` (https://www.powershellgallery.com/packages/ImportExcel, https://github.com/dfinke/ImportExcel/tree/master/Public). The contributors to this project are not responsible for any issues with that module. To mitigate the risk, the StarterKit has commented out the use of the conversion to protect your system from any vulnerabilities and executes the script without an Azure login. +Exemptions can be defined as Json or CSV files. The names of the definition files don't matter. -The pacEnvironment (see global-settings.jsonc) is represented with a folder, such as dev, test, tenant1, ... A missing folder indicates that the pacEnvironment's Exemptions are managed by this solution. To extract existing extension, the operations script Get-AzExemptions.ps1 can be used to generate Json and CSV files. The output should be used to start the Exemption definitions. +Additionally, through the use of a third-party PowerShell module from the PowerShell Gallery `ImportExcel` (https://www.powershellgallery.com/packages/ImportExcel, https://github.com/dfinke/ImportExcel/tree/master/Public). The contributors to this project are not responsible for any issues with that module. To mitigate the risk, the StarterKit has commented out the use of the conversion to protect your system from any vulnerabilities and executes the script without an Azure login. -### Format +The pacEnvironment (see global-settings.jsonc) is represented with a folder, such as dev, test, tenant, ... A missing folder indicates that the pacEnvironment's Exemptions are managed by this solution. To extract existing extension, the operations script Get-AzExemptions.ps1 can be used to generate Json and CSV files. The output should be used to start the Exemption definitions. -`name`, `exemptioncategory`, `scope` and `assignmentId` are required fields. The others are optional. +### JSON Format + +`name`, `displayName`, `exemptionCategory`, `scope` and `assignmentId` are required fields. The others are optional. ```jsonc { @@ -37,11 +39,13 @@ The pacEnvironment (see global-settings.jsonc) is represented with a folder, suc } ``` +### CSV/XLSX Format If you use spreadsheets (.csv or .xlsx): - Column headers must be exactly as the Json labels above. - `policyDefinitionReferenceIds` use comma separated list within each cell. -- `metadata` cells must conatin valid Json. +- `metadata` cells must contain valid Json. +
## Reading List diff --git a/Definitions/README.md b/Definitions/README.md index bfe54b47..1c2604a2 100644 --- a/Definitions/README.md +++ b/Definitions/README.md @@ -60,7 +60,7 @@ Policies with `Modify` and `DeployIfNotExists` effects require a Managed Identit "/resourceGroupPatterns/LogAnalyticsDefault*", "/resourceGroupPatterns/cloud-shell-storage*" ], - "prod": [ + "tenant": [ "/providers/Microsoft.Management/managementGroups/mg-personal-subscriptions", "/providers/Microsoft.Management/managementGroups/mg-policy-as-code" ] @@ -85,7 +85,7 @@ pacEnvironments define the environment controlled by Policy as Code. It must be ```json "pacEnvironments": [ { - "pacSelector": "dev", + "pacSelector": "epac-dev", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "11111111-2222-3333-4444-555555555555", @@ -94,7 +94,7 @@ pacEnvironments define the environment controlled by Policy as Code. It must be } }, { - "pacSelector": "test", + "pacSelector": "epac-test", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "99999999-8888-7777-4444-333333333333", @@ -103,7 +103,7 @@ pacEnvironments define the environment controlled by Policy as Code. It must be } }, { - "pacSelector": "tenant1", + "pacSelector": "tenant", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "99999999-8888-7777-4444-333333333333", @@ -122,7 +122,7 @@ Each entry in the array defines one of the environments: | `cloud` | Azure environment. Examples: `"AzureCloud"`, `"AzureUSGovernment"`, `"AzureGermanCloud"`. Defaults to `"AzureCloud"` with a warning | | `tenantId` | Azure Tenant Id | | `defaultSubscriptionId` | Primary subscription for login. If the rootScope is a subscription, the default must match. | -| `rootScope` | Policy and Initiative definitions are **always** deployed at this scope. Must conatin either a `MangementGroupName` or a `SubscriptionId` element |` +| `rootScope` | Policy and Initiative definitions are **always** deployed at this scope. Must contain either a `MangementGroupName` or a `SubscriptionId` element |`
diff --git a/Docs/Azure Security Controls Process.vsdx b/Docs/Azure Security Controls Process.vsdx index 89592ffb27ca1477813f643b5854d22d4b5fb326..7966b7ec15c337a8e04aff6d465546a02606a040 100644 GIT binary patch delta 174593 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 G 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 MgsAyb7~nVl2iAM~egFUf diff --git a/Docs/Images/PaC-Deploy-Scripts.png b/Docs/Images/PaC-Deploy-Scripts.png index 039ed6be28cac1234c8c050f4c1ab7733f63cdbc..7bae9d6eb3ab63b8de5a59661619d533f0c4a4da 100644 GIT binary patch literal 64697 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 X1&}0e&&0>mo4IxKwnmYfZTNoyvnXKe literal 36196 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 y!k8HzJskYb^`H1d%5?&kf!=X^MG?$0)pHA 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

7zsz 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 T=WAR7iZFP(`njxgN@xNAW5;O6 literal 109269 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 D>Rtcg diff --git a/README.md b/README.md index d0312ec8..2a18b275 100644 --- a/README.md +++ b/README.md @@ -35,9 +35,15 @@ More details: - [Documenting Assignments and Initiatives](Definitions/Documentation/README.md) - [Operational Scripts](Scripts/Operations/README.md) -

-Warning: If you have a existing Policies, Initiatives and Assignments in your environment, you have not transferred to EPAC, do not forget to change the "brownfield" variable in the pipeline to true.

Why? This solution uses the desired state strategy. It will remove any custom Policies, Initiatives or Policy Assignments not duplicated in the definition files. The Build-AzPoliciesInitiativesAssignmentsPlan.ps1 script's switch parameter SuppressDeletes changes this behavior. Set the "brownfield" variable in the pipeline to true; it will set the switch parameter preventing deletions of existing Policies, Initiatives and Policy Assignments. This allows for a gradual transition from your existing Policy management to Enterprise Policy as Code.
-


+
+ +> **Desired State Warning** +> +> **If you have a existing Policies, Initiatives and Assignments in your environment, you have not transferred to EPAC, do not forget to change the "brownfield" variable in the pipeline to true.** +> +> This solution uses the desired state strategy. It will remove any custom Policies, Initiatives or Policy Assignments not duplicated in the definition files. The Build-AzPoliciesInitiativesAssignmentsPlan.ps1 script's switch parameter SuppressDeletes changes this behavior. Set the "brownfield" variable in the pipeline to true; it will set the switch parameter preventing deletions of existing Policies, Initiatives and Policy Assignments. This allows for a gradual transition from your existing Policy management to Enterprise Policy as Code. + +
## Security & Compliance for Cloud Infrastructure @@ -54,7 +60,7 @@ The Policy as Code framework supports the following Policy and Initiative assign > **NOTE**: Distributed teams must only include those scopes in their version of the assignments.json that is not covered by another team. - **Mixed approach**: A centralized team manages policy and initiative assignments to a certain level (top-down approach), e.g. on the Tenant Root Group level, and top level Management group, and all assignments on lower levels (i.e. lower level Management Groups, Subscriptions and Resource Groups) are managed by multiple teams, in a distributed manner. - **NOTE**: This solution enforces a centralized approach. It is recommended that you follow a centralized approach however, when using the mixed approach, scopes that will not be managed by the central team should be excluded from the assignments Json file - therefore the assignment configuration script will ignore these scopes (it won't add/remove/update anything in there). Conversly, the distributed teams must only include those scopes in their version of the assignments.json that is not covered by the central team. + **NOTE**: This solution enforces a centralized approach. It is recommended that you follow a centralized approach however, when using the mixed approach, scopes that will not be managed by the central team should be excluded from the assignments Json file - therefore the assignment configuration script will ignore these scopes (it won't add/remove/update anything in there). Conversely, the distributed teams must only include those scopes in their version of the assignments.json that is not covered by the central team.
@@ -141,7 +147,7 @@ The solution needs to know the Azure scopes for your EPAC environments. This is ```jsonc "pacEnvironments": [ { - "pacSelector": "dev", + "pacSelector": "epac-dev", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "11111111-2222-3333-4444-555555555555", @@ -150,7 +156,7 @@ The solution needs to know the Azure scopes for your EPAC environments. This is } }, { - "pacSelector": "test", + "pacSelector": "epac-test", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "99999999-8888-7777-4444-333333333333", @@ -159,7 +165,7 @@ The solution needs to know the Azure scopes for your EPAC environments. This is } }, { - "pacSelector": "tenant1", + "pacSelector": "tenant", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "99999999-8888-7777-4444-333333333333", @@ -180,22 +186,19 @@ Explanations We explain the `managedIdentityLocations` and `globalNotScopes` elements in `global-settings.jsonc` [here](Definitions/README.md). -

Note:  If the default output for az cli is configured wrong then you will encounter an unexpected error from ConvertFrom-Json in Invoke-AzCli. The initial default in az cli out-of-box is correct. You can set it back to the correct default with "az config set core.output=json" -


- -```ps1 -az config set core.output=json -``` -
### Azure DevOps CI/CD Pipeline Setup your pipeline based on the provided starter kit pipeline. The yml file contains commented out sections to run in a IaaS Azure DevOps server (it requires a different approach to artifact storage) and for 2 additional tenants. Uncomment or delete the commented sections to fit your environment. -

-Warning:  If you have a existing Policies, Initiatives and Policy Assignments in your environment you have not transferred to EPAC, do not forget to change the "brownfield" variable in the pipeline to true. -


+
+ +> **Desired State Warning** +> +> **If you have a existing Policies, Initiatives and Assignments in your environment, you have not transferred to EPAC, do not forget to change the "brownfield" variable in the pipeline to true.** + +
Pipelines can customized to fit your needs: diff --git a/Scripts/Deploy/Build-AzPoliciesInitiativesAssignmentsPlan.ps1 b/Scripts/Deploy/Build-AzPoliciesInitiativesAssignmentsPlan.ps1 index 69d68081..54abb837 100644 --- a/Scripts/Deploy/Build-AzPoliciesInitiativesAssignmentsPlan.ps1 +++ b/Scripts/Deploy/Build-AzPoliciesInitiativesAssignmentsPlan.ps1 @@ -23,30 +23,6 @@ param ( [Parameter(Mandatory = $false, HelpMessage = "Use switch to indicate interactive use")] [switch] $interactive ) -function Write-AssignmentDetails { - [CmdletBinding()] - param ( - $printHeader, - $def, - $policySpecText, - $scopeInfo, - $roleDefinitions, - $prefix - ) - - if ($printHeader) { - Write-Information " Assignment `'$($def.assignment.DisplayName)`' ($($def.assignment.Name))" - Write-Information " Description: $($def.assignment.Description)" - Write-Information " $($policySpecText)" - } - Write-Information " $($prefix) at $($scopeInfo.scope)" - # if ($roleDefinitions.Length -gt 0) { - # foreach ($roleDefinition in $roleDefinitions) { - # Write-Information " RoleId=$($roleDefinition.roleDefinitionId), Scope=$($roleDefinition.scope)" - # } - # } -} - # Load cmdlets . "$PSScriptRoot/../Helpers/Get-PacFolders.ps1" . "$PSScriptRoot/../Helpers/Get-GlobalSettings.ps1" @@ -64,7 +40,7 @@ function Write-AssignmentDetails { . "$PSScriptRoot/../Helpers/Confirm-PolicyDefinitionUsedExists.ps1" . "$PSScriptRoot/../Helpers/Confirm-PolicyDefinitionsUsedMatch.ps1" . "$PSScriptRoot/../Helpers/Get-AzPolicyInitiativeDefinitions.ps1" -. "$PSScriptRoot/../Helpers/Get-AssignmentDefs.ps1" +. "$PSScriptRoot/../Helpers/Get-AssignmentDefinitions.ps1" . "$PSScriptRoot/../Helpers/Get-AzAssignmentsAtScopeRecursive.ps1" . "$PSScriptRoot/../Helpers/Get-NotScope.ps1" . "$PSScriptRoot/../Helpers/Get-AzScopeTree.ps1" @@ -74,6 +50,7 @@ function Write-AssignmentDetails { . "$PSScriptRoot/../Helpers/Get-FilteredHashTable.ps1" . "$PSScriptRoot/../Helpers/Invoke-AzCli.ps1" . "$PSScriptRoot/../Helpers/Set-AzCloudTenantSubscription.ps1" +. "$PSScriptRoot/../Helpers/Write-AssignmentDetails.ps1" # Initialize $InformationPreference = "Continue" diff --git a/Scripts/Deploy/Convert-XlsToCsv.ps1 b/Scripts/Deploy/Convert-XlsToCsv.ps1 index ab59d295..2b9dd193 100644 --- a/Scripts/Deploy/Convert-XlsToCsv.ps1 +++ b/Scripts/Deploy/Convert-XlsToCsv.ps1 @@ -32,7 +32,7 @@ $excelFiles = @() + (Get-ChildItem -Path $definitionsRootFolder -Recurse -File - foreach ($excelFile in $excelFiles) { $excelFileFullName = $excelFile.fullName Write-Information $excelFileFullName - $excelArray += (Import-Excel $excelFileFullName -ErrorAction Stop) + $excelArray = Import-Excel $excelFileFullName -ErrorAction Stop $csvFileFullName = $excelFileFullName -replace '\.xlsx$', '.csv' $excelArray | ConvertTo-Csv -UseQuotes AsNeeded | Out-File $csvFileFullName -Force diff --git a/Scripts/Helpers/Build-AzInitiativeDefinitionsPlan.ps1 b/Scripts/Helpers/Build-AzInitiativeDefinitionsPlan.ps1 index 17d98776..025a61ca 100644 --- a/Scripts/Helpers/Build-AzInitiativeDefinitionsPlan.ps1 +++ b/Scripts/Helpers/Build-AzInitiativeDefinitionsPlan.ps1 @@ -80,12 +80,13 @@ function Build-AzInitiativeDefinitionsPlan { $customInitiativeDefinitions.Add($name, $policyFile) } - # Prep additional fields + # Prep parameters [hashtable] $parameterTable = @{} if ($null -ne $initiativeObject.properties.parameters) { $parameterTable = ConvertTo-HashTable $initiativeObject.properties.parameters } + # Calculate included policyDefinitions $result = Build-AzPolicyDefinitionsForInitiative ` -allPolicyDefinitions $allPolicyDefinitions ` -replacedPolicyDefinitions $replacedPolicyDefinitions ` @@ -93,56 +94,71 @@ function Build-AzInitiativeDefinitionsPlan { -definitionScope $rootScopeId ` -policyNeededRoleDefinitionIds $policyNeededRoleDefinitionIds ` -initiativeNeededRoleDefinitionIds $initiativeNeededRoleDefinitionIds - [array] $policyDefinitions = $result.policyDefinitions - [hashtable] $groupDefinitions = @{} + # Process policyDefinitionGroups + [hashtable] $policyDefinitionGroupsHashTable = @{} if ($null -ne $initiativeObject.properties.policyDefinitionGroups) { + # Explicitely defined policyDefinitionGroups $null = ($initiativeObject.properties.policyDefinitionGroups) | ForEach-Object { - $groupDefinitions.Add($_.name, $_) + $policyDefinitionGroupsHashTable.Add($_.name, $_) } } + # Importing policyDefinitionGroups from built-in Initiatives? if ($initiativeObject.properties.importPolicyDefinitionGroups) { $importInitiativeNames = $initiativeObject.properties.importPolicyDefinitionGroups $limitNotReachedPolicyDefinitionGroups = $true - [hashtable] $usedPolicyGroupDefinitions = $result.usedPolicyGroupDefinitions + # Finding groupDefinitions (names) used but not yet covered with a (direct) policyDefinitionGroups + [hashtable] $remainingPolicyGroupDefinitionNames = $result.usedPolicyGroupDefinitions + [hashtable] $currentPolicyGroupDefinitionNames = $remainingPolicyGroupDefinitionNames.Clone() + foreach ($policyDefinitionGroupName in $currentPolicyGroupDefinitionNames) { + if ($policyDefinitionGroupsHashTable.ContainsKey($policyDefinitionGroupName)) { + $null = $remainingPolicyGroupDefinitionNames.Remove($policyDefinitionGroupName) + } + } + + # Trying to import missing policyDefinitionGroups entries foreach ($importInitiativeName in $importInitiativeNames) { + if ($remainingPolicyGroupDefinitionNames.Count -eq 0) { + break + } if ($builtInInitiativeDefinitions.ContainsKey($importInitiativeName)) { $importedInitiative = $builtInInitiativeDefinitions.$importInitiativeName if ($limitNotReachedPolicyDefinitionGroups) { if ($importedInitiative.policyDefinitionGroups) { - Write-Information " Importing PolicyDefinitionGroups from '$($importedInitiative.displayName)'" + # Write-Information "$($displayName): Importing PolicyDefinitionGroups from '$($importedInitiative.displayName)'" + foreach ($policyDefinitionGroup in $importedInitiative.policyDefinitionGroups) { $policyDefinitionGroupName = $policyDefinitionGroup.name - if ($usedPolicyGroupDefinitions.ContainsKey($policyDefinitionGroupName)) { - # Only import a PolicyGroupDefinition if it is used - - if (!$groupDefinitions.ContainsKey($policyDefinitionGroupName)) { - # Ignores duplicates - - if ($groupDefinitions.Count -ge 1000) { - $limitNotReachedPolicyDefinitionGroups = true; - Write-Information " Too many PolicyDefinitionGroups (1000+) to import" - break - } - $null = $groupDefinitions.Add($policyDefinitionGroupName, $policyDefinitionGroup) - # Write-Information " $policyDefinitionGroupName" + if ($remainingPolicyGroupDefinitionNames.ContainsKey($policyDefinitionGroupName) -and (-not $policyDefinitionGroupsHashTable.ContainsKey($policyDefinitionGroupName))) { + # Only import a PolicyGroupDefinition if it is used and not yet covered + if ($policyDefinitionGroupsHashTable.Count -ge 1000) { + $limitNotReachedPolicyDefinitionGroups = true; + Write-Information "$($displayName): Too many PolicyDefinitionGroups (1000+) - ignore remaining inports" + break } + $null = $policyDefinitionGroupsHashTable.Add($policyDefinitionGroupName, $policyDefinitionGroup) + $null = $remainingPolicyGroupDefinitionNames.Remove($policyDefinitionGroupName) + # Write-Information " $policyDefinitionGroupName" + } + if ($remainingPolicyGroupDefinitionNames.Count -eq 0) { + break } } - Write-Information " Imported $($groupDefinitions.Count) PolicyDefinitionGroups from '$($importedInitiative.displayName)'" + Write-Information "$($displayName): Imported $($policyDefinitionGroupsHashTable.Count) PolicyDefinitionGroups from '$($importedInitiative.displayName)'" } else { - Write-Error " Initiative $($importedInitiative.displayName) does not contain PolicyDefinitionGroups to import" -ErrorAction Stop + Write-Error "$($displayName): Initiative $($importedInitiative.displayName) does not contain PolicyDefinitionGroups to import" -ErrorAction Stop } } else { - Write-Information " Importing PolicyDefinitionGroups from Initiative '$($importedInitiative.displayName)' exceeds maximum number of PolicyDefinitionGroups (1000)" + Write-Information "$($displayName): Importing PolicyDefinitionGroups from Initiative '$($importedInitiative.displayName)' exceeds maximum number of PolicyDefinitionGroups (1000)" + break } } else { - Write-Error " Initiative $importInitiativeName not found for importing PolicyDefinitionGroups" ErrorAction Stop + Write-Error "$($displayName): Initiative $importInitiativeName not found for importing PolicyDefinitionGroups" ErrorAction Stop } } } @@ -166,8 +182,11 @@ function Build-AzInitiativeDefinitionsPlan { Parameter = $parameterTable PolicyDefinition = $policyDefinitions } - if ($groupDefinitions.Count -gt 0) { - $initiativeDefinitionConfig.Add("GroupDefinition", $groupDefinitions.Values) + if ($policyDefinitionGroupsHashTable.Count -gt 0) { + if ($policyDefinitionGroupsHashTable.Count -gt 1000) { + Write-Error "Too many PolicyDefinitionGroups (1000+) in Initiative '$displayName'" -ErrorAction Stop + } + $initiativeDefinitionConfig.Add("GroupDefinition", $policyDefinitionGroupsHashTable.Values) } # Adding SubscriptionId or ManagementGroupName value and optional fields to the splat $initiativeDefinitionConfig += $rootScope @@ -190,7 +209,7 @@ function Build-AzInitiativeDefinitionsPlan { $replacedInitiativeDefinitions.Add($name, $initiativeDefinitionConfig) } else { - # Check if policy definition in Azure is the same as in the Json file + # Check if Initiative definition in Azure is the same as in the Json file $displayNameMatches = $matchingCustomDefinition.displayName -eq $initiativeDefinitionConfig.DisplayName $descriptionMatches = $matchingCustomDefinition.description -eq $initiativeDefinitionConfig.Description $metadataMatches = Confirm-MetadataMatches ` @@ -206,7 +225,7 @@ function Build-AzInitiativeDefinitionsPlan { -existingObj $matchingCustomDefinition.policyDefinitions ` -definedObj $initiativeDefinitionConfig.PolicyDefinition - # Update policy definition in Azure if necessary + # Update Initiative definition in Azure if necessary if ($displayNameMatches -and $groupDefinitionMatches -and $parameterMatchResults.match -and $metadataMatches -and $policyDefinitionsMatch -and $descriptionMatches) { # Write-Information "Unchanged '$($name)' - '$($displayName)'" $unchangedInitiativeDefinitions.Add($name, $displayName) diff --git a/Scripts/Helpers/Build-AzPolicyAssignmentsPlan.ps1 b/Scripts/Helpers/Build-AzPolicyAssignmentsPlan.ps1 index b028325b..4a9efe10 100644 --- a/Scripts/Helpers/Build-AzPolicyAssignmentsPlan.ps1 +++ b/Scripts/Helpers/Build-AzPolicyAssignmentsPlan.ps1 @@ -61,7 +61,7 @@ function Build-AzPolicyAssignmentsPlan { else { Write-Error "Assignment Json file '$($assignmentFile.FullName)' is not valid." -ErrorAction Stop } - $assignmentObject = $Json | ConvertFrom-Json + $assignmentObject = $Json | ConvertFrom-Json -AsHashtable # Collect all assignment definitions (values) $initialAssignmentDef = @{ @@ -84,7 +84,7 @@ function Build-AzPolicyAssignmentsPlan { if ($managedIdentityLocation) { $initialAssignmentDef.managedIdentityLocation = $managedIdentityLocation } - $assignmentDefList = Get-AssignmentDefs ` + $assignmentDefList = Get-AssignmentDefinitions ` -scopeTreeInfo $scopeTreeInfo ` -definitionNode $assignmentObject ` -assignmentDef $initialAssignmentDef ` @@ -98,296 +98,291 @@ function Build-AzPolicyAssignmentsPlan { if ($def.hasErrors) { Write-Error "Assignment definitions content errors" -ErrorAction Stop } - $noChangedAssignments = $true - $numberOfUnchangedAssignmentsForAssignmentDef = 0 - # What is being assigned - $definitionEntry = $def.definitionEntry - $policyDefinitionId = $null + if (-not $def.ignoreBranch) { + # Housekeeping + $noChangedAssignments = $true + $numberOfUnchangedAssignmentsForAssignmentDef = 0 - # Find what to assign and check if it exists - $name = $null - $friendlyName = $definitionEntry.friendlyNameToDocumentIfGuid - $policySpecText = "" - $result = $null - $parametersInDefinition = $null - $policySpec = @{} - $roleDefinitionIds = @() - # Potential update scenario - if ($definitionEntry.initiativeName) { - $name = $definitionEntry.initiativeName - if ($friendlyName) { - $policySpecText = "Initiative '$name' - '$friendlyName'" - } - else { - $policySpecText = "Initiative '$name'" - } - $result = Confirm-InitiativeDefinitionUsedExists -allInitiativeDefinitions $allInitiativeDefinitions -replacedInitiativeDefinitions $replacedInitiativeDefinitions -initiativeNameRequired $name - if ($result.usingUndefinedReference) { - continue - } - else { - $initiativeDefinition = $allInitiativeDefinitions[$name] - if ($customInitiativeDefinitions.ContainsKey($name)) { - # is custom - $policyDefinitionId = $rootScopeId + "/providers/Microsoft.Authorization/policySetDefinitions/" + $name - $parametersInDefinition = $initiativeDefinition.Parameter - } - else { - # is built in - $policyDefinitionId = "/providers/Microsoft.Authorization/policySetDefinitions/" + $name - $parametersInDefinition = $initiativeDefinition.parameters - } - $policySpec = @{ initiativeId = $policyDefinitionId } - if ($initiativeNeededRoleDefinitionIds.ContainsKey($name)) { - $roleDefinitionIds = $initiativeNeededRoleDefinitionIds.$name + foreach ($policyAssignmentEntry in $def.policyAssignmentList) { + + # Find what to assign and check if it exists + $friendlyName = $policyAssignmentEntry.friendlyNameToDocumentIfGuid + $policySpecText = "" + $result = $null + $parametersInDefinition = $null + $policySpec = @{} + $roleDefinitionIds = @() + $assignmentName = $policyAssignmentEntry.assignment.name + $assignmentDisplayName = $policyAssignmentEntry.assignment.displayName + $assignmentDescription = $policyAssignmentEntry.assignment.description + if ($policyAssignmentEntry.initiativeName) { + $name = $policyAssignmentEntry.initiativeName + if ($friendlyName) { + $policySpecText = "Initiative '$name' - '$friendlyName'" + } + else { + $policySpecText = "Initiative '$name'" + } + $result = Confirm-InitiativeDefinitionUsedExists -allInitiativeDefinitions $allInitiativeDefinitions -replacedInitiativeDefinitions $replacedInitiativeDefinitions -initiativeNameRequired $name + if ($result.usingUndefinedReference) { + continue + } + else { + $initiativeDefinition = $allInitiativeDefinitions[$name] + $parametersInDefinition = $initiativeDefinition.Parameter + if ($customInitiativeDefinitions.ContainsKey($name)) { + # is custom + $policyDefinitionId = $rootScopeId + "/providers/Microsoft.Authorization/policySetDefinitions/" + $name + } + else { + # is built in + $policyDefinitionId = "/providers/Microsoft.Authorization/policySetDefinitions/" + $name + } + $policySpec = @{ initiativeId = $policyDefinitionId } + if ($initiativeNeededRoleDefinitionIds.ContainsKey($name)) { + $roleDefinitionIds = $initiativeNeededRoleDefinitionIds.$name + } + } } - } - } - elseif ($definitionEntry.policyName) { - $name = $definitionEntry.policyName - if ($friendlyName) { - $policySpecText = "Policy '$name' - '$friendlyName'" - } - else { - $policySpecText = "Policy '$($name)'" - } - $result = Confirm-PolicyDefinitionUsedExists -allPolicyDefinitions $allPolicyDefinitions -replacedPolicyDefinitions $replacedPolicyDefinitions -policyNameRequired $name - if ($result.usingUndefinedReference) { - continue - } - else { - $policyDefinition = $allPolicyDefinitions[$name] - if ($customPolicyDefinitions.ContainsKey($name)) { - # is custom - $policyDefinitionId = $rootScopeId + "/providers/Microsoft.Authorization/policyDefinitions/" + $name - $parametersInDefinition = $policyDefinition.Parameter + elseif ($policyAssignmentEntry.policyName) { + $name = $policyAssignmentEntry.policyName + if ($friendlyName) { + $policySpecText = "Policy '$name' - '$friendlyName'" + } + else { + $policySpecText = "Policy '$($name)'" + } + $result = Confirm-PolicyDefinitionUsedExists -allPolicyDefinitions $allPolicyDefinitions -replacedPolicyDefinitions $replacedPolicyDefinitions -policyNameRequired $name + if ($result.usingUndefinedReference) { + continue + } + else { + $policyDefinition = $allPolicyDefinitions[$name] + $parametersInDefinition = $policyDefinition.Parameter + if ($customPolicyDefinitions.ContainsKey($name)) { + # is custom + $policyDefinitionId = $rootScopeId + "/providers/Microsoft.Authorization/policyDefinitions/" + $name + } + else { + # is built in + $policyDefinitionId = "/providers/Microsoft.Authorization/policyDefinitions/" + $name + } + $policySpec = @{ policyId = $policyDefinitionId } + if ($policyNeededRoleDefinitionIds.ContainsKey($name)) { + $roleDefinitionIds = $policyNeededRoleDefinitionIds.$name + } + } } else { - # is built in - $policyDefinitionId = "/providers/Microsoft.Authorization/policyDefinitions/" + $name - $parametersInDefinition = $policyDefinition.parameters - } - $policySpec = @{ policyId = $policyDefinitionId } - if ($policyNeededRoleDefinitionIds.ContainsKey($name)) { - $roleDefinitionIds = $policyNeededRoleDefinitionIds.$name + Write-Error "Neither policyName nor initiativeName specified for Assignment `'$($def.assignment.DisplayName)`' ($($def.assignment.Name)) - must specify exactly one" + continue } - } - } - else { - Write-Error "Neither policyName nor initiativeName specified for Assignment `'$($def.assignment.DisplayName)`' ($($def.assignment.Name)) - must specify exactly one" - continue - } - - if ($definitionEntry.roleDefinitionIds) { - # Obsolete entry, replaced in v3 by a calculated value from the Policy definition(s) being assigned - Write-Information "Warning: roleDefinitionIds in Assignment '$($def.assignment.DisplayName)' is deprecated. Value in definition is ignored and roleDefinitionIds are calculated from the Policy definitions." - } - # Check if branch is active - if ($def.ignoreBranch) { - # Write-Information " %%% IGNORED node=$($def.nodeName), reason=ignoreBranch flag set" - # } - # elseif ($def.hasOnlyNotSelectedEnvironments) { - # Write-Information " %%% IGNORED node=$($def.nodeName), reason=PaC-Env $AssignmentSelector without scope definition" - } - else { - # Set parameters - $parametersSetInAssignment = $def.parameters - $parameterObject = @{} - if ($parametersInDefinition -and $parametersSetInAssignment) { - $parametersDefined = ConvertTo-HashTable $parametersInDefinition - foreach ($parameterName in $parametersDefined.Keys) { - # $definedParameter = $parametersDefined.$parameterName - if ($parametersSetInAssignment.ContainsKey($parameterName)) { - Write-Debug " Setting param $parametername = $($parametersSetInAssignment[$parametername])" - $parameterObject[$parameterName] = $parametersSetInAssignment[$parameterName] + # Set parameters + $parametersSetInAssignment = $def.parameters + $parameterObject = @{} + if ($parametersInDefinition -and $parametersSetInAssignment) { + $parametersDefined = ConvertTo-HashTable $parametersInDefinition + foreach ($parameterName in $parametersDefined.Keys) { + # $definedParameter = $parametersDefined.$parameterName + if ($parametersSetInAssignment.ContainsKey($parameterName)) { + Write-Debug " Setting param $parametername = $($parametersSetInAssignment[$parametername])" + $parameterObject[$parameterName] = $parametersSetInAssignment[$parameterName] + } } } - } - Write-Debug " parameters[$($parameterObject.Count)] = $($parameterObject | ConvertTo-Json -Depth 100)" - - # Process list of scopes in this branch - foreach ($scopeInfo in $def.scopeCollection) { - # Create the assignment splat (modified) - $id = $scopeInfo.scope + "/providers/Microsoft.Authorization/policyAssignments/" + $def.assignment.Name - $assignmentConfig = @{ - Id = $id - Name = $def.assignment.Name - DisplayName = $def.assignment.DisplayName - Description = $def.assignment.Description - Metadata = @{} - EnforcementMode = $def.enforcementMode - DefinitionEntry = $definitionEntry - Scope = $scopeInfo.scope - PolicyParameterObject = $parameterObject - identityRequired = $false - } - $assignmentConfig += $policySpec - if ($null -ne $def.metadata) { - $assignmentConfig.Metadata = ConvertTo-HashTable $def.metadata - } - if ($null -ne $def.managedIdentityLocation) { - $assignmentConfig.managedIdentityLocation = $def.managedIdentityLocation - } + Write-Debug " parameters[$($parameterObject.Count)] = $($parameterObject | ConvertTo-Json -Depth 100)" - # Retrieve roleDefinitionIds - $roleAssignmentSpecs = @() - if ($roleDefinitionIds.Length -gt 0) { - foreach ($roleDefinitionId in $roleDefinitionIds) { - $roleDisplayName = "Unknown" - $roleDefinitionName = ($roleDefinitionId.Split("/"))[-1] - if ($roleDefinitions.ContainsKey($roleDefinitionName)) { - $roleDisplayName = $roleDefinitions.$roleDefinitionName - } - $roleAssignmentSpecs += @{ - scope = $scopeInfo.scope - roleDefinitionId = $roleDefinitionId - roleDisplayName = $roleDisplayName - } + # Process list of scopes in this branch + foreach ($scopeInfo in $def.scopeCollection) { + # Create the assignment splat (modified) + $id = $scopeInfo.scope + "/providers/Microsoft.Authorization/policyAssignments/" + $assignmentName + $assignmentConfig = @{ + Id = $id + Name = $assignmentName + DisplayName = $assignmentDisplayName + Description = $assignmentDescription + Metadata = @{} + EnforcementMode = $def.enforcementMode + Scope = $scopeInfo.scope + PolicyParameterObject = $parameterObject + identityRequired = $false + } + $assignmentConfig += $policySpec + if ($null -ne $def.metadata) { + $assignmentConfig.Metadata = ConvertTo-HashTable $def.metadata + } + if ($null -ne $def.managedIdentityLocation) { + $assignmentConfig.managedIdentityLocation = $def.managedIdentityLocation } - if ($def.additionalRoleAssignments) { - foreach ($additionalRoleAssignment in $def.additionalRoleAssignments) { - $roleDefinitionId = $additionalRoleAssignment.roleDefinitionId + + # Retrieve roleDefinitionIds + $roleAssignmentSpecs = @() + if ($roleDefinitionIds.Length -gt 0) { + foreach ($roleDefinitionId in $roleDefinitionIds) { $roleDisplayName = "Unknown" $roleDefinitionName = ($roleDefinitionId.Split("/"))[-1] if ($roleDefinitions.ContainsKey($roleDefinitionName)) { $roleDisplayName = $roleDefinitions.$roleDefinitionName } $roleAssignmentSpecs += @{ - scope = $additionalRoleAssignment.scope + scope = $scopeInfo.scope roleDefinitionId = $roleDefinitionId roleDisplayName = $roleDisplayName } } + if ($def.additionalRoleAssignments) { + foreach ($additionalRoleAssignment in $def.additionalRoleAssignments) { + $roleDefinitionId = $additionalRoleAssignment.roleDefinitionId + $roleDisplayName = "Unknown" + $roleDefinitionName = ($roleDefinitionId.Split("/"))[-1] + if ($roleDefinitions.ContainsKey($roleDefinitionName)) { + $roleDisplayName = $roleDefinitions.$roleDefinitionName + } + $roleAssignmentSpecs += @{ + scope = $additionalRoleAssignment.scope + roleDefinitionId = $roleDefinitionId + roleDisplayName = $roleDisplayName + } + } + } + $assignmentConfig.identityRequired = $true + $assignmentConfig.Metadata.Add("roles", $roleAssignmentSpecs) + if ($null -eq $assignmentConfig.managedIdentityLocation) { + Write-Error "Assignment requires an identity and the definition does not define a managedIdentityLocation" -ErrorAction Stop + } } - $assignmentConfig.identityRequired = $true - $assignmentConfig.Metadata.Add("roles", $roleAssignmentSpecs) - if ($null -eq $assignmentConfig.managedIdentityLocation) { - Write-Error "Assignment requires an identity and the definition does not define a managedIdentityLocation" -ErrorAction Stop - } - } - if ($scopeInfo.notScope.Length -gt 0) { - Write-Debug " notScope added = $($scopeInfo.notScope | ConvertTo-Json -Depth 100)" - $assignmentConfig.NotScope = @() + $scopeInfo.notScope - } - - if ($existingAssignments.ContainsKey($id)) { - # Assignment already exists - $obsoleteAssignments.Remove($id) # do not delete - $assignmentInfoInAzure = $existingAssignments[$id] - $assignmentInAzure = $assignmentInfoInAzure.assignment - $value = @{ - assignmentId = $id - identity = $assignmentInAzure.identity - location = $assignmentInAzure.location - roleAssignments = $assignmentInfoInAzure.roleAssignments - } - $assignmentConfig += @{ - existingAssignment = $value + if ($scopeInfo.notScope.Length -gt 0) { + Write-Debug " notScope added = $($scopeInfo.notScope | ConvertTo-Json -Depth 100)" + $assignmentConfig.NotScope = @() + $scopeInfo.notScope } - $policyDefinitionMatches = $policyDefinitionId -eq $assignmentInAzure.policyDefinitionId - $replaceIn = (-not $policyDefinitionMatches) -or $result.usingReplacedReference - $replace, $changingRoleAssignments = Build-AzPolicyAssignmentIdentityAndRoleChanges ` - -replacingAssignment $replaceIn ` - -managedIdentityLocation $assignmentConfig.managedIdentityLocation ` - -assignmentConfig $assignmentConfig ` - -removedRoleAssignments $removedRoleAssignments ` - -addedRoleAssignments $addedRoleAssignments - - if ($replace) { - $replacedAssignments.Add($id, $assignmentConfig) - $changesString = ($policyDefinitionMatches ? "-" : "P") ` - + ($result.usingReplacedReference ? "-" : "R") ` - + ((!$replaceIn -and $replace) ? "-": "I") - Write-AssignmentDetails ` - -printHeader $noChangedAssignments ` - -def $def ` - -policySpecText $policySpecText ` - -scopeInfo $scopeInfo ` - -roleDefinitions $roleDefinitions ` - -prefix "### REPLACE($changesString)" - $noChangedAssignments = $false - } - else { - $displayNameMatches = $assignmentConfig.DisplayName -eq $assignmentInAzure.displayName - $descriptionMatches = $assignmentConfig.Description -eq $assignmentInAzure.description - $notScopeMatches = Confirm-ObjectValueEqualityDeep ` - -existingObj $assignmentInAzure.notScopes ` - -definedObj $scopeInfo.notScope - $parametersMatch = Confirm-AssignmentParametersMatch ` - -existingParametersObj $assignmentInAzure.parameters ` - -definedParametersObj $parameterObject - $metadataMatches = Confirm-MetadataMatches ` - -existingMetadataObj $assignmentInAzure.metadata ` - -definedMetadataObj $assignmentConfig.Metadata - $enforcementModeMatches = $assignmentInAzure.enforcementMode -eq $assignmentConfig.EnforcementMode - $match = $displayNameMatches -and $descriptionMatches -and $parametersMatch -and $metadataMatches -and $enforcementModeMatches - $notScopeUpdateOnly = !$notScopeMatches -and $match - if ($notScopeUpdateOnly) { - # notScope chnages only - # Write-Information " *** NOTSCOPE UPDATE at $($scopeInfo.scope)" - $numberOfNotScopeChanges += 1 - $updatedAssignments.Add($Id, $assignmentConfig) + if ($existingAssignments.ContainsKey($id)) { + # Assignment already exists + $obsoleteAssignments.Remove($id) # do not delete + $assignmentInfoInAzure = $existingAssignments[$id] + $assignmentInAzure = $assignmentInfoInAzure.assignment + $value = @{ + assignmentId = $id + identity = $assignmentInAzure.identity + location = $assignmentInAzure.location + roleAssignments = $assignmentInfoInAzure.roleAssignments } - elseif ($match) { - if ($changingRoleAssignments) { - Write-AssignmentDetails ` - -printHeader $noChangedAssignments ` - -def $def ` - -policySpecText $policySpecText ` - -scopeInfo $scopeInfo ` - -roleDefinitions $roleDefinitions ` - -prefix "~~~ UPDATE(------R)" - } - $unchangedAssignments.Add($id, $assignmentConfig.Name) - $numberOfUnchangedAssignmentsForAssignmentDef++ - $numberOfUnchangedAssignmentsInFile++ + $assignmentConfig += @{ + existingAssignment = $value } - else { - $updatedAssignments.Add($Id, $assignmentConfig) - $changesString = ($displayNameMatches ? "-" : "n") ` - + ($descriptionMatches ? "-" : "d") ` - + ($metadataMatches ? "-": "m") ` - + ($enforcementModeMatches ? "-": "e") ` - + ($parametersMatch ? "-": "p") ` - + ($notScopeMatches ? "-": "N") ` - + ($changingRoleAssignments ? "R": "-") + $policyDefinitionMatches = $policyDefinitionId -eq $assignmentInAzure.policyDefinitionId + $replaceIn = (-not $policyDefinitionMatches) -or $result.usingReplacedReference + $replace, $changingRoleAssignments = Build-AzPolicyAssignmentIdentityAndRoleChanges ` + -replacingAssignment $replaceIn ` + -managedIdentityLocation $assignmentConfig.managedIdentityLocation ` + -assignmentConfig $assignmentConfig ` + -removedRoleAssignments $removedRoleAssignments ` + -addedRoleAssignments $addedRoleAssignments + + if ($replace) { + $replacedAssignments.Add($id, $assignmentConfig) + $changesString = ($policyDefinitionMatches ? "-" : "P") ` + + ($result.usingReplacedReference ? "-" : "R") ` + + ((!$replaceIn -and $replace) ? "-": "I") Write-AssignmentDetails ` -printHeader $noChangedAssignments ` - -def $def ` + -assignmentName $assignmentName ` + -assignmentDisplayName $assignmentDisplayName ` + -assignmentDescription $assignmentDescription ` -policySpecText $policySpecText ` -scopeInfo $scopeInfo ` -roleDefinitions $roleDefinitions ` - -prefix "~~~ UPDATE($changesString)" + -prefix "### REPLACE($changesString)" $noChangedAssignments = $false } - } - } - else { - # New Assiignment - $newAssignments.Add($id, $assignmentConfig) - if ($roleAssignmentSpecs.Length -gt 0) { - $addedRoleAssignments.Add($id, @{ - DisplayName = $assignmentConfig.DisplayName - identity = $null - roles = $roleAssignmentSpecs + else { + $displayNameMatches = $assignmentConfig.DisplayName -eq $assignmentInAzure.displayName + $descriptionMatches = $assignmentConfig.Description -eq $assignmentInAzure.description + $notScopeMatches = Confirm-ObjectValueEqualityDeep ` + -existingObj $assignmentInAzure.notScopes ` + -definedObj $scopeInfo.notScope + $parametersMatch = Confirm-AssignmentParametersMatch ` + -existingParametersObj $assignmentInAzure.parameters ` + -definedParametersObj $parameterObject + $metadataMatches = Confirm-MetadataMatches ` + -existingMetadataObj $assignmentInAzure.metadata ` + -definedMetadataObj $assignmentConfig.Metadata + $enforcementModeMatches = $assignmentInAzure.enforcementMode -eq $assignmentConfig.EnforcementMode + $match = $displayNameMatches -and $descriptionMatches -and $parametersMatch -and $metadataMatches -and $enforcementModeMatches + $notScopeUpdateOnly = !$notScopeMatches -and $match + if ($notScopeUpdateOnly) { + # notScope chnages only + # Write-Information " *** NOTSCOPE UPDATE at $($scopeInfo.scope)" + $numberOfNotScopeChanges += 1 + $updatedAssignments.Add($Id, $assignmentConfig) + } + elseif ($match) { + if ($changingRoleAssignments) { + Write-AssignmentDetails ` + -printHeader $noChangedAssignments ` + -assignmentName $assignmentName ` + -assignmentDisplayName $assignmentDisplayName ` + -assignmentDescription $assignmentDescription ` + -policySpecText $policySpecText ` + -scopeInfo $scopeInfo ` + -roleDefinitions $roleDefinitions ` + -prefix "~~~ UPDATE(------R)" + } + $unchangedAssignments.Add($id, $assignmentConfig.Name) + $numberOfUnchangedAssignmentsForAssignmentDef++ + $numberOfUnchangedAssignmentsInFile++ + } + else { + $updatedAssignments.Add($Id, $assignmentConfig) + $changesString = ($displayNameMatches ? "-" : "n") ` + + ($descriptionMatches ? "-" : "d") ` + + ($metadataMatches ? "-": "m") ` + + ($enforcementModeMatches ? "-": "e") ` + + ($parametersMatch ? "-": "p") ` + + ($notScopeMatches ? "-": "N") ` + + ($changingRoleAssignments ? "R": "-") + + Write-AssignmentDetails ` + -printHeader $noChangedAssignments ` + -assignmentName $assignmentName ` + -assignmentDisplayName $assignmentDisplayName ` + -assignmentDescription $assignmentDescription ` + -policySpecText $policySpecText ` + -scopeInfo $scopeInfo ` + -roleDefinitions $roleDefinitions ` + -prefix "~~~ UPDATE($changesString)" + $noChangedAssignments = $false } - ) + } + } + else { + # New Assiignment + $newAssignments.Add($id, $assignmentConfig) + if ($roleAssignmentSpecs.Length -gt 0) { + $addedRoleAssignments.Add($id, @{ + DisplayName = $assignmentConfig.DisplayName + identity = $null + roles = $roleAssignmentSpecs + } + ) + } + Write-AssignmentDetails ` + -printHeader $noChangedAssignments ` + -assignmentName $assignmentName ` + -assignmentDisplayName $assignmentDisplayName ` + -assignmentDescription $assignmentDescription ` + -policySpecText $policySpecText ` + -scopeInfo $scopeInfo ` + -roleDefinitions $roleDefinitions ` + -prefix "+++ NEW" + $noChangedAssignments = $false } - Write-AssignmentDetails ` - -printHeader $noChangedAssignments ` - -def $def ` - -policySpecText $policySpecText ` - -scopeInfo $scopeInfo ` - -roleDefinitions $roleDefinitions ` - -prefix "+++ NEW" - $noChangedAssignments = $false + $allAssignments.Add($id, $assignmentConfig) } - $allAssignments.Add($id, $assignmentConfig) } } } diff --git a/Scripts/Helpers/Build-AzPolicyExemptionsPlan.ps1 b/Scripts/Helpers/Build-AzPolicyExemptionsPlan.ps1 index 70ee6f99..738d6c7c 100644 --- a/Scripts/Helpers/Build-AzPolicyExemptionsPlan.ps1 +++ b/Scripts/Helpers/Build-AzPolicyExemptionsPlan.ps1 @@ -33,7 +33,7 @@ function Build-AzPolicyExemptionsPlan { [hashtable] $obsoleteExemptions = $existingExemptions.Clone() if ($exemptionFiles.Length -gt 0) { Write-Information "Number of Policy Exemption files = $($exemptionFiles.Length)" - $now = Get-Date + $now = Get-Date -AsUTC foreach ($file in $exemptionFiles) { $exemptionArray = @() $extension = $file.Extension @@ -154,7 +154,7 @@ function Build-AzPolicyExemptionsPlan { elseif ($expiresOnRaw -is [string]) { if ($expiresOnRaw -ne "") { try { - $expiresOn = [datetime]::Parse($expiresOnRaw) + $expiresOn = [datetime]::Parse($expiresOnRaw, $null, [System.Globalization.DateTimeStyles]::AssumeUniversal -bor [System.Globalization.DateTimeStyles]::AdjustToUniversal) } catch { Write-Error "$_" -ErrorAction Stop @@ -232,7 +232,7 @@ function Build-AzPolicyExemptionsPlan { -existingMetadataObj $existingExemption.metadata ` -definedMetadataObj $metadata # Update policy definition in Azure if necessary - if ($displayNameMatches -and $descriptionMatches -and $exemptionCategoryMatches -and $expiresOnMatches -and $policyDefinitionReferenceIdsMatches -and $metadataMatches) { + if ($displayNameMatches -and $descriptionMatches -and $exemptionCategoryMatches -and $expiresOnMatches -and $policyDefinitionReferenceIdsMatches -and $metadataMatches -and (-not $clearExpiration)) { # Write-Information "Unchanged '$($name)' - '$($displayName)'" $null = $unchangedExemptions.Add($id, $displayName) } diff --git a/Scripts/Helpers/Build-PolicyAssignmentDocumenationFragment.ps1 b/Scripts/Helpers/Build-PolicyAssignmentDocumenationFragment.ps1 deleted file mode 100644 index 96e27d49..00000000 --- a/Scripts/Helpers/Build-PolicyAssignmentDocumenationFragment.ps1 +++ /dev/null @@ -1,190 +0,0 @@ -#Requires -PSEdition Core - -function Get-SortOrdinal { - param ( - [string] $effect - ) - - $effect2sortOrdinal = @{ - Modify = 0 - Append = 1 - DeployIfNotExists = 2 - Deny = 3 - AuditIfNotExists = 4 - Audit = 4 - Disabled = 5 - } - - - $ordinal = -1 # should not be possible - if ($effect2sortOrdinal.ContainsKey($effect)) { - $ordinal = $effect2sortOrdinal.$effect - } - return $ordinal -} - -function Get-Effect { - param ( - [string] $ordinal - ) - - $sortOrdinal2effect = @( - "Modify Poices", - "Append Policies", - "DeployIfNotExists Policies", - "Deny Policies", - "Audit Policies", - "Disabled Policies" - ) - - $effect = "Unknown" - if ($ordinal -ge 0 -and $ordinal -lt $sortOrdinal2effect.Count) { - $effect = $sortOrdinal2effect[$ordinal] - } - return $effect -} - -function Build-PolicyAssignmentDocumenationFragment { - [CmdletBinding()] - param ( - [int] $headingLevel, - [array] $assignmentArray, - [hashtable] $policyInitiativeInfo, - [hashtable] $assignmentsInfo - ) - - [System.Collections.Generic.List[string]] $linesAdded = [System.Collections.Generic.List[string]]::new() - - #region Emit List of Assignments - - $null = $linesAdded.Add("`n$('#'*$headingLevel) Assignments`n") - $atLeastOneInitiative = $false - foreach ($assignmentEntry in $assignmentArray) { - $assignmentId = $assignmentEntry.id - $shortName = $assignmentEntry.shortName - if ($assignmentsInfo.ContainsKey($assignmentId)) { - $assignmentInfo = $assignmentsInfo.$assignmentId - if ($assignmentInfo.isInitiative) { - $null = $linesAdded.Add("- Initiative: $($assignmentInfo.initiativeDisplayName) ($shortName)") - $null = $linesAdded.Add(" - $($assignmentInfo.initiativeDescription)") - $null = $linesAdded.Add(" - Type: $($assignmentInfo.initiativePolicyType)") - $null = $linesAdded.Add(" - Category: $($assignmentInfo.initiativeCategory)") - $atLeastOneInitiative = $true - } - else { - $policyDefinitionsInfo = $assignmentInfo.policyDefinitionsInfo[0] - $parameters = $policyDefinitionInfo.parameters - $null = $linesAdded.Add("- Policy: $($policyDefinitionsInfo.displayName) ($shortName)") - $null = $linesAdded.Add(" - $($policyDefinitionsInfo.decription)") - $null = $linesAdded.Add(" - Type: $($policyDefinitionsInfo.policyType)") - $null = $linesAdded.Add(" - Category: $($policyDefinitionsInfo.category)") - $null = $linesAdded.Add(" - Effect: $($policyDefinitionsInfo.effectValue)") - } - $null = $linesAdded.Add("

") - } - } - - #endregion Emit List of Assignments - - if ($atLeastOneInitiative) { - - #region Flatten structure by effect, category, policy display name - - $flatPolicyList = @{} - foreach ($assignmentEntry in $assignmentArray) { - $assignmentId = $assignmentEntry.id - $shortName = $assignmentEntry.shortName - if ($assignmentsInfo.ContainsKey($assignmentId)) { - $assignmentInfo = $assignmentsInfo.$assignmentId - if ($assignmentInfo.isInitiative) { - $assignmentId = $assignment.id - foreach ($policyDefinitionInfo in $assignmentInfo.policyDefinitionsInfos) { - $id = $policyDefinitionInfo.id - $effect = $policyDefinitionInfo.effectValue - $ordinal = Get-SortOrdinal -ordinaledEffects $ordinaledEffects -effect $effect - - [hashtable] $currentAssignmentAndFlatPolicyInfo = @{ - effect = $effect - ordinal = $ordinal - assignmentShortName = $shortName - parameters = $policyDefinitionInfo.parameters - } - - if ($flatPolicyList.ContainsKey($id)) { - [hashtable] $flatPolicyInfo = $flatPolicyList.$id - [hashtable] $effectiveAssignment = $flatPolicyInfo.effectiveAssignment - [hashtable] $allAssignments = $flatPolicyInfo.allAssignments - if ($ordinal -lt $effectiveAssignmnet.ordinal) { - $flatPolicyInfo.effectiveAssignment = $effectiveAssignment - } - $allAssignments.Add($shortName, $currentAssignmentAndFlatPolicyInfo) - } - else { - # First time encountering Policy - $displayName = $policyDefinitionInfo.name - if ($policyDefinitionInfo.displayName) { - $displayName = $policyDefinitionInfo.displayName - } - $description = "" - if ($policyDefinitionInfo.description) { - $description = $policyDefinitionInfo.description - } - $effect = $policyDefinitionInfo.effectValue - - $flatPolicyInfo = @{ - category = $policyDefinitionInfo.category - displayName = $displayName - description = $description - effectiveAssignment = $currentAssignmentAndFlatPolicyInfo - allAssignments = @{ - $shortName = $currentAssignmentAndFlatPolicyInfo - } - } - $flatPolicyList.Add($id, $flatPolicyInfo) - } - } - } - } - } - - #endegion Flatten structure by effect, category, policy display name - - #egion Emit Policy Tables by Effect - - $previousOrdinal = -1 - $flatPolicyList.Values | Sort-Object -Property { $_.ordinal }, { $_.category }, { $_.displayName } | ForEach-Object -Process { - $currentOrdinal = $_.ordinal - if ($previousOrdinal -ne $currentOrdinal) { - $heading = Get-Effect -ordinal $currentOrdinal - $null = $linesAdded.Add("
`n$('#'*$headingLevel) $($heading)`n
`n") - $null = $linesAdded.Add("| Category | Initiative | Policy |") - $null = $linesAdded.Add("|----------|:----------:|--------|") - $previousOrdinal = $currentOrdinal - } - - $parameters = $_.parameters - $parameterFragments = "" - if ($parameters.Count -gt 0) { - $parameterFragments = "
" - foreach ($parameterName in $parameters.Keys) { - $parameter = $parameters.$parameterName - $displayName = $parameter.name - if ($parameter.displayName) { - $displayName = $parameter.displayName - } - $value = $parameter.value - if ($value -is [hashtable] -or $parameter -is [PSCustomObject]) { - $value = ConvertTo-Json $value -Compress - } - $parameterFragments += "
*$displayName=$value*" - } - } - $null = $linesAdded.Add("| $($_.category) | $($_.shortName) | **$($_.displayName)**
$($_.description)$($parameterFragments) |") - } - - #egion Emit Policy Tables by Effect - - } - - return $linesAdded -} \ No newline at end of file diff --git a/Scripts/Helpers/Confirm-InitiativeDefinitionUsedExists.ps1 b/Scripts/Helpers/Confirm-InitiativeDefinitionUsedExists.ps1 index 10991b04..85806871 100644 --- a/Scripts/Helpers/Confirm-InitiativeDefinitionUsedExists.ps1 +++ b/Scripts/Helpers/Confirm-InitiativeDefinitionUsedExists.ps1 @@ -14,7 +14,7 @@ function Confirm-InitiativeDefinitionUsedExists { $initiativeId = $null if (-not ($allInitiativeDefinitions.ContainsKey($initiativeNameRequired))) { - Write-Error "Referenced Initiative ""$($initiativeNameRequired)"" doesn't exist at the specified scope" + Write-Error "Referenced Initiative ""$($initiativeNameRequired)"" doesn't exist at the specified scope" -ErrorAction Stop $usingUndefinedReference = $true } else { diff --git a/Scripts/Helpers/Confirm-ObjectValueEqualityDeep.ps1 b/Scripts/Helpers/Confirm-ObjectValueEqualityDeep.ps1 index 9c3f4d5f..a549af1a 100644 --- a/Scripts/Helpers/Confirm-ObjectValueEqualityDeep.ps1 +++ b/Scripts/Helpers/Confirm-ObjectValueEqualityDeep.ps1 @@ -3,7 +3,7 @@ function Confirm-ObjectValueEqualityDeep { [CmdletBinding()] param( - $existingObj, + $existingObj, $definedObj ) @@ -38,7 +38,7 @@ function Confirm-ObjectValueEqualityDeep { return $false } } - # Does defined conatin additional items + # Does defined contain additional items return $definedHt.Count -lt 1 } elseif ($definedObj -is [array] -or $existingObj -is [array]) { diff --git a/Scripts/Helpers/Get-AssignmentDefinitions.ps1 b/Scripts/Helpers/Get-AssignmentDefinitions.ps1 new file mode 100644 index 00000000..95510818 --- /dev/null +++ b/Scripts/Helpers/Get-AssignmentDefinitions.ps1 @@ -0,0 +1,381 @@ +#Requires -PSEdition Core + +function Get-AssignmentDefinitions { + # Recursive Function + param( + [parameter(Mandatory = $True, + HelpMessage = "Prefetechetd tree of scopes starting at root scope")] + [hashtable] $scopeTreeInfo, + + [parameter(Mandatory = $True, + HelpMessage = "Selects the scope list for the environemt deployment")] + [string] $pacEnvironmentSelector, + + [parameter(Mandatory = $True, + HelpMessage = "Current node containing a definition fragment")] + [PSObject] $definitionNode, + + [parameter(Mandatory = $True, + HelpMessage = "The values collected so far in this tree")] + [hashtable] $assignmentDef + + # Returns a list os completed assignmentValues + ) + + # Each tree branch needs a private copy + $def = Get-DeepClone -InputObject $assignmentDef + + # Process mandatory nodeName + $nodeName = "" + if ($definitionNode.nodeName) { + $nodeName += $definitionNode.nodeName + $def.nodeName += $nodeName + $nodeName = + # ignore "comment" field + Write-Debug " nodePath = $($def.nodeName):" + } + else { + $nodeName = "$($def.nodeName)//Unknown//" + Write-Error " Missing nodename at child of $($def.nodeName)" + $def.hasErrors = $true + } + + if ($definitionNode.ignoreBranch) { + # ignoring a branch can be useful for prep work to an upcumming state + Write-Verbose " Ignore branch at $($def.nodeName) reason ignore branch" + $def.ignoreBranch = $definitionNode.ignoreBranch + } + # Process assignment name, displayName and description (need at least one per tree). Strings are concatenated + if ($definitionNode.assignment) { + $def.assignment.name += $definitionNode.assignment.name + $def.assignment.displayName += $definitionNode.assignment.displayName + $def.assignment.description += $definitionNode.assignment.description + Write-Debug " assignment = $($def.assignment | ConvertTo-Json -Depth 100)" + } + + # Process name of Policy or Initiative + if ($definitionNode.definitionEntry) { + if ($def.definitionEntry) { + Write-Error " Node $($nodeName): multiple Policy/Initiative definitionEntry or definitionEntryList are not allowed.`n Previous definitionEntry=$($def.definitionEntry | ConvertTo-Json -Compress)`n Current definitionEntry=$($definitionNode.definitionEntry | ConvertTo-Json -Compress)" + $def.hasErrors = $true + } + elseif ($def.definitionEntryList) { + Write-Error " Node $($nodeName): multiple Policy/Initiative definitionEntry or definitionEntryList are not allowed.`n Previous definitionEntryList=$($def.definitionEntryList | ConvertTo-Json -Compress)`n Current definitionEntry=$($definitionNode.definitionEntry | ConvertTo-Json -Compress)" + $def.hasErrors = $true + } + else { + # Can contain one or more items at ONE level + $def.definitionEntry = $definitionNode.definitionEntry + Write-Debug " definitionEntry = $($def.definitionEntry | ConvertTo-Json -Depth 100)" + } + } + + # Process name of Policy or Initiative + if ($definitionNode.definitionEntryList) { + if ($def.definitionEntry) { + Write-Error " Node $($nodeName): multiple Policy/Initiative definitionEntry or definitionEntryList are not allowed.`n Previous definitionEntry=$($def.definitionEntry | ConvertTo-Json -Compress)`n Current definitionEntryList=$($definitionNode.definitionEntryList | ConvertTo-Json -Compress)" + $def.hasErrors = $true + } + elseif ($def.definitionEntryList) { + Write-Error " Node $($nodeName): multiple Policy/Initiative definitionEntry or definitionEntryList are not allowed.`n Previous definitionEntryList=$($def.definitionEntryList | ConvertTo-Json -Compress)`n Current definitionEntry=$($definitionNode.definitionEntryList | ConvertTo-Json -Compress)" + $def.hasErrors = $true + } + else { + # Can contain one or more items at ONE level + $def.definitionEntryList = $definitionNode.definitionEntryList + Write-Debug " definitionEntryList = $($def.definitionEntryList | ConvertTo-Json -Depth 100)" + } + } + + # Process meta data + if ($definitionNode.metadata) { + if ($def.metadata) { + Write-Error " Node $($nodeName): multiple metadata definitions at different tree levels are not allowed" + $def.hasErrors = $true + } + else { + # Can contain one or more items at ONE level + $def.metadata = $definitionNode.metadata + Write-Debug " metadata = $($def.metadata)" + } + } + + # Process enforcementMode + if ($definitionNode.enforcementMode) { + $enforcementMode = $definitionNode.enforcementMode + if ("Default", "DoNotEnforce" -contains $enforcementMode) { + $def.enforcementMode = $enforcementMode + } + else { + Write-Error " Node $($nodeName): enforcementMode must be Default or DoNotEnforce. It is ""$($enforcementMode)." + $def.hasErrors = $true + } + } + + # Process parameters; parameters defined at a deeper level override previous parameters (union operator) + if ($definitionNode.parameters) { + $inheritedParameters = $def.parameters + $addedParameters = $definitionNode.parameters + Write-Debug " parameters inherited $($inheritedParameters | ConvertTo-Json -Depth 100)" + Write-Debug " parameters at node $($addedParameters | ConvertTo-Json -Depth 100)" + foreach ($parameterName in $addedParameters.Keys) { + $parameterValue = $addedParameters.$parameterName + if ($inheritedParameters.ContainsKey($parameterName)) { + $def.parameters[$parameterName] = $parameterValue + } + else { + $def.parameters.Add($parameterName, $parameterValue) + } + } + Write-Debug " parameters = $($def.parameters.Count)" + } + + # Process additional permissions needed to execute remediations; for example permissions to log to Event Hub, Storgae Account or Log Analytics + # Entries are cumulative (added to an array) + if ($definitionNode.additionalRoleAssignments) { + $additionalRoleAssignments = $definitionNode.additionalRoleAssignments + Write-Debug " additionalRoleAssignments at node $($additionalRoleAssignments | ConvertTo-Json -Depth 100)" + foreach ($selector in $additionalRoleAssignments.Keys) { + if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { + $additionalRoleAssignmentsList = $additionalRoleAssignments.$selector + if ($def.additionalRoleAssignments) { + $def.additionalRoleAssignments += $additionalRoleAssignmentsList + } + else { + $def.additionalRoleAssignments = @() + $additionalRoleAssignmentsList + } + } + } + } + + if ($definitionNode.managedIdentityLocation) { + $managedIdentityLocationValue = $null + $managedIdentityLocation = $definitionNode.managedIdentityLocation + foreach ($selector in $managedIdentityLocation.Keys) { + if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { + $managedIdentityLocationValue = $managedIdentityLocation.$selector + break + } + } + if ($null -ne $managedIdentityLocationValue) { + $def.managedIdentityLocation = $managedIdentityLocationValue + } + } + + if ($def.scopeCollection) { + # Once a scopeList is defined at a parent, no descendant may define scopeList or notScope + if ($definitionNode.scope) { + Write-Error " Node $($nodeName): multiple ScopeList definition at different tree levels are not allowed" + $def.hasErrors = $true + } + if ($definitionNode.notScope) { + Write-Error " Node $($nodeName): detected notScope definition in in a child node when the scope was already defined" + $def.hasErrors = $true + } + } + else { + # may define notScope + if ($definitionNode.notScope) { + $notScope = $definitionNode.notScope + Write-Debug " notScope defined at $($nodeName) = $($notScope | ConvertTo-Json -Depth 100)" + foreach ($selector in $notScope.Keys) { + if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { + $notScopeList = $notScope.$selector + if ($def.notScope) { + $def.notScope += $notScopeList + } + else { + $def.notScope = @() + $notScopeList + } + } + } + } + + if ($definitionNode.scope) { + ## Found a scope list - process notScope + $scopeList = $null + $scope = $definitionNode.scope + foreach ($selector in $scope.Keys) { + if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { + $scopeList = @() + $scope.$selector + break + } + } + if ($null -eq $scopeList) { + # This branch does not have a scope for this assignmetSelector; ignore branch + $def.hasOnlyNotSelectedEnvironments = $true + } + else { + Write-Debug " scopeList = $($scopeList | ConvertTo-Json -Depth 100)" + if ($def.notScope) { + $uniqueNotScope = @() + ($def.notScope | Sort-Object | Get-Unique) + Write-Debug " Get-NotScope" + $def.scopeCollection = Get-NotScope -scopeList $scopeList -notScope $uniqueNotScope -scopeTreeInfo $scopeTreeInfo + } + else { + $def.scopeCollection = @() + foreach ($scope in $scopeList) { + $def.scopeCollection += @{ + scope = $scope + notScope = @() + } + } + } + } + } + } + + $defList = @() + if ($definitionNode.children) { + # Process child nodes + Write-Debug " $($definitionNode.children.Count) children below at $($nodeName)" + foreach ($child in $definitionNode.children) { + $defList += Get-AssignmentDefinitions ` + -scopeTreeInfo $scopeTreeInfo ` + -definitionNode $child ` + -assignmentDef $def ` + -pacEnvironmentSelector $pacEnvironmentSelector + } + } + else { + # Arrived at a leaf node - return the values colelcted in this branch after checking validity + + if (-not $def.ignoreBranch) { + + # Start assembling Assignment name, displayName and description + $name = "" + $displayName = "" + $description = "" + if ($def.assignment) { + $assignment = $def.assignment + $name = $assignment.name + $displayName = $assignment.displayName + $description = $assignment.description + } + + # Must contain a definitionEntry or definitionEntryList + $definitionEntry = $def.definitionEntry + $definitionEntryList = $def.definitionEntryList + $policyAssignmentList = @() + if ($definitionEntry) { + if ($name.Length -eq 0 -or $displayName.Length -eq 0) { + Write-Error " Leaf Node $($nodeName): each tree branch must specify an Assignment with a name and a displayName.`n name=$name`n displayName=$displayName" + $def.hasErrors = $true + } + $initiativeName = $definitionEntry.initiativeName + $policyName = $definitionEntry.policyName + $friendlyNameToDocumentIfGuid = $definitionEntry.friendlyNameToDocumentIfGuid + if ($definitionEntry.initiativeName -xor $definitionEntry.policyName) { + $policyAssignmentEntry = @{ + assignment = @{ + name = $name + displayName = $displayName + description = $description + } + } + if ($initiativeName) { + $policyAssignmentEntry.Add("initiativeName", $initiativeName) + } + elseif ($policyName) { + $policyAssignmentEntry.Add("policyName", $policyName) + } + if ($friendlyNameToDocumentIfGuid) { + $policyAssignmentEntry.Add("friendlyNameToDocumentIfGuid", $friendlyNameToDocumentIfGuid) + } + $policyAssignmentList += $policyAssignmentEntry + } + else { + Write-Error " Leaf Node $($nodeName): each tree branch must define a definitionEntry with either an initiativeName or a policyName.`n $($definitionEntry | ConvertTo-Json -Compress)" + $def.hasErrors = $true + } + } + elseif ($definitionEntryList -and $definitionEntryList.Count -gt 0) { + foreach ($definitionEntry in $definitionEntryList) { + $finalName = "" + $finalDisplayName = "" + $finalDescription = "" + $assignmentOk = $false + if ($definitionEntry.assignment) { + $localAssignment = $definitionEntry.assignment + $localName = "" + $localDisplayName = "" + $localDescription = "" + $append = $false + if ($localAssignment.name) { + $localName = $localAssignment.name + } + if ($localAssignment.displayName) { + $localDisplayName = $localAssignment.displayName + } + if ($localAssignment.description) { + $localDescription = $localAssignment.description + } + if ($localAssignment.append) { + $append = $localAssignment.append + } + if ($localName.Length -gt 0 -and $localDisplayName.Length -gt 0) { + $assignmentOk = $true + } + if ($append) { + $finalName = $name + $localName + $finalDisplayName = $displayName + $localDisplayName + $finalDescription = $description + $localDescription + } + else { + $finalName = $localName + $name + $finalDisplayName = $localDisplayName + $displayName + $finalDescription = $localDescription + $description + } + } + if (-not $assignmentOk) { + Write-Error " Leaf Node $($nodeName): each definitionEntry in a definitionEntryList must specify an Assignment with a name and a displayName.`n name=$localName`n displayName=$localDisplayName" + $def.hasErrors = $true + } + + $initiativeName = $definitionEntry.initiativeName + $policyName = $definitionEntry.policyName + $friendlyNameToDocumentIfGuid = $definitionEntry.friendlyNameToDocumentIfGuid + if ($definitionEntry.initiativeName -xor $definitionEntry.policyName) { + $policyAssignmentEntry = @{ + assignment = @{ + name = $finalName + displayName = $finalDisplayName + description = $finalDescription + } + } + if ($initiativeName) { + $policyAssignmentEntry.Add("initiativeName", $initiativeName) + } + if ($policyName) { + $policyAssignmentEntry.Add("policyName", $policyName) + } + if ($friendlyNameToDocumentIfGuid) { + $policyAssignmentEntry.Add("friendlyNameToDocumentIfGuid", $friendlyNameToDocumentIfGuid) + } + $policyAssignmentList += $policyAssignmentEntry + } + else { + Write-Error " Leaf Node $($nodeName): each definitionEntry in a definitionEntryList must specify either an initiativeName or a policyName.`n $($definitionEntry | ConvertTo-Json -Compress)" + $def.hasErrors = $true + } + } + } + else { + Write-Error " Leaf Node $($nodeName): each tree branch must define either a definitionEntry or a non-empty definitionEntryList." + $def.hasErrors = $true + } + $def.policyAssignmentList = $policyAssignmentList + + # Must contain one scopeCollection + if (-not ($def.hasOnlyNotSelectedEnvironments -or $null -ne $def.scopeCollection)) { + Write-Error " Leaf Node $($nodeName): each tree branch requires excactly one scope definition." + $def.hasErrors = $true + } + $defList += $def + } + else { + Write-Information " Leaf Node $($nodeName): tree branch ignored (ignoreBranch)" + } + } + return , $defList +} diff --git a/Scripts/Helpers/Get-AssignmentDefs.ps1 b/Scripts/Helpers/Get-AssignmentDefs.ps1 deleted file mode 100644 index d283eb4c..00000000 --- a/Scripts/Helpers/Get-AssignmentDefs.ps1 +++ /dev/null @@ -1,218 +0,0 @@ -#Requires -PSEdition Core - -function Get-AssignmentDefs { - # Recursive Function - param( - [parameter(Mandatory = $True, - HelpMessage = "Prefetechetd tree of scopes starting at root scope")] - [hashtable] $scopeTreeInfo, - - [parameter(Mandatory = $True, - HelpMessage = "Selects the scope list for the environemt deployment")] - [string] $pacEnvironmentSelector, - - [parameter(Mandatory = $True, - HelpMessage = "Current node containing a definition fragment")] - [PSObject] $definitionNode, - - [parameter(Mandatory = $True, - HelpMessage = "The values collected so far in this tree")] - [hashtable] $assignmentDef - - # Returns a list os completed assignmentValues - ) - - # Each tree branch needs a private copy - $def = Get-DeepClone -InputObject $assignmentDef - - # Process mandatory nodeName - if ($definitionNode.nodeName) { - $def.nodeName += $definitionNode.nodeName - # ignore "comment" field - Write-Debug " nodePath = $($def.nodeName):" - } - else { - Write-Error "Missing nodename at child" - $def.hasErrors = $true - } - - if ($definitionNode.ignoreBranch) { - # ignoring a branch can be useful for prep work to an upcumming state - Write-Verbose " Ignore branch at $($def.nodeName) reason ignore branch" - $def.ignoreBranch = $definitionNode.ignoreBranch - } - # Process assignment name, displayName and description (need at least one per tree). Strings are concatenated - if ($definitionNode.assignment) { - $def.assignment.name += $definitionNode.assignment.Name - $def.assignment.displayName += $definitionNode.assignment.displayName - $def.assignment.description += $definitionNode.assignment.description - Write-Debug " assignment = $($def.assignment | ConvertTo-Json -Depth 100)" - } - - # Process name of Policy or Initiative - if ($definitionNode.definitionEntry) { - if ($def.definitionEntry) { - Write-Error "Node $($values.nodeName): multiple Policy/Initiative definition at different tree levels are not allowed" - $def.hasErrors = $true - } - else { - # Can contain one or more items at ONE level - $def.definitionEntry = $definitionNode.definitionEntry - Write-Debug " definitionEntry = $($def.definitionEntry | ConvertTo-Json -Depth 100)" - } - } - - # Process meta data - if ($definitionNode.metadata) { - if ($def.metadata) { - Write-Error "Node $($def.nodeName): multiple metadata definitions at different tree levels are not allowed" - $def.hasErrors = $true - } - else { - # Can contain one or more items at ONE level - $def.metadata = $definitionNode.metadata - Write-Debug " metadata = $($def.metadata)" - } - } - - # Process enforcementMode - if ($definitionNode.enforcementMode) { - $enforcementMode = $definitionNode.enforcementMode - if ("Default", "DoNotEnforce" -contains $enforcementMode) { - $def.enforcementMode = $enforcementMode - } - else { - Write-Error "Node $($def.nodeName): enforcementMode must be Default or DoNotEnforce. It is ""$($enforcementMode)." - $def.hasErrors = $true - } - } - - # Process parameters; parameters defined at a deeper level override previous parameters (union operator) - if ($definitionNode.parameters) { - Write-Debug " parameters inherited $($def.parameters | ConvertTo-Json -Depth 100)" - Write-Debug " parameters at node $($definitionNode.parameters | ConvertTo-Json -Depth 100)" - foreach ($definedParameterAtNode in $definitionNode.parameters.psobject.Properties) { - $parameterName = $definedParameterAtNode.Name - $def.parameters[$parameterName] = $definedParameterAtNode.Value - } - Write-Debug " parameters = $($def.parameters.Count)" - } - - # Process additional permissions needed to execute remediations; for example permissions to log to Event Hub, Storgae Account or Log Analytics - # Entries are cumulative (added to an array) - if ($definitionNode.additionalRoleAssignments) { - Write-Debug " additionalRoleAssignments at node $($definitionNode.additionalRoleAssignments | ConvertTo-Json -Depth 100)" - foreach ($possibleAdditionalRoleAssignment in $definitionNode.additionalRoleAssignments.psobject.Properties) { - $selector = $possibleAdditionalRoleAssignment.Name - if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { - if ($def.additionalRoleAssignments) { - $def.additionalRoleAssignments += $possibleAdditionalRoleAssignment.Value - } - else { - $def.additionalRoleAssignments = @() + $possibleAdditionalRoleAssignment.Value - } - } - } - } - - if ($definitionNode.managedIdentityLocation) { - $managedIdentityLocation = $null - foreach ($possibleManagedIdentityLocation in $definitionNode.managedIdentityLocation.psobject.Properties) { - $selector = $possibleManagedIdentityLocation.Name - if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { - $managedIdentityLocation = $possibleManagedIdentityLocation.Value - break - } - } - if ($null -ne $managedIdentityLocation) { - $def.managedIdentityLocation = $managedIdentityLocation - } - } - - if ($def.scopeCollection) { - # Once a scopeList is defined at a parent, no descendant may define scopeList or notScope - if ($definitionNode.scope) { - Write-Error "Node $($values.nodeName): multiple ScopeList definition at different tree levels are not allowed" - $def.hasErrors = $true - } - if ($definitionNode.notScope) { - Write-Error "Node $($values.nodeName): detected notScope definition in in a child node when the scope was already defined" - $def.hasErrors = $true - } - } - else { - # may define notScope - if ($definitionNode.notScope) { - Write-Debug " notScope defined at $($def.nodeName) = $($definitionNode.notScope | ConvertTo-Json -Depth 100)" - foreach ($possibleNotScopeList in $definitionNode.notScope.psobject.Properties) { - $selector = $possibleNotScopeList.Name - if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { - if ($def.notScope) { - $def.notScope += $possibleNotScopeList.Value - } - else { - $def.notScope = @() + $possibleNotScopeList.Value - } - } - } - } - - if ($definitionNode.scope) { - ## Found a scope list - process notScope - $scopeList = $null - foreach ($possibleScopeList in $definitionNode.scope.psobject.Properties) { - $selector = $possibleScopeList.Name - if ($selector -eq "*" -or $selector -eq $pacEnvironmentSelector) { - $scopeList = @() + $possibleScopeList.Value - break - } - } - if ($null -eq $scopeList) { - # This branch does not have a scope for this assignmetSelector; ignore branch - $def.hasOnlyNotSelectedEnvironments = $true - } - else { - Write-Debug " scopeList = $($scopeList | ConvertTo-Json -Depth 100)" - if ($def.notScope) { - $uniqueNotScope = @() + ($def.notScope | Sort-Object | Get-Unique) - Write-Debug " Get-NotScope" - $def.scopeCollection = Get-NotScope -scopeList $scopeList -notScope $uniqueNotScope -scopeTreeInfo $scopeTreeInfo - } - else { - $def.scopeCollection = @() - foreach ($scope in $scopeList) { - $def.scopeCollection += @{ - scope = $scope - notScope = @() - } - } - } - } - } - } - - $defList = @() - if ($definitionNode.children) { - # Process child nodes - Write-Debug " $($definitionNode.children.Count) children below at $($def.nodeName)" - foreach ($child in $definitionNode.children) { - $defList += Get-AssignmentDefs ` - -scopeTreeInfo $scopeTreeInfo ` - -definitionNode $child ` - -assignmentDef $def ` - -pacEnvironmentSelector $pacEnvironmentSelector - } - } - else { - # Arrived at a leaf node - return the values colelcted in this branch - - # Must contain one scope - if (-not ($null -ne $def.scopeCollection -or $def.hasOnlyNotSelectedEnvironments -or $def.ignoreBranch)) { - Write-Error "Node $($values.nodeName): no scope defined in tree - requires excactly one scope definition in each tree branch" - $def.hasErrors = $true - } - - $defList += $def - } - return , $defList -} diff --git a/Scripts/Helpers/Get-AzAssignmentsAtScopeRecursive.ps1 b/Scripts/Helpers/Get-AzAssignmentsAtScopeRecursive.ps1 index 899c787a..c89b55b6 100644 --- a/Scripts/Helpers/Get-AzAssignmentsAtScopeRecursive.ps1 +++ b/Scripts/Helpers/Get-AzAssignmentsAtScopeRecursive.ps1 @@ -284,8 +284,10 @@ function Get-AzAssignmentsAtSpecificScope { if ($description -and $description -ne "") { $exemption.Add("description", $description) } - if ($expiresOn -and $expiresOn -ne "") { - $exemption.Add("expiresOn", $expiresOn) + if ($expiresOn) { + $expiresOnUtc = $expiresOn.ToUniversalTime() + $exemption.Add("expiresOn", $expiresOnUtc) + } if ($policyDefinitionReferenceIds -and $policyDefinitionReferenceIds.Count -gt 0) { $exemption.Add("policyDefinitionReferenceIds", $policyDefinitionReferenceIds) diff --git a/Scripts/Helpers/Invoke-AzCli.ps1 b/Scripts/Helpers/Invoke-AzCli.ps1 index 7ea4bc69..84b1c6a0 100644 --- a/Scripts/Helpers/Invoke-AzCli.ps1 +++ b/Scripts/Helpers/Invoke-AzCli.ps1 @@ -193,7 +193,7 @@ function Invoke-AzCli { $result = "" try { - $result = az @Arguments @splatArguments @additionalArguments --only-show-errors + $result = az @Arguments @splatArguments @additionalArguments --only-show-errors --output json if (!$?) { throw "Command 'az $Arguments $splatArguments' command exited with error" } diff --git a/Scripts/Helpers/Write-AssignmentDetails.ps1 b/Scripts/Helpers/Write-AssignmentDetails.ps1 new file mode 100644 index 00000000..4c74b3b1 --- /dev/null +++ b/Scripts/Helpers/Write-AssignmentDetails.ps1 @@ -0,0 +1,27 @@ +#Requires -PSEdition Core + +function Write-AssignmentDetails { + [CmdletBinding()] + param ( + $printHeader, + $assignmentName, + $assignmentDisplayName, + $assignmentDescription, + $policySpecText, + $scopeInfo, + $roleDefinitions, + $prefix + ) + + if ($printHeader) { + Write-Information " Assignment `'$($assignmentDisplayName)`' ($($assignmentName))" + Write-Information " Description: $($assignmentDescription)" + Write-Information " $($policySpecText)" + } + Write-Information " $($prefix) at $($scopeInfo.scope)" + # if ($roleDefinitions.Length -gt 0) { + # foreach ($roleDefinition in $roleDefinitions) { + # Write-Information " RoleId=$($roleDefinition.roleDefinitionId), Scope=$($roleDefinition.scope)" + # } + # } +} diff --git a/Scripts/Operations/New-AzPolicyReaderRole.ps1 b/Scripts/Operations/New-AzPolicyReaderRole.ps1 index 780310e9..14c64a97 100644 --- a/Scripts/Operations/New-AzPolicyReaderRole.ps1 +++ b/Scripts/Operations/New-AzPolicyReaderRole.ps1 @@ -31,9 +31,13 @@ $role.Id = '2baa1a7c-6807-46af-8b16-5e9d03fba029' $role.Description = 'Read access to Azure Policy.' $role.IsCustom = $true $perms = @( - "Microsoft.Authorization/policyAssignments/read", - "Microsoft.Authorization/policyDefinitions/read", - "Microsoft.Authorization/policySetDefinitions/read" + "*/read", + "Microsoft.Authorization/policyassignments/read", + "Microsoft.Authorization/policydefinitions/read", + "Microsoft.Authorization/policyexemptions/read", + "Microsoft.Authorization/policysetdefinitions/read", + "Microsoft.PolicyInsights/*", + "Microsoft.Support/*" ) $role.Actions = $perms diff --git a/StarterKit/Definitions/Assignments/allowed-locations-assignments.jsonc b/StarterKit/Definitions/Assignments/allowed-locations-assignments.jsonc index e07455a2..fc5c6fbc 100644 --- a/StarterKit/Definitions/Assignments/allowed-locations-assignments.jsonc +++ b/StarterKit/Definitions/Assignments/allowed-locations-assignments.jsonc @@ -1,7 +1,7 @@ { "nodeName": "/Loc/", "assignment": { - "Name": "Allowed Locations", + "name": "allowed-locations", "displayName": "Allowed Locations", "description": "Sets the allowed locations" }, @@ -15,13 +15,13 @@ ] }, "scope": { - "dev": [ - "/providers/Microsoft.Management/managementGroups/PAC-Dev" + "epac-dev": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Dev" ], - "test": [ - "/providers/Microsoft.Management/managementGroups/PAC-Test" + "epac-test": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Test" ], - "tenant1": [ + "tenant": [ "/providers/Microsoft.Management/managementGroups/Contoso-Root" ] } diff --git a/StarterKit/Definitions/Assignments/security-baseline-assignments.jsonc b/StarterKit/Definitions/Assignments/security-baseline-assignments.jsonc index ec8c5e2a..2098f7aa 100644 --- a/StarterKit/Definitions/Assignments/security-baseline-assignments.jsonc +++ b/StarterKit/Definitions/Assignments/security-baseline-assignments.jsonc @@ -1,14 +1,41 @@ { // Security Baseline for Org (Azure Security Benchmark & Org Delta from Azure Security Benchmark Initiative "nodeName": "/Security/", + "definitionEntryList": [ + { + "initiativeName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "friendlyNameToDocumentIfGuid": "Azure Security Benchmark", + "assignment": { + "append": true, + "name": "asb", + "displayName": "Azure Security Benchmark", + "description": "Azure Security Benchmark Initiative." + } + }, + { + "initiativeName": "179d1daa-458f-4e47-8086-2a68d0d6c38f", + "friendlyNameToDocumentIfGuid": "NIST SP 800-53 Rev. 5", + "assignment": { + "append": true, + "name": "nist-800-53-r5", + "displayName": "NIST SP 800-53 Rev. 5", + "description": "NIST SP 800-53 Rev. 5 Initiative." + } + } + ], "children": [ { "nodeName": "Prod/", + "assignment": { + "name": "pr-", + "displayName": "Prod ", + "description": "Prod Environment controls enforcement with " + }, "scope": { - "test": [ - "/providers/Microsoft.Management/managementGroups/PAC-Test" + "epac-test": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Test" ], - "tenant1": [ + "tenant": [ "/providers/Microsoft.Management/managementGroups/Contoso-Prod" ] }, @@ -21,2649 +48,24 @@ "keyVaultsShouldHaveSoftDeleteEnabledMonitoringEffect": "Deny", "keyVaultsShouldHavePurgeProtectionEnabledMonitoringEffect": "Deny", "webApplicationFirewallShouldBeEnabledForAzureFrontDoorServiceServiceMonitoringEffect": "Deny", - "azureSpringCloudShouldUseNetworkInjectionMonitoringEffect": "Deny", - }, - "children": [ - { - "nodeName": "azure-security-benchmark", - "assignment": { - "name": "pr-asb", - "displayName": "Prod Azure Security Benchmark", - "description": "ASB Initiative parameterized for controlling Prod Environments" - }, - "definitionEntry": { - "initiativeName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - "friendlyNameToDocumentIfGuid": "Azure Security Benchmark" - } - }, - { - "nodeName": "nist-800-53-r5", - "assignment": { - "name": "pr-nist-800-53-r5", - "displayName": "Prod NIST SP 800-53 Rev. 5", - "description": "NIST SP 800-53 Rev. 5 Initiative parameterized for controlling Prod Environments" - }, - "definitionEntry": { - "initiativeName": "179d1daa-458f-4e47-8086-2a68d0d6c38f", - "friendlyNameToDocumentIfGuid": "NIST SP 800-53 Rev. 5" - } - } - ] + "azureSpringCloudShouldUseNetworkInjectionMonitoringEffect": "Deny" + } }, { "nodeName": "NonProd/", + "assignment": { + "name": "np-", + "displayName": "NonProd ", + "description": "NonProd Environment controls enforcement with " + }, "scope": { - "dev": [ - "/providers/Microsoft.Management/managementGroups/PAC-Dev" + "epac-dev": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Dev" ], - "tenant1": [ + "tenant": [ "/providers/Microsoft.Management/managementGroups/Contoso-NonProd" ] - }, - "children": [ - { - "nodeName": "azure-security-benchmark", - "assignment": { - "name": "np-asb", - "displayName": "NonProd Azure Security Benchmark", - "description": "ASB Initiative parameterized for controlling NonProd Environments" - }, - "definitionEntry": { - "initiativeName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", - "friendlyNameToDocumentIfGuid": "Azure Security Benchmark" - } - }, - { - "nodeName": "nist-800-53-r5", - "assignment": { - "name": "np-nist-800-53-r5", - "displayName": "NonProd NIST SP 800-53 Rev. 5", - "description": "NIST SP 800-53 Rev. 5 Initiative parameterized for controlling NonProd Environments" - }, - "definitionEntry": { - "initiativeName": "179d1daa-458f-4e47-8086-2a68d0d6c38f", - "friendlyNameToDocumentIfGuid": "NIST SP 800-53 Rev. 5" - } - } - ] + } } - ], - "parameters": { - // ============================================================================================================================= - // Common settings - // ============================================================================================================================= - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'API for FHIR' Policy: 'Azure API for FHIR should use a customer-managed key to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'API for FHIR' Policy: 'Azure API for FHIR should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'API Management' Policy: 'API Management services should use a virtual network' - // ----------------------------------------------------------------------------------------------------------------------------- - "aPIManagementServicesShouldUseAVirtualNetworkEvaluatedSkuNames": [ - "Developer", - "Premium" - ], - // Allowed Values = ["Developer","Basic","Standard","Premium","Consumption"] - // 'Azure Security Benchmark': effect default = Audit - "aPIManagementServicesShouldUseAVirtualNetworkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "evaluatedSkuNames-ef619a2c-cc4d-4d03-b2ba-8c94a834d85b": [ - "Developer", - "Premium" - ], - // Allowed Values = ["Developer","Basic","Standard","Premium","Consumption"] - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Configuration' Policy: 'App Configuration should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "appConfigurationShouldUsePrivateLinkMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Platform' Policy: 'Azure Spring Cloud should use network injection' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-af35e2a4-ef96-44e7-a9ae-853dd97032c4": "Audit", - // Allowed Values = ["Audit","Disabled","Deny"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "azureSpringCloudShouldUseNetworkInjectionMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "evaluatedSkuNames-af35e2a4-ef96-44e7-a9ae-853dd97032c4": [ - "Standard" - ], - // Allowed Values = "Standard" - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'App Service apps should only be accessible over HTTPS' - // ----------------------------------------------------------------------------------------------------------------------------- - "webAppEnforceHttpsMonitoringEffectV2": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'App Service Environment should enable internal encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'CORS should not allow every resource to access your API App' - // ----------------------------------------------------------------------------------------------------------------------------- - "apiAppRestrictCORSAccessMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'CORS should not allow every resource to access your Function Apps' - // ----------------------------------------------------------------------------------------------------------------------------- - "functionAppRestrictCORSAccessMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'CORS should not allow every resource to access your Web Applications' - // ----------------------------------------------------------------------------------------------------------------------------- - "webAppRestrictCORSAccessMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure API app has 'Client Certificates (Incoming client certificates)' set to 'On'' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureAPIAppHasClientCertificatesIncomingClientCertificatesSetToOnMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'HTTP Version' is the latest, if used to run the API app' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'HTTP Version' is the latest, if used to run the Function app' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'HTTP Version' is the latest, if used to run the Web app' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'Java version' is the latest, if used as a part of the API app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatJavaVersionIsTheLatestIfUsedAsAPartOfTheApiAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'Java version' is the latest, if used as a part of the Function app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatJavaVersionIsTheLatestIfUsedAsAPartOfTheFunctionAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'Java version' is the latest, if used as a part of the Web app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatJavaVersionIsTheLatestIfUsedAsAPartOfTheWebAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'PHP version' is the latest, if used as a part of the API app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatPHPVersionIsTheLatestIfUsedAsAPartOfTheApiAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'PHP version' is the latest, if used as a part of the WEB app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatPHPVersionIsTheLatestIfUsedAsAPartOfTheWEBAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'Python version' is the latest, if used as a part of the API app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatPythonVersionIsTheLatestIfUsedAsAPartOfTheApiAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'Python version' is the latest, if used as a part of the Function app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatPythonVersionIsTheLatestIfUsedAsAPartOfTheFunctionAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure that 'Python version' is the latest, if used as a part of the Web app' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureThatPythonVersionIsTheLatestIfUsedAsAPartOfTheWebAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Ensure WEB app has 'Client Certificates (Incoming client certificates)' set to 'On'' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureWEBAppHasClientCertificatesIncomingClientCertificatesSetToOnMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'FTPS only should be required in your API App' - // ----------------------------------------------------------------------------------------------------------------------------- - "fTPSOnlyShouldBeRequiredInYourAPIAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'FTPS only should be required in your Function App' - // ----------------------------------------------------------------------------------------------------------------------------- - "fTPSOnlyShouldBeRequiredInYourFunctionAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'FTPS should be required in your Web App' - // ----------------------------------------------------------------------------------------------------------------------------- - "fTPSShouldBeRequiredInYourWebAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Function apps should have 'Client Certificates (Incoming client certificates)' enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "functionAppsShouldHaveClientCertificatesEnabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Function apps should only be accessible over HTTPS' - // ----------------------------------------------------------------------------------------------------------------------------- - "functionAppEnforceHttpsMonitoringEffectV2": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Latest TLS version should be used in your API App' - // ----------------------------------------------------------------------------------------------------------------------------- - "latestTLSVersionShouldBeUsedInYourAPIAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Latest TLS version should be used in your Function App' - // ----------------------------------------------------------------------------------------------------------------------------- - "latestTLSVersionShouldBeUsedInYourFunctionAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Latest TLS version should be used in your Web App' - // ----------------------------------------------------------------------------------------------------------------------------- - "latestTLSVersionShouldBeUsedInYourWebAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Managed identity should be used in your API App' - // ----------------------------------------------------------------------------------------------------------------------------- - "managedIdentityShouldBeUsedInYourAPIAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Managed identity should be used in your Function App' - // ----------------------------------------------------------------------------------------------------------------------------- - "managedIdentityShouldBeUsedInYourFunctionAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Managed identity should be used in your Web App' - // ----------------------------------------------------------------------------------------------------------------------------- - "managedIdentityShouldBeUsedInYourWebAppMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Remote debugging should be turned off for API Apps' - // ----------------------------------------------------------------------------------------------------------------------------- - "apiAppDisableRemoteDebuggingMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Remote debugging should be turned off for Function Apps' - // ----------------------------------------------------------------------------------------------------------------------------- - "functionAppDisableRemoteDebuggingMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Remote debugging should be turned off for Web Applications' - // ----------------------------------------------------------------------------------------------------------------------------- - "webAppDisableRemoteDebuggingMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'App Service' Policy: 'Resource logs in App Services should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "diagnosticLogsInAppServicesShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Automation' Policy: 'Automation account variables should be encrypted' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-3657f5a0-770e-44a3-b44e-9431ba1e9735": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "encryptionOfAutomationAccountMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Automation' Policy: 'Azure Automation accounts should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-56a5ee18-2ae6-4810-86f7-18e39ce5629b": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Azure Data Explorer' Policy: 'Azure Data Explorer encryption at rest should use a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-81e74cea-30fd-40d5-802f-d72103c2aaaa": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Azure Data Explorer' Policy: 'Disk encryption should be enabled on Azure Data Explorer' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-f4b53539-8df9-40e4-86c6-6b607703bd4e": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Azure Data Explorer' Policy: 'Double encryption should be enabled on Azure Data Explorer' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-ec068d99-e9c7-401f-8cef-5bdde4e6ccf1": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Azure Stack Edge' Policy: 'Azure Stack Edge devices should use double-encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-b4ac1030-89c5-4697-8e00-28b5ba6a8811": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Backup' Policy: '[Preview]: Azure Recovery Services vaults should use customer-managed keys for encrypting backup data' - // ----------------------------------------------------------------------------------------------------------------------------- - "enableDoubleEncryption-2e94d99a-8a36-4563-bc77-810d8893b671": true, - // Allowed Values = [true,false] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "effect-2e94d99a-8a36-4563-bc77-810d8893b671": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Backup' Policy: 'Azure Backup should be enabled for Virtual Machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureBackupShouldBeEnabledForVirtualMachinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Batch' Policy: 'Azure Batch account should use customer-managed keys to encrypt data' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-99e9ccd8-3db9-4592-b0d1-14b1715a4d8a": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Batch' Policy: 'Resource logs in Batch accounts should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInBatchAccountRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInBatchAccountMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Bot Service' Policy: 'Bot Service should be encrypted with a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-51522a96-0869-4791-82f3-981000c2c67f": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cache' Policy: 'Azure Cache for Redis should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureCacheForRedisShouldUsePrivateEndpointMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cache' Policy: 'Only secure connections to your Azure Cache for Redis should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-22bee202-a82f-4305-9a2a-6d7f44d4dedb": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "diagnosticsLogsInRedisCacheMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cognitive Services' Policy: 'Cognitive Services accounts should disable public network access' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-0725b4dd-7e76-479c-a735-68e7ee23d5ca": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "publicNetworkAccessShouldBeDisabledForCognitiveServicesAccountsMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cognitive Services' Policy: 'Cognitive Services accounts should enable data encryption with a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-67121cc7-ff39-4ab8-b7e3-95b84dab487d": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "cognitiveServicesAccountsShouldEnableDataEncryptionWithACustomerManagedKeyMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cognitive Services' Policy: 'Cognitive Services accounts should have local authentication methods disabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-71ef260a-8f18-47b7-abcb-62d0673d94dc": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cognitive Services' Policy: 'Cognitive Services accounts should restrict network access' - // ----------------------------------------------------------------------------------------------------------------------------- - "cognitiveServicesAccountsShouldRestrictNetworkAccessMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-037eea7a-bd0a-46c5-9a66-03aea78705d3": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cognitive Services' Policy: 'Cognitive Services should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'Audit virtual machines without disaster recovery configured' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = auditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'Disk access resources should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'Managed disks should be double encrypted with both platform-managed and customer-managed keys' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-ca91455f-eace-4f96-be59-e6e2c35b4816": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'OS and data disks should be encrypted with a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-702dd420-7fcc-42c5-afe8-4026edd20fe0": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'Resource logs in Virtual Machine Scale Sets should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "includeAKSClusters-7c1b1214-f927-48bf-8882-84f0af6588b1": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInServiceFabricMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'Virtual machines and virtual machine scale sets should have encryption at host enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-fc4d8e41-e223-45ea-9bf5-eada37891d87": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Compute' Policy: 'Virtual machines should be migrated to new Azure Resource Manager resources' - // ----------------------------------------------------------------------------------------------------------------------------- - "classicComputeVMsMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-1d84d5fb-01f6-4d12-ba4f-4a26081d403d": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Container Instance' Policy: 'Azure Container Instance container group should use customer-managed key for encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-0aa61e00-0a01-4a3c-9945-e93cffedf0e6": "Audit", - // Allowed Values = ["Audit","Disabled","Deny"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Container Registry' Policy: 'Container registries should be encrypted with a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-5b9159ae-1701-4a6f-9a7a-aa9c8ddd0580": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "containerRegistriesShouldBeEncryptedWithACustomerManagedKeyMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Container Registry' Policy: 'Container registries should not allow unrestricted network access' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-d0793b48-0edc-4296-a390-4c75d1bdfd71": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "containerRegistriesShouldNotAllowUnrestrictedNetworkAccessMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Container Registry' Policy: 'Container registries should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "containerRegistriesShouldUsePrivateLinkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cosmos DB' Policy: 'Azure Cosmos DB accounts should have firewall rules' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureCosmosDBAccountsShouldHaveFirewallRulesMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-862e97cf-49fc-4a5c-9de4-40d4e2e7c8eb": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cosmos DB' Policy: 'Azure Cosmos DB accounts should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-1f905d99-2ab7-462c-a6b0-f709acca6c8f": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "azureCosmosDbAccountsShouldUseCustomerManagedKeysToEncryptDataAtRestMonitoringEffect": "disabled", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cosmos DB' Policy: 'Cosmos DB database accounts should have local authentication methods disabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureCosmosDbAccountsShouldHaveLocalAuthenticationMethodsDisabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Cosmos DB' Policy: 'CosmosDB accounts should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Data Box' Policy: 'Azure Data Box jobs should enable double encryption for data at rest on the device' - // ----------------------------------------------------------------------------------------------------------------------------- - "supportedSKUs-c349d81b-9985-44ae-a8da-ff98d108ede8": [ - "DataBox", - "DataBoxHeavy" - ], - // Allowed Values = ["DataBox","DataBoxHeavy"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "effect-c349d81b-9985-44ae-a8da-ff98d108ede8": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Data Box' Policy: 'Azure Data Box jobs should use a customer-managed key to encrypt the device unlock password' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-86efb160-8de7-451d-bc08-5d475b0aadae": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "supportedSKUs-86efb160-8de7-451d-bc08-5d475b0aadae": [ - "DataBox", - "DataBoxHeavy" - ], - // Allowed Values = ["DataBox","DataBoxHeavy"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Data Factory' Policy: 'Azure data factories should be encrypted with a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-4ec52d6d-beb7-40c4-9a9e-fe753254690e": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Data Factory' Policy: 'Azure Data Factory should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Data Lake' Policy: 'Resource logs in Azure Data Lake Store should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "diagnosticsLogsInDataLakeStoreRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInDataLakeStoreMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Data Lake' Policy: 'Resource logs in Data Lake Analytics should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInDataLakeAnalyticsRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInDataLakeAnalyticsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Event Grid' Policy: 'Azure Event Grid domains should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureEventGridDomainsShouldUsePrivateLinkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Event Grid' Policy: 'Azure Event Grid topics should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureEventGridTopicsShouldUsePrivateLinkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Event Hub' Policy: 'Event Hub namespaces should use a customer-managed key for encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Event Hub' Policy: 'Event Hub namespaces should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Event Hub' Policy: 'Resource logs in Event Hub should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInEventHubRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInEventHubMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'General' Policy: 'Audit usage of custom RBAC rules' - // ----------------------------------------------------------------------------------------------------------------------------- - "useRbacRulesMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Add system-assigned managed identity to enable Guest Configuration assignments on virtual machines with no identities' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = modify - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Add system-assigned managed identity to enable Guest Configuration assignments on VMs with a user-assigned identity' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = modify - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Linux machines that allow remote connections from accounts without passwords' - // ----------------------------------------------------------------------------------------------------------------------------- - "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Linux machines that do not have the passwd file permissions set to 0644' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Linux machines that have accounts without passwords' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Windows machines that allow re-use of the previous 24 passwords' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Windows machines that do not have a maximum password age of 70 days' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Windows machines that do not have a minimum password age of 1 day' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Windows machines that do not have the password complexity setting enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Windows machines that do not restrict the minimum password length to 14 characters' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Audit Windows machines that do not store passwords using reversible encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Authentication to Linux machines should require SSH keys' - // ----------------------------------------------------------------------------------------------------------------------------- - "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "authenticationToLinuxMachinesShouldRequireSSHKeysMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Deploy the Linux Guest Configuration extension to enable Guest Configuration assignments on Linux VMs' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = deployIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Deploy the Windows Guest Configuration extension to enable Guest Configuration assignments on Windows VMs' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = deployIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Linux machines should have Log Analytics agent installed on Azure Arc' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "ArcLinuxMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Linux machines should meet requirements for the Azure compute security baseline' - // ----------------------------------------------------------------------------------------------------------------------------- - "linuxGuestConfigBaselinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Windows Defender Exploit Guard should be enabled on your machines' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "windowsDefenderExploitGuardMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "NotAvailableMachineState-bed48b13-6647-468e-aa2f-1af1d3f4dd40": "Compliant", - // Allowed Values = ["Compliant","Non-Compliant"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Windows machines should have Log Analytics agent installed on Azure Arc' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "ArcWindowsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Windows machines should meet requirements of the Azure compute security baseline' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "windowsGuestConfigBaselinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Guest Configuration' Policy: 'Windows web servers should be configured to use secure communication protocols' - // ----------------------------------------------------------------------------------------------------------------------------- - "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // Duplicate: "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsIncludeArcMachines": "true", - // Allowed Values = ["true","false"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "windowsWebServersShouldBeConfiguredToUseSecureCommunicationProtocolsMinimumTLSVersion": "1.2", - // Allowed Values = ["1.1","1.2"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "MinimumTLSVersion-5752e6d6-1206-46d8-8ab1-ecc2f71a8112": "1.2", - // Allowed Values = ["1.1","1.2"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // Duplicate: "IncludeArcMachines": "false", - // Allowed Values = ["true","false"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'HDInsight' Policy: 'Azure HDInsight clusters should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-64d314f6-6062-4780-a861-c23e8951bee5": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'HDInsight' Policy: 'Azure HDInsight clusters should use encryption at host to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-1fd32ebd-e4c3-4e13-a54a-d7422d4d95f6": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'HDInsight' Policy: 'Azure HDInsight clusters should use encryption in transit to encrypt communication between Azure HDInsight cluster nodes' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-d9da03a1-f3c3-412a-9709-947156872263": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Internet of Things' Policy: '[Preview]: IoT Hub device provisioning service data should be encrypted using customer-managed keys (CMK)' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-47031206-ce96-41f8-861b-6a915f3de284": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Internet of Things' Policy: 'IoT Hub device provisioning service instances should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Internet of Things' Policy: 'Resource logs in IoT Hub should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInIoTHubRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInIoTHubMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: '[Preview]: Certificates should have the specified maximum validity period' - // ----------------------------------------------------------------------------------------------------------------------------- - "maximumValidityInMonths-0a075868-4c26-42ef-914c-5bc007359560": 12, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "effect-0a075868-4c26-42ef-914c-5bc007359560": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "certificatesValidityPeriodInMonths": 12, - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = disabled - "certificatesValidityPeriodMonitoringEffect": "disabled", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: '[Preview]: Private endpoint should be configured for Key Vault' - // ----------------------------------------------------------------------------------------------------------------------------- - "privateEndpointShouldBeConfiguredForKeyVaultMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-5f0bc445-3935-4915-9981-011aa2b46147": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: 'Azure Key Vault should disable public network access' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-55615ac9-af46-4a59-874e-391cc3dfb490": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "firewallShouldBeEnabledOnKeyVaultMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: 'Key Vault keys should have an expiration date' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-152b15f7-8e1f-4c1f-ab71-8c010ba5dbc0": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "keysExpirationSetEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: 'Key Vault secrets should have an expiration date' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-98728c90-32c7-4049-8429-847dc0f4fe37": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "secretsExpirationSetEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: 'Key vaults should have purge protection enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-0b60c0b2-2dc2-4e1c-b5c9-abbed971de53": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "keyVaultsShouldHavePurgeProtectionEnabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: 'Key vaults should have soft delete enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-1e66c121-a66a-4b1f-9b83-0fd99bf0fc2d": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "keyVaultsShouldHaveSoftDeleteEnabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Key Vault' Policy: 'Resource logs in Key Vault should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInKeyVaultMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInKeyVaultRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: '[Preview]: Azure Arc enabled Kubernetes clusters should have Microsoft Defender for Cloud extension installed' - // ----------------------------------------------------------------------------------------------------------------------------- - "arcEnabledKubernetesClustersShouldHaveAzureDefendersExtensionInstalled": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: '[Preview]: Azure Arc enabled Kubernetes clusters should have the Azure Policy extension installed' - // ----------------------------------------------------------------------------------------------------------------------------- - "arcEnabledKubernetesClustersShouldHaveAzurePolicyExtensionInstalledEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: '[Preview]: Azure Kubernetes Service clusters should have Defender profile enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureKubernetesServiceClustersShouldHaveSecurityProfileEnabled": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: '[Preview]: Kubernetes clusters should gate deployment of vulnerable images' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "BlockVulnerableImagesExcludeFindingIDs": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = Disabled - // No Default: "BlockVulnerableImagesExcludedImages": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = Disabled - "BlockVulnerableImagesInKubernetesClusterEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - "BlockVulnerableImagesSeverityThresholdForExcludingNotPatchableFindings": "None", - // Allowed Values = ["None","Low","Medium","High"] - // 'Azure Security Benchmark': effect default = Disabled - "BlockVulnerableImagesInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = Disabled - "severity": { - "High": 0, - "Low": 0, - "Medium": 0 - }, - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Azure Policy Add-on for Kubernetes service (AKS) should be installed and enabled on your clusters' - // ----------------------------------------------------------------------------------------------------------------------------- - "azurePolicyAddonStatusEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Both operating systems and data disks in Azure Kubernetes Service clusters should be encrypted by customer-managed keys' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-7d7be79c-23ba-4033-84dd-45e2a5ccdd67": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster containers CPU and memory resource limits should not exceed the specified limits' - // ----------------------------------------------------------------------------------------------------------------------------- - "memoryLimit-e345eecc-fa47-480f-9e88-67dcc122b164": "0", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "memoryAndCPULimitsInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "effect-e345eecc-fa47-480f-9e88-67dcc122b164": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "excludedNamespaces": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "cpuLimit-e345eecc-fa47-480f-9e88-67dcc122b164": "0", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "memoryInKubernetesClusterLimit": "64Gi", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "memoryAndCPULimitsInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "CPUInKubernetesClusterLimit": "32", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster containers should not share host process ID or host IPC namespace' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "effect-47a1ee2f-2a2a-4576-bf2a-e0e36709c2b8": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "NoSharingSensitiveHostNamespacesInKubernetesEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "NoSharingSensitiveHostNamespacesInKubernetesNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster containers should only use allowed AppArmor profiles' - // ----------------------------------------------------------------------------------------------------------------------------- - "AllowedAppArmorProfilesInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "AllowedAppArmorProfilesInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "AllowedAppArmorProfilesInKubernetesClusterList": [ - "runtime/default" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "effect-511f5417-5d12-434d-ab2e-816901e72a5e": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "allowedProfiles-511f5417-5d12-434d-ab2e-816901e72a5e": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster containers should only use allowed capabilities' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "requiredDropCapabilities-c26596ff-4d70-4e6a-9a30-c2506bd2f80c": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "AllowedCapabilitiesInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - // No Default: "allowedCapabilities-c26596ff-4d70-4e6a-9a30-c2506bd2f80c": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "AllowedCapabilitiesInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "DropCapabilitiesInKubernetesClusterList": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "effect-c26596ff-4d70-4e6a-9a30-c2506bd2f80c": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "AllowedCapabilitiesInKubernetesClusterList": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster containers should only use allowed images' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-febd0533-8e55-448f-b837-bd0e06f16469": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "allowedContainerImagesInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "allowedContainerImagesInKubernetesClusterRegex": "^(.+){0}$", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "allowedContainerImagesRegex-febd0533-8e55-448f-b837-bd0e06f16469": "^(.+){0}$", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "allowedContainerImagesNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster containers should run with a read only root file system' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "effect-df49d893-a74c-421d-bc95-c663042e5b80": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "ReadOnlyRootFileSystemInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "ReadOnlyRootFileSystemInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster pod hostPath volumes should only use allowed host paths' - // ----------------------------------------------------------------------------------------------------------------------------- - "AllowedHostPathVolumesInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "effect-098fc59e-46c7-4d99-9b16-64990e543d75": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "allowedHostPaths-098fc59e-46c7-4d99-9b16-64990e543d75": { - "paths": [] - }, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "AllowedHostPathVolumesInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "AllowedHostPathVolumesInKubernetesClusterList": { - "paths": [] - }, - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster pods and containers should only run with approved user and group IDs' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "runAsUserRanges-f06ddb64-5fa3-4b77-b166-acb36f7f6042": { - "ranges": [] - }, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "runAsGroupRanges-f06ddb64-5fa3-4b77-b166-acb36f7f6042": { - "ranges": [] - }, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "MustRunAsNonRootNamespaceEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "supplementalGroupsRanges-f06ddb64-5fa3-4b77-b166-acb36f7f6042": { - "ranges": [] - }, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "runAsUserRule-f06ddb64-5fa3-4b77-b166-acb36f7f6042": "MustRunAsNonRoot", - // Allowed Values = ["MustRunAs","MustRunAsNonRoot","RunAsAny"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "runAsGroupRule-f06ddb64-5fa3-4b77-b166-acb36f7f6042": "RunAsAny", - // Allowed Values = ["MustRunAs","MayRunAs","RunAsAny"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "fsGroupRule-f06ddb64-5fa3-4b77-b166-acb36f7f6042": "RunAsAny", - // Allowed Values = ["MustRunAs","MayRunAs","RunAsAny"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "MustRunAsNonRootNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "supplementalGroupsRule-f06ddb64-5fa3-4b77-b166-acb36f7f6042": "RunAsAny", - // Allowed Values = ["MustRunAs","MayRunAs","RunAsAny"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "fsGroupRanges-f06ddb64-5fa3-4b77-b166-acb36f7f6042": { - "ranges": [] - }, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "effect-f06ddb64-5fa3-4b77-b166-acb36f7f6042": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster pods should only use approved host network and port range' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "allowHostNetwork-82985f06-dc18-4a48-bc1c-b9f4f0098cfe": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "AllowedHostNetworkingAndPortsInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "AllowedHostMaxPortInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "AllowHostNetworkingInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "effect-82985f06-dc18-4a48-bc1c-b9f4f0098cfe": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "AllowedHostNetworkingAndPortsInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - // No Default: "minPort-82985f06-dc18-4a48-bc1c-b9f4f0098cfe": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "maxPort-82985f06-dc18-4a48-bc1c-b9f4f0098cfe": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "AllowedHostMinPortInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster services should listen only on allowed ports' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "allowedServicePortsList-233a2a17-77ca-4fb1-9b6b-69223d272a44": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "allowedServicePortsInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "allowedservicePortsInKubernetesClusterPorts": [ - "-1" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "effect-233a2a17-77ca-4fb1-9b6b-69223d272a44": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "allowedServicePortsInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes cluster should not allow privileged containers' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-95edb821-ddaf-4404-9732-666045e056b4": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "privilegedContainersShouldBeAvoidedEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "privilegedContainerNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "excludedContainers-95edb821-ddaf-4404-9732-666045e056b4": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes clusters should be accessible only over HTTPS' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "effect-1a5b4dca-0b6f-4cf5-907c-56316bc1bf3d": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "kubernetesClustersShouldBeAccessibleOnlyOverHTTPSExcludedNamespaces": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "kubernetesClustersShouldBeAccessibleOnlyOverHTTPSMonitoringEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes clusters should disable automounting API credentials' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "KubernetesClustersShouldDisableAutomountingAPICredentialsMonitoringEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "KubernetesClustersShouldDisableAutomountingAPICredentialsMonitoringNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes clusters should not allow container privilege escalation' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "excludedNamespaces": ["kube-system","gatekeeper-system","azure-arc"], - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // Duplicate: "labelSelector": {}, - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - "effect-1c6e92c9-99f0-4e55-9cf2-0c234dc48f99": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - "NoPrivilegeEscalationInKubernetesClusterEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "NoPrivilegeEscalationInKubernetesClusterNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // No Default: "namespaces": "undefined", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes clusters should not grant CAP_SYS_ADMIN security capabilities' - // ----------------------------------------------------------------------------------------------------------------------------- - // No Default: "excludedImagesInKubernetesCluster": "undefined", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - "KubernetesClustersShouldNotGrantCAPSYSADMINSecurityCapabilitiesMonitoringEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "KubernetesClustersShouldNotGrantCAPSYSADMINSecurityCapabilitiesMonitoringNamespaceExclusion": [ - "kube-system", - "gatekeeper-system", - "azure-arc", - "azuredefender" - ], - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Kubernetes clusters should not use the default namespace' - // ----------------------------------------------------------------------------------------------------------------------------- - "KubernetesClustersShouldNotUseTheDefaultNamespaceMonitoringEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Resource logs in Azure Kubernetes Service should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "diagnosticsLogsInKubernetesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInKubernetesRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Kubernetes' Policy: 'Temp disks and cache for agent node pools in Azure Kubernetes Service clusters should be encrypted at host' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-41425d9f-d1a5-499a-9932-f8ed8453932c": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Logic Apps' Policy: 'Logic Apps Integration Service Environment should be encrypted with customer-managed keys' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-1fafeaf6-7927-4059-a50a-8eb2a7a6f2b5": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Logic Apps' Policy: 'Resource logs in Logic Apps should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInLogicAppsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInLogicAppsRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Machine Learning' Policy: 'Azure Machine Learning workspaces should be encrypted with a customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-ba769a63-b8cc-4b2d-abf6-ac33c7204be8": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "azureMachineLearningWorkspacesShouldBeEncryptedWithACustomerManagedKeyMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Machine Learning' Policy: 'Azure Machine Learning workspaces should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureMachineLearningWorkspacesShouldUsePrivateLinkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-40cec1dd-a100-4920-b15b-3024fe8901ab": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: '[Preview]: Log Analytics extension should be installed on your Linux Azure Arc machines' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "ArcLinuxMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: '[Preview]: Log Analytics extension should be installed on your Windows Azure Arc machines' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "ArcWindowsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: '[Preview]: Network traffic data collection agent should be installed on Linux virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "ASCDependencyAgentAuditLinuxEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: '[Preview]: Network traffic data collection agent should be installed on Windows virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "ASCDependencyAgentAuditWindowsEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: 'Azure Monitor Logs clusters should be created with infrastructure-encryption enabled (double encryption)' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-ea0dfaed-95fb-448c-934e-d6e713ce393d": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: 'Azure Monitor Logs clusters should be encrypted with customer-managed key' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-1f68a601-6e6d-4e42-babf-3f643a047ea2": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Monitoring' Policy: 'Saved-queries in Azure Monitor should be saved in customer storage account for logs encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-fa298e57-9444-42ba-bf04-86e8470e32c7": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Network' Policy: '[Preview]: All Internet traffic should be routed via your deployed Azure Firewall' - // ----------------------------------------------------------------------------------------------------------------------------- - "AzureFirewallEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Network' Policy: 'Azure Web Application Firewall should be enabled for Azure Front Door entry-points' - // ----------------------------------------------------------------------------------------------------------------------------- - "webApplicationFirewallShouldBeEnabledForAzureFrontDoorServiceServiceMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-055aa869-bc98-4af8-bafc-23f1ab6ffe2c": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Network' Policy: 'Network Watcher should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "resourceGroupName-b6e2945c-0b7b-40f5-9233-7a5323b5cdc6": "NetworkWatcherRG", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "networkWatcherShouldBeEnabledResourceGroupName": "NetworkWatcherRG", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "networkWatcherShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Network' Policy: 'Web Application Firewall (WAF) should be enabled for Application Gateway' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-564feb30-bf6a-4854-b4bb-0d2d2d1e6c66": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "webApplicationFirewallShouldBeEnabledForApplicationGatewayMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Search' Policy: 'Azure Cognitive Search service should use a SKU that supports private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-a049bf77-880b-470f-ba6d-9f21c530cf83": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Search' Policy: 'Azure Cognitive Search services should disable public network access' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-ee980b6d-0eca-4501-8d54-f6290fd512c3": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Search' Policy: 'Azure Cognitive Search services should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Search' Policy: 'Resource logs in Search services should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInSearchServiceMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInSearchServiceRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: '[Preview]: Guest Attestation extension should be installed on supported Linux virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "GuestAttestationExtensionShouldBeInstalledOnSupportedLinuxVirtualMachinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: '[Preview]: Guest Attestation extension should be installed on supported Linux virtual machines scale sets' - // ----------------------------------------------------------------------------------------------------------------------------- - "GuestAttestationExtensionShouldBeInstalledOnSupportedLinuxVirtualMachinesScaleSetsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: '[Preview]: Guest Attestation extension should be installed on supported Windows virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "GuestAttestationExtensionShouldBeInstalledOnSupportedWindowsVirtualMachinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: '[Preview]: Guest Attestation extension should be installed on supported Windows virtual machines scale sets' - // ----------------------------------------------------------------------------------------------------------------------------- - "GuestAttestationExtensionShouldBeInstalledOnSupportedWindowsVirtualMachinesScaleSetsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: '[Preview]: Secure Boot should be enabled on supported Windows virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "SecureBootShouldBeEnabledOnSupportedWindowsVirtualMachinesMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: '[Preview]: vTPM should be enabled on supported virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "VtpmShouldBeEnabledOnSupportedVirtualMachinesMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'A maximum of 3 owners should be designated for your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityDesignateLessThanOwnersMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'A vulnerability assessment solution should be enabled on your virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "serverVulnerabilityAssessmentEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Adaptive application controls for defining safe applications should be enabled on your machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "adaptiveApplicationControlsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Adaptive network hardening recommendations should be applied on internet facing virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "adaptiveNetworkHardeningsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'All network ports should be restricted on network security groups associated to your virtual machine' - // ----------------------------------------------------------------------------------------------------------------------------- - "nextGenerationFirewallMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Allowlist rules in your adaptive application control policy should be updated' - // ----------------------------------------------------------------------------------------------------------------------------- - "adaptiveApplicationControlsUpdateMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Authorized IP ranges should be defined on Kubernetes Services' - // ----------------------------------------------------------------------------------------------------------------------------- - "kubernetesServiceAuthorizedIPRangesEnabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Auto provisioning of the Log Analytics agent should be enabled on your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "autoProvisioningOfTheLogAnalyticsAgentShouldBeEnabledOnYourSubscriptionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure DDoS Protection Standard should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "vnetEnableDDoSProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for App Service should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "appServicesAdvancedThreatProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for Azure SQL Database servers should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "sqlServersAdvancedDataSecurityMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for DNS should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "AzureDefenderForDNSShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for Key Vault should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "keyVaultsAdvancedDataSecurityMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for open-source relational databases should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "AzureDefenderForOpenSourceRelationalDatabasesShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for Resource Manager should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "AzureDefenderForResourceManagerShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for servers should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "virtualMachinesAdvancedThreatProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for SQL servers on machines should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "sqlServersVirtualMachinesAdvancedDataSecurityMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Azure Defender for Storage should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "storageAccountsAdvancedDataSecurityMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Container registry images should have vulnerability findings resolved' - // ----------------------------------------------------------------------------------------------------------------------------- - "containerRegistryVulnerabilityAssessmentEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Deprecated accounts should be removed from your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityRemoveDeprecatedAccountMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Deprecated accounts with owner permissions should be removed from your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityRemoveDeprecatedAccountWithOwnerPermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Email notification for high severity alerts should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "emailNotificationForHighSeverityAlertsShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Email notification to subscription owner for high severity alerts should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "emailNotificationToSubscriptionOwnerForHighSeverityAlertsShouldBeEnabledMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Endpoint protection health issues should be resolved on your machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "endpointProtectionHealthIssuesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Endpoint protection should be installed on your machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "installEndpointProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Endpoint protection solution should be installed on virtual machine scale sets' - // ----------------------------------------------------------------------------------------------------------------------------- - "vmssEndpointProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'External accounts with owner permissions should be removed from your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityRemoveExternalAccountWithOwnerPermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'External accounts with read permissions should be removed from your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityRemoveExternalAccountWithReadPermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'External accounts with write permissions should be removed from your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityRemoveExternalAccountWithWritePermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Guest Configuration extension should be installed on your machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "azurePolicyforWindowsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Internet-facing virtual machines should be protected with network security groups' - // ----------------------------------------------------------------------------------------------------------------------------- - "networkSecurityGroupsOnVirtualMachinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'IP Forwarding on your virtual machine should be disabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "disableIPForwardingMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Kubernetes Services should be upgraded to a non-vulnerable Kubernetes version' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Log Analytics agent should be installed on your virtual machine for Azure Security Center monitoring' - // ----------------------------------------------------------------------------------------------------------------------------- - "installLogAnalyticsAgentOnVmMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Log Analytics agent should be installed on your virtual machine scale sets for Azure Security Center monitoring' - // ----------------------------------------------------------------------------------------------------------------------------- - "installLogAnalyticsAgentOnVmssMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Management ports of virtual machines should be protected with just-in-time network access control' - // ----------------------------------------------------------------------------------------------------------------------------- - "jitNetworkAccessMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Management ports should be closed on your virtual machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "restrictAccessToManagementPortsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'MFA should be enabled accounts with write permissions on your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityEnableMFAForWritePermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'MFA should be enabled on accounts with owner permissions on your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityEnableMFAForOwnerPermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'MFA should be enabled on accounts with read permissions on your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityEnableMFAForReadPermissionsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Microsoft Defender for Containers should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "containersAdvancedThreatProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Monitor missing Endpoint Protection in Azure Security Center' - // ----------------------------------------------------------------------------------------------------------------------------- - "endpointProtectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Non-internet-facing virtual machines should be protected with network security groups' - // ----------------------------------------------------------------------------------------------------------------------------- - "networkSecurityGroupsOnInternalVirtualMachinesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Role-Based Access Control (RBAC) should be used on Kubernetes Services' - // ----------------------------------------------------------------------------------------------------------------------------- - "kubernetesServiceRbacEnabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Running container images should have vulnerability findings resolved' - // ----------------------------------------------------------------------------------------------------------------------------- - "kubernetesRunningImagesVulnerabilityAssessmentEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'SQL databases should have vulnerability findings resolved' - // ----------------------------------------------------------------------------------------------------------------------------- - "sqlDbVulnerabilityAssesmentMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'SQL servers on machines should have vulnerability findings resolved' - // ----------------------------------------------------------------------------------------------------------------------------- - "serverSqlDbVulnerabilityAssesmentMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Subnets should be associated with a Network Security Group' - // ----------------------------------------------------------------------------------------------------------------------------- - "networkSecurityGroupsOnSubnetsMonitoringEffect": "Disabled", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Subscriptions should have a contact email address for security issues' - // ----------------------------------------------------------------------------------------------------------------------------- - "subscriptionsShouldHaveAContactEmailAddressForSecurityIssuesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'System updates on virtual machine scale sets should be installed' - // ----------------------------------------------------------------------------------------------------------------------------- - "vmssSystemUpdatesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'System updates should be installed on your machines' - // ----------------------------------------------------------------------------------------------------------------------------- - "systemUpdatesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'There should be more than one owner assigned to your subscription' - // ----------------------------------------------------------------------------------------------------------------------------- - "identityDesignateMoreThanOneOwnerMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Virtual machines should encrypt temp disks, caches, and data flows between Compute and Storage resources' - // ----------------------------------------------------------------------------------------------------------------------------- - "diskEncryptionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Virtual machines' Guest Configuration extension should be deployed with system-assigned managed identity' - // ----------------------------------------------------------------------------------------------------------------------------- - "gcExtOnVMWithNoSAMIMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Vulnerabilities in container security configurations should be remediated' - // ----------------------------------------------------------------------------------------------------------------------------- - "containerBenchmarkMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Vulnerabilities in security configuration on your machines should be remediated' - // ----------------------------------------------------------------------------------------------------------------------------- - "systemConfigurationsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Security Center' Policy: 'Vulnerabilities in security configuration on your virtual machine scale sets should be remediated' - // ----------------------------------------------------------------------------------------------------------------------------- - "vmssOsVulnerabilitiesMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Service Bus' Policy: 'Azure Service Bus namespaces should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Service Bus' Policy: 'Resource logs in Service Bus should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInServiceBusMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInServiceBusRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Service Bus' Policy: 'Service Bus Premium namespaces should use a customer-managed key for encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Service Fabric' Policy: 'Service Fabric clusters should have the ClusterProtectionLevel property set to EncryptAndSign' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-617c02be-7f02-4efd-8836-3180d47b6c68": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "clusterProtectionLevelInServiceFabricMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Service Fabric' Policy: 'Service Fabric clusters should only use Azure Active Directory for client authentication' - // ----------------------------------------------------------------------------------------------------------------------------- - "aadAuthenticationInServiceFabricMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-b54ed75b-3e1a-44ac-a333-05ba39b99ff0": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SignalR' Policy: 'Azure SignalR Service should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "azureSignalRServiceShouldUsePrivateLinkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'An Azure Active Directory administrator should be provisioned for SQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "aadAuthenticationInSqlServerMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Auditing on SQL server should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "setting-a6fb4358-5bf4-4ad7-ba82-2cd2f41ce5e9": "enabled", - // Allowed Values = ["enabled","disabled"] - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "sqlServerAuditingMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Azure Defender for SQL should be enabled for unprotected Azure SQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "sqlServerAdvancedDataSecurityMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Azure Defender for SQL should be enabled for unprotected SQL Managed Instances' - // ----------------------------------------------------------------------------------------------------------------------------- - "sqlManagedInstanceAdvancedDataSecurityMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Enforce SSL connection should be enabled for MySQL database servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "enforceSSLConnectionShouldBeEnabledForMysqlDatabaseServersMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Enforce SSL connection should be enabled for PostgreSQL database servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "enforceSSLConnectionShouldBeEnabledForPostgresqlDatabaseServersMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Geo-redundant backup should be enabled for Azure Database for MariaDB' - // ----------------------------------------------------------------------------------------------------------------------------- - "georedundantBackupShouldBeEnabledForAzureDatabaseForMariadbMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Geo-redundant backup should be enabled for Azure Database for MySQL' - // ----------------------------------------------------------------------------------------------------------------------------- - "georedundantBackupShouldBeEnabledForAzureDatabaseForMysqlMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Geo-redundant backup should be enabled for Azure Database for PostgreSQL' - // ----------------------------------------------------------------------------------------------------------------------------- - "georedundantBackupShouldBeEnabledForAzureDatabaseForPostgresqlMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Infrastructure encryption should be enabled for Azure Database for MySQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-3a58212a-c829-4f13-9872-6371df2fd0b4": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Infrastructure encryption should be enabled for Azure Database for PostgreSQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-24fba194-95d6-48c0-aea7-f65bf859c598": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Long-term geo-redundant backup should be enabled for Azure SQL Databases' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'MySQL servers should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "bringYourOwnKeyDataProtectionShouldBeEnabledForMySqlServersMonitoringEffect": "Disabled", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'PostgreSQL servers should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "bringYourOwnKeyDataProtectionShouldBeEnabledForPostgreSqlServersMonitoringEffect": "Disabled", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Private endpoint connections on Azure SQL Database should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "privateEndpointConnectionsOnAzureSQLDatabaseShouldBeEnabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Private endpoint should be enabled for MariaDB servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "privateEndpointShouldBeEnabledForMariadbServersMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Private endpoint should be enabled for MySQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "privateEndpointShouldBeEnabledForMysqlServersMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Private endpoint should be enabled for PostgreSQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "privateEndpointShouldBeEnabledForPostgresqlServersMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Public network access on Azure SQL Database should be disabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "publicNetworkAccessOnAzureSQLDatabaseShouldBeDisabledMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-1b8ca024-1d5c-4dec-8995-b1a932b41780": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Public network access should be disabled for MariaDB servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "publicNetworkAccessShouldBeDisabledForMariaDbServersMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Public network access should be disabled for MySQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "publicNetworkAccessShouldBeDisabledForMySqlServersMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Public network access should be disabled for PostgreSQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "publicNetworkAccessShouldBeDisabledForPostgreSqlServersMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'SQL managed instances should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureManagedInstanceTDEIsEncryptedWithYourOwnKeyWithDenyMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'SQL servers should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "ensureServerTDEIsEncryptedWithYourOwnKeyWithDenyMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'SQL servers with auditing to storage account destination should be configured with 90 days retention or higher' - // ----------------------------------------------------------------------------------------------------------------------------- - "sQLServersShouldBeConfiguredWithAuditingRetentionDaysGreaterThan90DaysMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Transparent Data Encryption on SQL databases should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "sqlDbEncryptionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Vulnerability assessment should be enabled on SQL Managed Instance' - // ----------------------------------------------------------------------------------------------------------------------------- - "vulnerabilityAssessmentOnManagedInstanceMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'SQL' Policy: 'Vulnerability assessment should be enabled on your SQL servers' - // ----------------------------------------------------------------------------------------------------------------------------- - "vulnerabilityAssessmentOnServerMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: '[Preview]: Storage account public access should be disallowed' - // ----------------------------------------------------------------------------------------------------------------------------- - "disallowPublicBlobAccessEffect": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'Azure Security Benchmark': effect default = audit - "effect-4fa4b6c0-31ca-4c0d-b10d-24b96f62a751": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Azure File Sync should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Geo-redundant storage should be enabled for Storage Accounts' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'HPC Cache accounts should use customer-managed key for encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-970f84d8-71b6-4091-9979-ace7e3fb6dbb": "Audit", - // Allowed Values = ["Audit","Disabled","Deny"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Secure transfer to storage accounts should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-404c3081-a854-4457-ae30-26a93ef643f9": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "secureTransferToStorageAccountMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage account encryption scopes should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-b5ec538c-daa0-4006-8596-35468b9148e8": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage accounts should be migrated to new Azure Resource Manager resources' - // ----------------------------------------------------------------------------------------------------------------------------- - "classicStorageAccountsMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-37e0d2fe-28a5-43d6-a273-67d37d1f5606": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage accounts should have infrastructure encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-4733ea7b-a883-42fe-8cac-97454c2a9e4a": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage accounts should restrict network access' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-34c877ad-507e-4c82-993e-3452a6e0ad3c": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - "disableUnrestrictedNetworkToStorageAccountMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage accounts should restrict network access using virtual network rules' - // ----------------------------------------------------------------------------------------------------------------------------- - "storageAccountsShouldRestrictNetworkAccessUsingVirtualNetworkRulesMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-2a1a9cdf-e04d-429a-8416-3bfb72a1b26f": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage accounts should use customer-managed key for encryption' - // ----------------------------------------------------------------------------------------------------------------------------- - "storageAccountsShouldUseCustomerManagedKeyForEncryptionMonitoringEffect": "Disabled", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Disabled - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Storage' Policy: 'Storage accounts should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "storageAccountShouldUseAPrivateLinkConnectionMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Stream Analytics' Policy: 'Azure Stream Analytics jobs should use customer-managed keys to encrypt data' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-87ba29ef-1ab3-4d82-b763-87fcd4f531f7": "audit", - // Allowed Values = ["audit","deny","disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Stream Analytics' Policy: 'Resource logs in Azure Stream Analytics should be enabled' - // ----------------------------------------------------------------------------------------------------------------------------- - // Duplicate: "requiredRetentionDays": "365", - // Allowed Values = n/a - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - "diagnosticsLogsInStreamAnalyticsRetentionDays": "1", - // Allowed Values = n/a - // 'Azure Security Benchmark': effect default = AuditIfNotExists - "diagnosticsLogsInStreamAnalyticsMonitoringEffect": "AuditIfNotExists", - // Allowed Values = ["AuditIfNotExists","Disabled"] - // 'Azure Security Benchmark': effect default = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Synapse' Policy: 'Azure Synapse workspaces should use customer-managed keys to encrypt data at rest' - // ----------------------------------------------------------------------------------------------------------------------------- - "effect-f7d52b2d-e161-4dfa-a82b-55e564167385": "Audit", - // Allowed Values = ["Audit","Deny","Disabled"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Synapse' Policy: 'Azure Synapse workspaces should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Synapse' Policy: 'Vulnerability assessment should be enabled on your Synapse workspaces' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = AuditIfNotExists - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'VM Image Builder' Policy: 'VM Image Builder templates should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - "vmImageBuilderTemplatesShouldUsePrivateLinkMonitoringEffect": "Audit", - // Allowed Values = ["Audit","Disabled"] - // 'Azure Security Benchmark': effect default = Audit - "effect-2154edb9-244f-4741-9970-660785bccdaa": "Audit", - // Allowed Values = ["Audit","Disabled","Deny"] - // 'NIST SP 800-53 Rev. 5': effect default = Audit - // - // ----------------------------------------------------------------------------------------------------------------------------- - // 'Web PubSub' Policy: 'Azure Web PubSub Service should use private link' - // ----------------------------------------------------------------------------------------------------------------------------- - // 'NIST SP 800-53 Rev. 5': effect fixed = Audit - } + ] } \ No newline at end of file diff --git a/StarterKit/Definitions/Assignments/tag-assignments.jsonc b/StarterKit/Definitions/Assignments/tag-assignments.jsonc index 78fceffa..c18c0d3b 100644 --- a/StarterKit/Definitions/Assignments/tag-assignments.jsonc +++ b/StarterKit/Definitions/Assignments/tag-assignments.jsonc @@ -16,113 +16,129 @@ }, "children": [ { - "nodeName": "tenant/", + "nodeName": "required-and-inherit/", "scope": { - "dev": [ - "/providers/Microsoft.Management/managementGroups/PAC-Dev" + "epac-dev": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Dev" ], - "test": [ - "/providers/Microsoft.Management/managementGroups/PAC-Test" + "epac-test": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Test" ], - "tenant1": [ + "tenant": [ "/providers/Microsoft.Management/managementGroups/Contoso-Root" ] }, + "definitionEntryList": [ + { + "policyName": "rg-required-tag-dynamic-notscope", + "assignment": { + "name": "rgtag-", + "displayName": "Require Tag on Resource Group - ", + "description": "Require Tag for Resource Groups when any resource group (not listed in in excludedRg) is created or updated - " + } + }, + { + "policyName": "resources-inherit-rg-tag-dynamic-notscope", + "assignment": { + "name": "taginh-", + "displayName": "Inherit Tag from Resource Group - ", + "description": "Modify Tag to comply with governance goal of enforcing Tags by inheriting Tags from RG - " + } + } + ], "children": [ { - "nodeName": "requireTags/", + "nodeName": "Contact", "assignment": { - "name": "rqtag-", - "displayName": "Required Tag on Resource Group: ", - "description": "Required Tag for Resource Groups when any resource group is created or updated: " + "name": "Contact", + "displayName": "Contact", + "description": "Contact" }, - "definitionEntry": { - "policyName": "rg-required-tag-dynamic-notscope" + "parameters": { + "tagName": "Contact" + } + }, + { + "nodeName": "AppName", + "assignment": { + "name": "AppName", + "displayName": "AppName", + "description": "AppName" }, "parameters": { - "effect": "Audit" + "tagName": "AppName" + } + }, + { + "nodeName": "CostCenter", + "assignment": { + "name": "CostCenter", + "displayName": "CostCenter", + "description": "CostCenter" }, - "children": [ - { - "nodeName": "Contact", - "assignment": { - "name": "Contact", - "displayName": "Contact", - "description": "Contact" - }, - "parameters": { - "tagName": "Contact" - } - }, - { - "nodeName": "AppName", - "assignment": { - "name": "AppName", - "displayName": "AppName", - "description": "AppName" - }, - "parameters": { - "tagName": "AppName" - } - }, - { - "nodeName": "CostCenter", - "assignment": { - "name": "CostCenter", - "displayName": "CostCenter", - "description": "CostCenter" - }, - "parameters": { - "tagName": "CostCenter" - } - } - ] + "parameters": { + "tagName": "CostCenter" + } }, { - "nodeName": "inheritFromRG/", - "definitionEntry": { - "policyName": "resources-inherit-rg-tag-dynamic-notscope" + "nodeName": "Environment", + "assignment": { + "name": "Environment", + "displayName": "Environment", + "description": "Environment" }, + "parameters": { + "tagName": "Environment" + } + } + ] + }, + { + "nodeName": "Environment/", + "definitionEntry": { + "policyName": "rg-addreplace-tag-dynamic-notscope" + }, + "parameters": { + "tagName": "Environment" + }, + "children": [ + { + "nodeName": "PROD", "assignment": { - "name": "taginh-", - "displayName": "Inherit Tag from RG - ", - "description": "Modify Tag to comply with governance goal of enforcing Tags by inheriting Tags from RG - " + "name": "prod-env-tag", + "displayName": "Prod Environment Tag", + "description": "Set Tag Environment to PROD" + }, + "parameters": { + "tagValue": "PROD" + }, + "scope": { + "epac-test": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Test" + ], + "tenant": [ + "/providers/Microsoft.Management/managementGroups/Contoso-Prod" + ] + } + }, + { + "nodeName": "NONPROD", + "assignment": { + "name": "prod-env-tag", + "displayName": "NonProd Environment Tag", + "description": "Set Tag Environment to NONPROD" + }, + "parameters": { + "tagValue": "NONPROD" }, - "children": [ - { - "nodeName": "Environment", - "assignment": { - "name": "Environment", - "displayName": "Environment", - "description": "Environment" - }, - "parameters": { - "tagName": "Environment" - } - }, - { - "nodeName": "Contact", - "assignment": { - "name": "Contact", - "displayName": "Contact", - "description": "Contact" - }, - "parameters": { - "tagName": "Contact" - } - }, - { - "nodeName": "AppName", - "assignment": { - "name": "AppName", - "displayName": "AppName", - "description": "AppName" - }, - "parameters": { - "tagName": "AppName" - } - } - ] + "scope": { + "epac-test": [ + "/providers/Microsoft.Management/managementGroups/EPAC-Test" + ], + "tenant": [ + "/providers/Microsoft.Management/managementGroups/Contoso-NonProd" + ] + } } ] } diff --git a/StarterKit/Definitions/Documentation/contoso.jsonc b/StarterKit/Definitions/Documentation/contoso.jsonc index 5168fe80..ffd0ad3a 100644 --- a/StarterKit/Definitions/Documentation/contoso.jsonc +++ b/StarterKit/Definitions/Documentation/contoso.jsonc @@ -2,7 +2,7 @@ "documentAssignments": { "environmentCategories": [ { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "environmentCategory": "PROD", "scopes": [ // Used in Markdown output only "Management Group: Contoso-Prod" @@ -19,7 +19,7 @@ ] }, { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "environmentCategory": "NONPROD", "scopes": [ // Used in Markdown output only "Management Group: Contoso-NonProd" @@ -62,7 +62,7 @@ }, "documentInitiatives": [ { - "pacEnvironment": "tenant1", + "pacEnvironment": "tenant", "fileNameStem": "contoso-compliance-initiatives", "title": "Document Initiatives", "initiatives": [ diff --git a/StarterKit/Definitions/Initiatives/allowed-locations-initiative.jsonc b/StarterKit/Definitions/Initiatives/allowed-locations-initiative.jsonc index 108c95b9..f8fe8972 100644 --- a/StarterKit/Definitions/Initiatives/allowed-locations-initiative.jsonc +++ b/StarterKit/Definitions/Initiatives/allowed-locations-initiative.jsonc @@ -7,288 +7,6 @@ "version": "1.0.0", "category": "Org Governance" }, - "policyDefinitionGroups": [ - { - "name": "Azure_Security_Benchmark_v2.0_NS-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_NS-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_NS-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_NS-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_NS-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_NS-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_NS-7", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_NS-7" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-7", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-7" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IM-8", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IM-8" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-7", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-7" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PA-8", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PA-8" - }, - { - "name": "Azure_Security_Benchmark_v2.0_DP-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_DP-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_DP-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_DP-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_DP-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_DP-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_DP-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_DP-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_DP-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_DP-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_AM-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_AM-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_AM-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_AM-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_AM-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_AM-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_AM-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_AM-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_AM-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_AM-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_AM-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_AM-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_LT-7", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_LT-7" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IR-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IR-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IR-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IR-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IR-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IR-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IR-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IR-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IR-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IR-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_IR-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_IR-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-7", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-7" - }, - { - "name": "Azure_Security_Benchmark_v2.0_PV-8", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_PV-8" - }, - { - "name": "Azure_Security_Benchmark_v2.0_ES-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_ES-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_ES-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_ES-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_ES-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_ES-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_BR-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_BR-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_BR-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_BR-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_BR-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_BR-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_BR-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_BR-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-1", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-1" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-2", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-2" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-3", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-3" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-4", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-4" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-5", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-5" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-6", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-6" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-7", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-7" - }, - { - "name": "Azure_Security_Benchmark_v2.0_GS-8", - "additionalMetadataId": "/providers/Microsoft.PolicyInsights/policyMetadata/Azure_Security_Benchmark_v2.0_GS-8" - } - ], "parameters": { "AllowedLocations": { "type": "Array", diff --git a/StarterKit/Definitions/global-settings.jsonc b/StarterKit/Definitions/global-settings.jsonc index a6ea8ab8..59d01d57 100644 --- a/StarterKit/Definitions/global-settings.jsonc +++ b/StarterKit/Definitions/global-settings.jsonc @@ -6,13 +6,13 @@ "*": [ "/resourceGroupPatterns/excluded-rg*", ], - "tenant1": [ + "tenant": [ "/providers/Microsoft.Management/managementGroups/Policy-as-Code" ] }, "pacEnvironments": [ { - "pacSelector": "dev", + "pacSelector": "epac-dev", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "11111111-2222-3333-4444-555555555555", @@ -21,7 +21,7 @@ } }, { - "pacSelector": "test", + "pacSelector": "epac-test", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "99999999-8888-7777-4444-333333333333", @@ -30,12 +30,12 @@ } }, { - "pacSelector": "tenant1", + "pacSelector": "tenant", "cloud": "AzureCloud", "tenantId": "77777777-8888-9999-1111-222222222222", "defaultSubscriptionId": "99999999-8888-7777-4444-333333333333", "rootScope": { - "ManagementGroupName": "Contoso-Root" + "ManagementGroupName": "77777777-8888-9999-1111-222222222222" // tenant root } } ] diff --git a/StarterKit/Pipelines/AzureDevOps/pipeline.yml b/StarterKit/Pipelines/AzureDevOps/pipeline.yml index ef749d61..5614f1fc 100644 --- a/StarterKit/Pipelines/AzureDevOps/pipeline.yml +++ b/StarterKit/Pipelines/AzureDevOps/pipeline.yml @@ -4,17 +4,17 @@ variables: PAC_DEFINITIONS_FOLDER: ./Definitions # Use the plain text name of each service connection as a reference - devServiceConnection: "sc-pac-dev" - testServiceConnection: "sc-pac-test" - tenant1PlanServiceConnection: "sc-pac-plan-tenant1" - tenant1DeployServiceConnection: "sc-pac-prod-tenant1" - tenant1RolesServiceConnection: "sc-pac-roles-tenant1" - tenant2PlanServiceConnection: "sc-pac-plan-tenant2" - tenant2DeployServiceConnection: "sc-pac-prod-tenant2" - tenant2RolesServiceConnection: "sc-pac-roles-tenant2" - tenant3PlanServiceConnection: "sc-pac-plan-tenant3" - tenant3DeployServiceConnection: "sc-pac-prod-tenant3" - tenant3RolesServiceConnection: "sc-pac-roles-tenant3" + devServiceConnection: "sc-epac-dev" + testServiceConnection: "sc-epac-test" + tenantPlanServiceConnection: "sc-epac-plan-tenant" + tenantDeployServiceConnection: "sc-epac-prod-tenant" + tenantRolesServiceConnection: "sc-epac-roles-tenant" + tenant2PlanServiceConnection: "sc-epac-plan-tenant2" + tenant2DeployServiceConnection: "sc-epac-prod-tenant2" + tenant2RolesServiceConnection: "sc-epac-roles-tenant2" + tenant3PlanServiceConnection: "sc-epac-plan-tenant3" + tenant3DeployServiceConnection: "sc-epac-prod-tenant3" + tenant3RolesServiceConnection: "sc-epac-roles-tenant3" # Pipeline control isBrownfield: false # Suppresses deletes while moving from an existing Policy environment to Enterprise Policy as Code. @@ -43,7 +43,7 @@ stages: displayName: "DEV Plan, Deploy Policies, Roles" condition: and(in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), not(contains(variables['Build.SourceBranch'], 'refs/heads/main'))) variables: - pacEnvironmentSelector: dev + pacEnvironmentSelector: epac-dev jobs: - deployment: allJob environment: PAC-DEV @@ -113,13 +113,13 @@ stages: arguments: -PacEnvironmentSelector $(pacEnvironmentSelector) ` -InformationAction Continue - - stage: tenant1PlanFeatureBranchStage + - stage: tenantPlanFeatureBranchStage displayName: "Tenant1 Plan - Feature Branch" dependsOn: - devStage condition: and(not(failed()), not(canceled()), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), not(contains(variables['Build.SourceBranch'], 'refs/heads/main'))) variables: - pacEnvironmentSelector: tenant1 + pacEnvironmentSelector: tenant jobs: - job: planJob steps: @@ -132,7 +132,7 @@ stages: - task: AzureCLI@2 displayName: Plan inputs: - azureSubscription: $(tenant1PlanServiceConnection) + azureSubscription: $(tenantPlanServiceConnection) scriptType: pscore scriptLocation: scriptPath scriptPath: "Scripts/Deploy/Build-AzPoliciesInitiativesAssignmentsPlan.ps1" @@ -227,7 +227,7 @@ stages: # - stage: completedPlanFeatureBranchStage # displayName: "Completed Plans - Feature Branch" # dependsOn: - # - tenant1PlanFeatureBranchStage + # - tenantPlanFeatureBranchStage # - tenant2PlanFeatureBranchStage # - tenant3PlanFeatureBranchStage # condition: and(not(failed()), not(canceled()), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), not(contains(variables['Build.SourceBranch'], 'refs/heads/main'))) @@ -244,7 +244,7 @@ stages: displayName: "TEST Plan, Deploy Policies, Roles" condition: and(in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), contains(variables['Build.SourceBranch'], 'refs/heads/main')) variables: - pacEnvironmentSelector: test + pacEnvironmentSelector: epac-test jobs: - deployment: allJob environment: PAC-TEST @@ -314,13 +314,13 @@ stages: arguments: -PacEnvironmentSelector $(pacEnvironmentSelector) ` -InformationAction Continue - - stage: tenant1PlanMainBranchStage + - stage: tenantPlanMainBranchStage displayName: "Tenant1 Plan - Main Branch" dependsOn: - testStage condition: and(not(failed()), not(canceled()), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), contains(variables['Build.SourceBranch'], 'refs/heads/main')) variables: - pacEnvironmentSelector: tenant1 + pacEnvironmentSelector: tenant jobs: - job: planJob steps: @@ -334,7 +334,7 @@ stages: name: planStep displayName: Plan inputs: - azureSubscription: $(tenant1PlanServiceConnection) + azureSubscription: $(tenantPlanServiceConnection) scriptType: pscore scriptLocation: scriptPath scriptPath: "Scripts/Deploy/Build-AzPoliciesInitiativesAssignmentsPlan.ps1" @@ -352,13 +352,13 @@ stages: # artifactName: "policy-plan-$(pacEnvironmentSelector)" # condition: succeeded() # End Publish - - stage: tenant1DeployPolicyStage + - stage: tenantDeployPolicyStage displayName: "Tenant1 Deploy Policies" dependsOn: - - tenant1PlanMainBranchStage - condition: and(not(failed()), not(canceled()), eq(dependencies.tenant1PlanMainBranchStage.outputs['planJob.planStep.deployPolicyChanges'], 'yes'), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), contains(variables['Build.SourceBranch'], 'refs/heads/main')) + - tenantPlanMainBranchStage + condition: and(not(failed()), not(canceled()), eq(dependencies.tenantPlanMainBranchStage.outputs['planJob.planStep.deployPolicyChanges'], 'yes'), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), contains(variables['Build.SourceBranch'], 'refs/heads/main')) variables: - pacEnvironmentSelector: tenant1 + pacEnvironmentSelector: tenant PAC_INPUT_FOLDER: "$(Pipeline.Workspace)" jobs: - deployment: deployPolicyJob @@ -372,7 +372,7 @@ stages: name: deployStep displayName: Deploy Policies, Initiatives, Policy Assignments inputs: - azureSubscription: $(tenant1DeployServiceConnection) + azureSubscription: $(tenantDeployServiceConnection) ScriptPath: "Scripts/Deploy/Deploy-AzPoliciesInitiativesAssignmentsFromPlan.ps1" ScriptArguments: -PacEnvironmentSelector $(pacEnvironmentSelector) ` @@ -390,13 +390,13 @@ stages: # artifactName: "roles-plan-$(pacEnvironmentSelector)" # condition: succeeded() # End Publish - - stage: tenant1RolesStage + - stage: tenantRolesStage displayName: "Tenant1 Role Assignments" dependsOn: - - tenant1DeployPolicyStage - condition: and(not(failed()), not(canceled()), eq(dependencies.tenant1PlanMainBranchStage.outputs['planJob.planStep.deployRoleChanges'], 'yes'), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), contains(variables['Build.SourceBranch'], 'refs/heads/main')) + - tenantDeployPolicyStage + condition: and(not(failed()), not(canceled()), eq(dependencies.tenantPlanMainBranchStage.outputs['planJob.planStep.deployRoleChanges'], 'yes'), in(variables['Build.Reason'], 'Manual', 'IndividualCI', 'BatchedCI'), contains(variables['Build.SourceBranch'], 'refs/heads/main')) variables: - pacEnvironmentSelector: tenant1 + pacEnvironmentSelector: tenant PAC_INPUT_FOLDER: "$(Pipeline.Workspace)" jobs: - deployment: rolesJob @@ -409,7 +409,7 @@ stages: - task: AzureCLI@2 displayName: Deploy Role Assignments inputs: - azureSubscription: $(tenant1RolesServiceConnection) + azureSubscription: $(tenantRolesServiceConnection) scriptType: pscore scriptLocation: scriptPath scriptPath: "Scripts/Deploy/Set-AzPolicyRolesFromPlan.ps1"