getRoleManagementPolicy

Use this data source to get information on a role policy for an Azure Management Group, Subscription, Resource Group or resource.

Example Usage

Resource Group

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.core.getResourceGroup({
name: "example-rg",
});
const rgContributor = example.then(example => azure.authorization.getRoleDefinition({
name: "Contributor",
scope: example.id,
}));
const exampleGetRoleManagementPolicy = azure.pim.getRoleManagementPolicy({
scope: test.id,
roleDefinitionId: contributor.id,
});
import pulumi
import pulumi_azure as azure
example = azure.core.get_resource_group(name="example-rg")
rg_contributor = azure.authorization.get_role_definition(name="Contributor",
scope=example.id)
example_get_role_management_policy = azure.pim.get_role_management_policy(scope=test["id"],
role_definition_id=contributor["id"])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = Azure.Core.GetResourceGroup.Invoke(new()
{
Name = "example-rg",
});
var rgContributor = Azure.Authorization.GetRoleDefinition.Invoke(new()
{
Name = "Contributor",
Scope = example.Apply(getResourceGroupResult => getResourceGroupResult.Id),
});
var exampleGetRoleManagementPolicy = Azure.Pim.GetRoleManagementPolicy.Invoke(new()
{
Scope = test.Id,
RoleDefinitionId = contributor.Id,
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/pim"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.LookupResourceGroup(ctx, &core.LookupResourceGroupArgs{
Name: "example-rg",
}, nil)
if err != nil {
return err
}
_, err = authorization.LookupRoleDefinition(ctx, &authorization.LookupRoleDefinitionArgs{
Name: pulumi.StringRef("Contributor"),
Scope: pulumi.StringRef(example.Id),
}, nil)
if err != nil {
return err
}
_, err = pim.LookupRoleManagementPolicy(ctx, &pim.LookupRoleManagementPolicyArgs{
Scope: test.Id,
RoleDefinitionId: contributor.Id,
}, nil)
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.core.inputs.GetResourceGroupArgs;
import com.pulumi.azure.authorization.AuthorizationFunctions;
import com.pulumi.azure.authorization.inputs.GetRoleDefinitionArgs;
import com.pulumi.azure.pim.PimFunctions;
import com.pulumi.azure.pim.inputs.GetRoleManagementPolicyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var example = CoreFunctions.getResourceGroup(GetResourceGroupArgs.builder()
.name("example-rg")
.build());
final var rgContributor = AuthorizationFunctions.getRoleDefinition(GetRoleDefinitionArgs.builder()
.name("Contributor")
.scope(example.applyValue(getResourceGroupResult -> getResourceGroupResult.id()))
.build());
final var exampleGetRoleManagementPolicy = PimFunctions.getRoleManagementPolicy(GetRoleManagementPolicyArgs.builder()
.scope(test.id())
.roleDefinitionId(contributor.id())
.build());
}
}
variables:
example:
fn::invoke:
function: azure:core:getResourceGroup
arguments:
name: example-rg
rgContributor:
fn::invoke:
function: azure:authorization:getRoleDefinition
arguments:
name: Contributor
scope: ${example.id}
exampleGetRoleManagementPolicy:
fn::invoke:
function: azure:pim:getRoleManagementPolicy
arguments:
scope: ${test.id}
roleDefinitionId: ${contributor.id}

Management Group

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.management.getGroup({
name: "example-group",
});
const mgContributor = azure.authorization.getRoleDefinition({
name: "Contributor",
scope: exampleAzurermManagementGroup.id,
});
const exampleGetRoleManagementPolicy = Promise.all([example, mgContributor]).then(([example, mgContributor]) => azure.pim.getRoleManagementPolicy({
scope: example.id,
roleDefinitionId: mgContributor.id,
}));
import pulumi
import pulumi_azure as azure
example = azure.management.get_group(name="example-group")
mg_contributor = azure.authorization.get_role_definition(name="Contributor",
scope=example_azurerm_management_group["id"])
example_get_role_management_policy = azure.pim.get_role_management_policy(scope=example.id,
role_definition_id=mg_contributor.id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = Azure.Management.GetGroup.Invoke(new()
{
Name = "example-group",
});
var mgContributor = Azure.Authorization.GetRoleDefinition.Invoke(new()
{
Name = "Contributor",
Scope = exampleAzurermManagementGroup.Id,
});
var exampleGetRoleManagementPolicy = Azure.Pim.GetRoleManagementPolicy.Invoke(new()
{
Scope = example.Apply(getGroupResult => getGroupResult.Id),
RoleDefinitionId = mgContributor.Apply(getRoleDefinitionResult => getRoleDefinitionResult.Id),
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/authorization"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/management"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/pim"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := management.LookupGroup(ctx, &management.LookupGroupArgs{
Name: pulumi.StringRef("example-group"),
}, nil)
if err != nil {
return err
}
mgContributor, err := authorization.LookupRoleDefinition(ctx, &authorization.LookupRoleDefinitionArgs{
Name: pulumi.StringRef("Contributor"),
Scope: pulumi.StringRef(exampleAzurermManagementGroup.Id),
}, nil)
if err != nil {
return err
}
_, err = pim.LookupRoleManagementPolicy(ctx, &pim.LookupRoleManagementPolicyArgs{
Scope: example.Id,
RoleDefinitionId: mgContributor.Id,
}, nil)
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.management.ManagementFunctions;
import com.pulumi.azure.management.inputs.GetGroupArgs;
import com.pulumi.azure.authorization.AuthorizationFunctions;
import com.pulumi.azure.authorization.inputs.GetRoleDefinitionArgs;
import com.pulumi.azure.pim.PimFunctions;
import com.pulumi.azure.pim.inputs.GetRoleManagementPolicyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var example = ManagementFunctions.getGroup(GetGroupArgs.builder()
.name("example-group")
.build());
final var mgContributor = AuthorizationFunctions.getRoleDefinition(GetRoleDefinitionArgs.builder()
.name("Contributor")
.scope(exampleAzurermManagementGroup.id())
.build());
final var exampleGetRoleManagementPolicy = PimFunctions.getRoleManagementPolicy(GetRoleManagementPolicyArgs.builder()
.scope(example.applyValue(getGroupResult -> getGroupResult.id()))
.roleDefinitionId(mgContributor.applyValue(getRoleDefinitionResult -> getRoleDefinitionResult.id()))
.build());
}
}
variables:
example:
fn::invoke:
function: azure:management:getGroup
arguments:
name: example-group
mgContributor:
fn::invoke:
function: azure:authorization:getRoleDefinition
arguments:
name: Contributor
scope: ${exampleAzurermManagementGroup.id}
exampleGetRoleManagementPolicy:
fn::invoke:
function: azure:pim:getRoleManagementPolicy
arguments:
scope: ${example.id}
roleDefinitionId: ${mgContributor.id}

Return

A collection of values returned by getRoleManagementPolicy.

Parameters

argument

A collection of arguments for invoking getRoleManagementPolicy.


suspend fun getRoleManagementPolicy(roleDefinitionId: String, scope: String): GetRoleManagementPolicyResult

Return

A collection of values returned by getRoleManagementPolicy.

Parameters

roleDefinitionId

The scoped Role Definition ID of the role for which this policy applies.

scope

The scope to which this Role Management Policy applies. Can refer to a management group, a subscription, a resource group or a resource.

See also


Return

A collection of values returned by getRoleManagementPolicy.

Parameters

argument

Builder for com.pulumi.azure.pim.kotlin.inputs.GetRoleManagementPolicyPlainArgs.

See also