microsoft / terraform-provider-azuredevops

Terraform Azure DevOps provider
https://www.terraform.io/docs/providers/azuredevops/
MIT License
380 stars 271 forks source link

Missing resource to set Analytics and Analytics views permissions #1023

Open alborworld opened 5 months ago

alborworld commented 5 months ago

Community Note

Description

Currently, there is no resource to set the permissions for the Analytics and Analytics views.

New or Affected Resource(s)

Potential Terraform Configuration

resource "azuredevops_project" "example" {
  name               = "Example Project"
  work_item_template = "Agile"
  version_control    = "Git"
  visibility         = "private"
  description        = "Managed by Terraform"
}

data "azuredevops_group" "example-project-readers" {
  project_id = azuredevops_project.example.id
  name       = "Readers"
}

resource "azuredevops_analyticsviews_permissions" "example" {
  project_id = azuredevops_project.example.id
  principal  = data.azuredevops_group.example-project-readers.id

  permissions = {
    Read    = "Deny"
    Edit      = "Allow"
    Delete   = "Deny"
    Execute    = "Allow"
    ManagePermissions = "Allow"
  }
}

The principal can be a member, a team, a group.

If the permissions can be set at project-level (to be checked) then principal should be optional.

References

AnalyticsViews namespace: https://learn.microsoft.com/en-us/azure/devops/report/powerbi/analytics-security?view=azure-devops-2022&tabs=current-page

Set permissions to access Analytics and Analytics views: https://learn.microsoft.com/en-us/azure/devops/report/powerbi/analytics-security?view=azure-devops-2022&tabs=current-page