Skip to content

Releases: cloudyspells/PSRule.Rules.AzureDevOps

v.0.5.1

01 Apr 18:33
fc472f3
Compare
Choose a tag to compare

New in this release

Functions added

  • Export git repository branch statistics

Rules added

  • Azure.DevOps.Repos.Branch.CommitRecent checks for stale branches with a configurable age in days.

Fixed

  • Managed Identity authentication on Azure Virtual Machine

v0.5.0

20 Jan 17:07
24039e2
Compare
Choose a tag to compare

Whats new:

This release brings new internal export functionality to the module and expands the capabilities in exporting Access Control Lists (ACL). These capabilities enable 15 new rules for validating best-practices in setting permission inheritance and misconfigurations of the Project Valid Users group in Azure DevOps.

Module Internal Functions

  • Get-AzDevOpsProjectAcls
  • Get-AzDevOpsEnvironmentAcls
  • Get-AzDevOpsServiceConnectionAcls
  • Get-AzDevOpsVariableGroupAcls

Rules

  • Azure.DevOps.Pipelines.Core.ProjectValidUsers
  • Azure.DevOps.Pipelines.Environments.InheritedPermissions
  • Azure.DevOps.Pipelines.Environments.ProjectValidUsers
  • Azure.DevOps.Pipelines.Releases.ProjectValidUsers
  • Azure.DevOps.Project.MainEnvironmentAcl.ProjectValidUsers
  • Azure.DevOps.Project.MainPipelineAcl.ProjectValidUsers
  • Azure.DevOps.Project.MainReleaseDefinitionAcl.ProjectValidUsers
  • Azure.DevOps.Project.MainRepositoryAcl.ProjectValidUsers
  • Azure.DevOps.Project.MainServiceConnectionAcl.ProjectValidUsers
  • Azure.DevOps.Project.MainVariableGroupAcl.ProjectValidUsers
  • Azure.DevOps.Repos.ProjectValidUsers
  • Azure.DevOps.ServiceConnections.InheritedPermissions
  • Azure.DevOps.ServiceConnections.ProjectValidUsers
  • Azure.DevOps.Tasks.VariableGroup.InheritedPermissions
  • Azure.DevOps.Tasks.VariableGroup.ProjectValidUsers

Bug fixes

  • Undocumented bug where no ACL was returned when Release or Build Definition is in a folder

v0.4.4

16 Jan 19:55
bad43bd
Compare
Choose a tag to compare

What's new:

v0.4.3

11 Jan 14:32
e609897
Compare
Choose a tag to compare

Whats new:

  • Fix bug in Azure.DevOps.Repos.Branch.BranchPolicyIsEnabled and Fix Azure.DevOps.Repos.DefaultBranchPolicyIsEnabled

v0.4.2

07 Jan 17:09
c651b86
Compare
Choose a tag to compare

Whats new:

  • All exported objects now have an id property consisting of a JSON formatted object string of the fields below. This has been added to allow KQL parsing back to the original object hierarchy when the module is used together with PSRule.Monitor
    • originalId
    • resourceName
    • project
    • organization

v0.4.1

04 Jan 19:23
c63cabc
Compare
Choose a tag to compare

What's new

v0.4.0

04 Jan 13:20
6917d55
Compare
Choose a tag to compare

What's new

Features:

  • -PassThru Parameter. This new parameter enables the export functions to write their output to the PowerShell pipeline and not write any files to storage. This enables full in-memory execution of the rules and prevents sensitive information written to the filesystem.
  • Azure DevOps Group export and rules. Group information is now exported and 3 new rules have been added for best practices concering the default groups in Azure DevOps.
  • All repository branches are now exported and in scope. With the PSRule Supression Groups functionality you can define the scope of branches that should be protected with best practices.
  • All serviceconnections are now exported and in scope. Previous versions of the module only inspected serviceconnections with names like prd, production etc. The scope has now been expanded to all serviceconnections and suppression groups can be set as shown in the supplied example for best-practice based suppression groups.
  • Build (-artifact) retention settings export and rules.
  • Rules for private vs. public projects and corresponding baselines.
  • Enhancements in unit testing maintainability.

Rules:

v0.4.0-preview1

29 Dec 10:02
2e8a1fb
Compare
Choose a tag to compare
v0.4.0-preview1 Pre-release
Pre-release

What's new

Features:

  • -PassThru Parameter. This new parameter enables the export functions to write their output to the PowerShell pipeline and not write any files to storage. This enables full in-memory execution of the rules and prevents sensitive information written to the filesystem.
  • Azure DevOps Group export and rules. Group information is now exported and 3 new rules have been added for best practices concering the default groups in Azure DevOps.
  • All repository branches are now exported and in scope. With the PSRule Supression Groups functionality you can define the scope of branches that should be protected with best practices.
  • All serviceconnections are now exported and in scope. Previous versions of the module only inspected serviceconnections with names like prd, production etc. The scope has now been expanded to all serviceconnections and suppression groups can be set as shown in the supplied example for best-practice based suppression groups.
  • Build (-artifact) retention settings export and rules.
  • Rules for private vs. public projects and corresponding baselines.
  • Enhancements in unit testing maintainability.

Rules:

v0.3.0

17 Dec 17:53
674be99
Compare
Choose a tag to compare

What's new

  • Connect-AzDevOps Cmdlet to connect to Azure DevOps
  • New name convention for exported resources: {DevOps Organization}.{Project}.{resource}. The new name convention allows for better use of the module at scale. E.g. when collecting data for all projects in an organization.
  • Rule Severity levels reviewed and improved. See the table below for improvements.
Rule Previous Severity New Severity
Azure.DevOps.Pipelines.PipelineYaml.AgentPoolVersionNotLatest Informational Important
Azure.DevOps.Pipelines.Settings.RequireCommentForPullRequestFromFork Severe Important
Azure.DevOps.Pipelines.Settings.RestrictSecretsForPullRequestFromFork Severe Critical
Azure.DevOps.Repos.BranchPolicyCommentResolution Informational Important
Azure.DevOps.Repos.BranchPolicyMergeStrategy Informational Important
Azure.DevOps.Repos.License Important Informational
Azure.DevOps.Repos.Readme Important Informational
Azure.DevOps.ServiceConnections.ClassicAzure Severe Critical
Azure.DevOps.ServiceConnections.Description Severe Informational
Azure.DevOps.ServiceConnections.WorkloadIdentityFederation Severe Important
Azure.DevOps.Tasks.VariableGroup.Description Severe Informational
Azure.DevOps.Tasks.VariableGroup.NoKeyVaultNoSecrets Severe Critical

v0.3.0-preview4

10 Dec 19:45
6d9e20a
Compare
Choose a tag to compare
v0.3.0-preview4 Pre-release
Pre-release
  • Fix cmdlet export