sysdig 1.56.1 published on Thursday, May 8, 2025 by sysdiglabs
sysdig.getMonitorCustomRolePermissions
Explore with Pulumi AI
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as sysdig from "@pulumi/sysdig";
const dashboardEdit = sysdig.getMonitorCustomRolePermissions({
    requestedPermissions: ["dashboards.edit"],
});
import pulumi
import pulumi_sysdig as sysdig
dashboard_edit = sysdig.get_monitor_custom_role_permissions(requested_permissions=["dashboards.edit"])
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/sysdig/sysdig"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sysdig.GetMonitorCustomRolePermissions(ctx, &sysdig.GetMonitorCustomRolePermissionsArgs{
			RequestedPermissions: []string{
				"dashboards.edit",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sysdig = Pulumi.Sysdig;
return await Deployment.RunAsync(() => 
{
    var dashboardEdit = Sysdig.GetMonitorCustomRolePermissions.Invoke(new()
    {
        RequestedPermissions = new[]
        {
            "dashboards.edit",
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.sysdig.SysdigFunctions;
import com.pulumi.sysdig.inputs.GetMonitorCustomRolePermissionsArgs;
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 dashboardEdit = SysdigFunctions.getMonitorCustomRolePermissions(GetMonitorCustomRolePermissionsArgs.builder()
            .requestedPermissions("dashboards.edit")
            .build());
    }
}
variables:
  dashboardEdit:
    fn::invoke:
      function: sysdig:getMonitorCustomRolePermissions
      arguments:
        requestedPermissions:
          - dashboards.edit
With Custom Role
import * as pulumi from "@pulumi/pulumi";
import * as sysdig from "@pulumi/sysdig";
const dashboardEdit = sysdig.getMonitorCustomRolePermissions({
    requestedPermissions: ["dashboards.edit"],
});
const my_custom_role = new sysdig.CustomRole("my-custom-role", {
    description: "Custom role to edit dashboards",
    permissions: {
        monitorPermissions: dashboardEdit.then(dashboardEdit => dashboardEdit.enrichedPermissions),
    },
}, {
    dependsOn: [data.sysdig_secure_custom_role_permissions.images_edit],
});
import pulumi
import pulumi_sysdig as sysdig
dashboard_edit = sysdig.get_monitor_custom_role_permissions(requested_permissions=["dashboards.edit"])
my_custom_role = sysdig.CustomRole("my-custom-role",
    description="Custom role to edit dashboards",
    permissions={
        "monitor_permissions": dashboard_edit.enriched_permissions,
    },
    opts = pulumi.ResourceOptions(depends_on=[data["sysdig_secure_custom_role_permissions"]["images_edit"]]))
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/sysdig/sysdig"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dashboardEdit, err := sysdig.GetMonitorCustomRolePermissions(ctx, &sysdig.GetMonitorCustomRolePermissionsArgs{
			RequestedPermissions: []string{
				"dashboards.edit",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = sysdig.NewCustomRole(ctx, "my-custom-role", &sysdig.CustomRoleArgs{
			Description: pulumi.String("Custom role to edit dashboards"),
			Permissions: &sysdig.CustomRolePermissionsArgs{
				MonitorPermissions: interface{}(dashboardEdit.EnrichedPermissions),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			data.Sysdig_secure_custom_role_permissions.Images_edit,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sysdig = Pulumi.Sysdig;
return await Deployment.RunAsync(() => 
{
    var dashboardEdit = Sysdig.GetMonitorCustomRolePermissions.Invoke(new()
    {
        RequestedPermissions = new[]
        {
            "dashboards.edit",
        },
    });
    var my_custom_role = new Sysdig.CustomRole("my-custom-role", new()
    {
        Description = "Custom role to edit dashboards",
        Permissions = new Sysdig.Inputs.CustomRolePermissionsArgs
        {
            MonitorPermissions = dashboardEdit.Apply(getMonitorCustomRolePermissionsResult => getMonitorCustomRolePermissionsResult.EnrichedPermissions),
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            data.Sysdig_secure_custom_role_permissions.Images_edit,
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.sysdig.SysdigFunctions;
import com.pulumi.sysdig.inputs.GetMonitorCustomRolePermissionsArgs;
import com.pulumi.sysdig.CustomRole;
import com.pulumi.sysdig.CustomRoleArgs;
import com.pulumi.sysdig.inputs.CustomRolePermissionsArgs;
import com.pulumi.resources.CustomResourceOptions;
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 dashboardEdit = SysdigFunctions.getMonitorCustomRolePermissions(GetMonitorCustomRolePermissionsArgs.builder()
            .requestedPermissions("dashboards.edit")
            .build());
        var my_custom_role = new CustomRole("my-custom-role", CustomRoleArgs.builder()
            .description("Custom role to edit dashboards")
            .permissions(CustomRolePermissionsArgs.builder()
                .monitorPermissions(dashboardEdit.applyValue(getMonitorCustomRolePermissionsResult -> getMonitorCustomRolePermissionsResult.enrichedPermissions()))
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(data.sysdig_secure_custom_role_permissions().images_edit())
                .build());
    }
}
resources:
  my-custom-role:
    type: sysdig:CustomRole
    properties:
      description: Custom role to edit dashboards
      permissions:
        monitorPermissions: ${dashboardEdit.enrichedPermissions}
    options:
      dependsOn:
        - ${data.sysdig_secure_custom_role_permissions.images_edit}
variables:
  dashboardEdit:
    fn::invoke:
      function: sysdig:getMonitorCustomRolePermissions
      arguments:
        requestedPermissions:
          - dashboards.edit
Using getMonitorCustomRolePermissions
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getMonitorCustomRolePermissions(args: GetMonitorCustomRolePermissionsArgs, opts?: InvokeOptions): Promise<GetMonitorCustomRolePermissionsResult>
function getMonitorCustomRolePermissionsOutput(args: GetMonitorCustomRolePermissionsOutputArgs, opts?: InvokeOptions): Output<GetMonitorCustomRolePermissionsResult>def get_monitor_custom_role_permissions(id: Optional[str] = None,
                                        requested_permissions: Optional[Sequence[str]] = None,
                                        timeouts: Optional[GetMonitorCustomRolePermissionsTimeouts] = None,
                                        opts: Optional[InvokeOptions] = None) -> GetMonitorCustomRolePermissionsResult
def get_monitor_custom_role_permissions_output(id: Optional[pulumi.Input[str]] = None,
                                        requested_permissions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                                        timeouts: Optional[pulumi.Input[GetMonitorCustomRolePermissionsTimeoutsArgs]] = None,
                                        opts: Optional[InvokeOptions] = None) -> Output[GetMonitorCustomRolePermissionsResult]func GetMonitorCustomRolePermissions(ctx *Context, args *GetMonitorCustomRolePermissionsArgs, opts ...InvokeOption) (*GetMonitorCustomRolePermissionsResult, error)
func GetMonitorCustomRolePermissionsOutput(ctx *Context, args *GetMonitorCustomRolePermissionsOutputArgs, opts ...InvokeOption) GetMonitorCustomRolePermissionsResultOutput> Note: This function is named GetMonitorCustomRolePermissions in the Go SDK.
public static class GetMonitorCustomRolePermissions 
{
    public static Task<GetMonitorCustomRolePermissionsResult> InvokeAsync(GetMonitorCustomRolePermissionsArgs args, InvokeOptions? opts = null)
    public static Output<GetMonitorCustomRolePermissionsResult> Invoke(GetMonitorCustomRolePermissionsInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetMonitorCustomRolePermissionsResult> getMonitorCustomRolePermissions(GetMonitorCustomRolePermissionsArgs args, InvokeOptions options)
public static Output<GetMonitorCustomRolePermissionsResult> getMonitorCustomRolePermissions(GetMonitorCustomRolePermissionsArgs args, InvokeOptions options)
fn::invoke:
  function: sysdig:index/getMonitorCustomRolePermissions:getMonitorCustomRolePermissions
  arguments:
    # arguments dictionaryThe following arguments are supported:
- RequestedPermissions List<string>
- Id string
- Timeouts
GetMonitor Custom Role Permissions Timeouts 
- requestedPermissions List<String>
- id String
- timeouts
GetMonitor Custom Role Permissions Timeouts 
- requested_permissions Sequence[str]
- id str
- timeouts
GetMonitor Custom Role Permissions Timeouts 
- requestedPermissions List<String>
- id String
- timeouts Property Map
getMonitorCustomRolePermissions Result
The following output properties are available:
- EnrichedPermissions List<string>
- The minimum set of permissions enriched with permissions on which the requested permissions depend
- Id string
- RequestedPermissions List<string>
- Timeouts
GetMonitor Custom Role Permissions Timeouts 
- EnrichedPermissions []string
- The minimum set of permissions enriched with permissions on which the requested permissions depend
- Id string
- RequestedPermissions []string
- Timeouts
GetMonitor Custom Role Permissions Timeouts 
- enrichedPermissions List<String>
- The minimum set of permissions enriched with permissions on which the requested permissions depend
- id String
- requestedPermissions List<String>
- timeouts
GetMonitor Custom Role Permissions Timeouts 
- enrichedPermissions string[]
- The minimum set of permissions enriched with permissions on which the requested permissions depend
- id string
- requestedPermissions string[]
- timeouts
GetMonitor Custom Role Permissions Timeouts 
- enriched_permissions Sequence[str]
- The minimum set of permissions enriched with permissions on which the requested permissions depend
- id str
- requested_permissions Sequence[str]
- timeouts
GetMonitor Custom Role Permissions Timeouts 
- enrichedPermissions List<String>
- The minimum set of permissions enriched with permissions on which the requested permissions depend
- id String
- requestedPermissions List<String>
- timeouts Property Map
Supporting Types
GetMonitorCustomRolePermissionsTimeouts     
- Read string
- Read string
- read String
- read string
- read str
- read String
Package Details
- Repository
- sysdig sysdiglabs/terraform-provider-sysdig
- License
- Notes
- This Pulumi package is based on the sysdigTerraform Provider.