1. Packages
  2. Sysdig Provider
  3. API Docs
  4. getSecureCustomRolePermissions
sysdig 1.53.0 published on Thursday, Apr 17, 2025 by sysdiglabs

sysdig.getSecureCustomRolePermissions

Explore with Pulumi AI

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as sysdig from "@pulumi/sysdig";

const imagesEdit = sysdig.getSecureCustomRolePermissions({
    requestedPermissions: ["secure.blacklist.images.edit"],
});
Copy
import pulumi
import pulumi_sysdig as sysdig

images_edit = sysdig.get_secure_custom_role_permissions(requested_permissions=["secure.blacklist.images.edit"])
Copy
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.GetSecureCustomRolePermissions(ctx, &sysdig.GetSecureCustomRolePermissionsArgs{
			RequestedPermissions: []string{
				"secure.blacklist.images.edit",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sysdig = Pulumi.Sysdig;

return await Deployment.RunAsync(() => 
{
    var imagesEdit = Sysdig.GetSecureCustomRolePermissions.Invoke(new()
    {
        RequestedPermissions = new[]
        {
            "secure.blacklist.images.edit",
        },
    });

});
Copy
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.GetSecureCustomRolePermissionsArgs;
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 imagesEdit = SysdigFunctions.getSecureCustomRolePermissions(GetSecureCustomRolePermissionsArgs.builder()
            .requestedPermissions("secure.blacklist.images.edit")
            .build());

    }
}
Copy
variables:
  imagesEdit:
    fn::invoke:
      function: sysdig:getSecureCustomRolePermissions
      arguments:
        requestedPermissions:
          - secure.blacklist.images.edit
Copy

With Custom Role

import * as pulumi from "@pulumi/pulumi";
import * as sysdig from "@pulumi/sysdig";

const imagesEdit = sysdig.getSecureCustomRolePermissions({
    requestedPermissions: ["secure.blacklist.images.edit"],
});
const my_custom_role = new sysdig.CustomRole("my-custom-role", {
    description: "Custom role to edit images",
    permissions: {
        securePermissions: imagesEdit.then(imagesEdit => imagesEdit.enrichedPermissions),
    },
}, {
    dependsOn: [imagesEdit],
});
Copy
import pulumi
import pulumi_sysdig as sysdig

images_edit = sysdig.get_secure_custom_role_permissions(requested_permissions=["secure.blacklist.images.edit"])
my_custom_role = sysdig.CustomRole("my-custom-role",
    description="Custom role to edit images",
    permissions={
        "secure_permissions": images_edit.enriched_permissions,
    },
    opts = pulumi.ResourceOptions(depends_on=[images_edit]))
Copy
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 {
		imagesEdit, err := sysdig.GetSecureCustomRolePermissions(ctx, &sysdig.GetSecureCustomRolePermissionsArgs{
			RequestedPermissions: []string{
				"secure.blacklist.images.edit",
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = sysdig.NewCustomRole(ctx, "my-custom-role", &sysdig.CustomRoleArgs{
			Description: pulumi.String("Custom role to edit images"),
			Permissions: &sysdig.CustomRolePermissionsArgs{
				SecurePermissions: interface{}(imagesEdit.EnrichedPermissions),
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			imagesEdit,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sysdig = Pulumi.Sysdig;

return await Deployment.RunAsync(() => 
{
    var imagesEdit = Sysdig.GetSecureCustomRolePermissions.Invoke(new()
    {
        RequestedPermissions = new[]
        {
            "secure.blacklist.images.edit",
        },
    });

    var my_custom_role = new Sysdig.CustomRole("my-custom-role", new()
    {
        Description = "Custom role to edit images",
        Permissions = new Sysdig.Inputs.CustomRolePermissionsArgs
        {
            SecurePermissions = imagesEdit.Apply(getSecureCustomRolePermissionsResult => getSecureCustomRolePermissionsResult.EnrichedPermissions),
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            imagesEdit,
        },
    });

});
Copy
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.GetSecureCustomRolePermissionsArgs;
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 imagesEdit = SysdigFunctions.getSecureCustomRolePermissions(GetSecureCustomRolePermissionsArgs.builder()
            .requestedPermissions("secure.blacklist.images.edit")
            .build());

        var my_custom_role = new CustomRole("my-custom-role", CustomRoleArgs.builder()
            .description("Custom role to edit images")
            .permissions(CustomRolePermissionsArgs.builder()
                .securePermissions(imagesEdit.applyValue(getSecureCustomRolePermissionsResult -> getSecureCustomRolePermissionsResult.enrichedPermissions()))
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(imagesEdit.applyValue(getSecureCustomRolePermissionsResult -> getSecureCustomRolePermissionsResult))
                .build());

    }
}
Copy
resources:
  my-custom-role:
    type: sysdig:CustomRole
    properties:
      description: Custom role to edit images
      permissions:
        securePermissions: ${imagesEdit.enrichedPermissions}
    options:
      dependsOn:
        - ${imagesEdit}
variables:
  imagesEdit:
    fn::invoke:
      function: sysdig:getSecureCustomRolePermissions
      arguments:
        requestedPermissions:
          - secure.blacklist.images.edit
Copy

Using getSecureCustomRolePermissions

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 getSecureCustomRolePermissions(args: GetSecureCustomRolePermissionsArgs, opts?: InvokeOptions): Promise<GetSecureCustomRolePermissionsResult>
function getSecureCustomRolePermissionsOutput(args: GetSecureCustomRolePermissionsOutputArgs, opts?: InvokeOptions): Output<GetSecureCustomRolePermissionsResult>
Copy
def get_secure_custom_role_permissions(id: Optional[str] = None,
                                       requested_permissions: Optional[Sequence[str]] = None,
                                       timeouts: Optional[GetSecureCustomRolePermissionsTimeouts] = None,
                                       opts: Optional[InvokeOptions] = None) -> GetSecureCustomRolePermissionsResult
def get_secure_custom_role_permissions_output(id: Optional[pulumi.Input[str]] = None,
                                       requested_permissions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                                       timeouts: Optional[pulumi.Input[GetSecureCustomRolePermissionsTimeoutsArgs]] = None,
                                       opts: Optional[InvokeOptions] = None) -> Output[GetSecureCustomRolePermissionsResult]
Copy
func GetSecureCustomRolePermissions(ctx *Context, args *GetSecureCustomRolePermissionsArgs, opts ...InvokeOption) (*GetSecureCustomRolePermissionsResult, error)
func GetSecureCustomRolePermissionsOutput(ctx *Context, args *GetSecureCustomRolePermissionsOutputArgs, opts ...InvokeOption) GetSecureCustomRolePermissionsResultOutput
Copy

> Note: This function is named GetSecureCustomRolePermissions in the Go SDK.

public static class GetSecureCustomRolePermissions 
{
    public static Task<GetSecureCustomRolePermissionsResult> InvokeAsync(GetSecureCustomRolePermissionsArgs args, InvokeOptions? opts = null)
    public static Output<GetSecureCustomRolePermissionsResult> Invoke(GetSecureCustomRolePermissionsInvokeArgs args, InvokeOptions? opts = null)
}
Copy
public static CompletableFuture<GetSecureCustomRolePermissionsResult> getSecureCustomRolePermissions(GetSecureCustomRolePermissionsArgs args, InvokeOptions options)
public static Output<GetSecureCustomRolePermissionsResult> getSecureCustomRolePermissions(GetSecureCustomRolePermissionsArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: sysdig:index/getSecureCustomRolePermissions:getSecureCustomRolePermissions
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

RequestedPermissions This property is required. List<string>
Id string
Timeouts GetSecureCustomRolePermissionsTimeouts
requestedPermissions This property is required. List<String>
id String
timeouts GetSecureCustomRolePermissionsTimeouts
requested_permissions This property is required. Sequence[str]
id str
timeouts GetSecureCustomRolePermissionsTimeouts
requestedPermissions This property is required. List<String>
id String
timeouts Property Map

getSecureCustomRolePermissions 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 GetSecureCustomRolePermissionsTimeouts
EnrichedPermissions []string
The minimum set of permissions enriched with permissions on which the requested permissions depend
Id string
RequestedPermissions []string
Timeouts GetSecureCustomRolePermissionsTimeouts
enrichedPermissions List<String>
The minimum set of permissions enriched with permissions on which the requested permissions depend
id String
requestedPermissions List<String>
timeouts GetSecureCustomRolePermissionsTimeouts
enrichedPermissions string[]
The minimum set of permissions enriched with permissions on which the requested permissions depend
id string
requestedPermissions string[]
timeouts GetSecureCustomRolePermissionsTimeouts
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 GetSecureCustomRolePermissionsTimeouts
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

GetSecureCustomRolePermissionsTimeouts

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 sysdig Terraform Provider.