1. Packages
  2. Sysdig Provider
  3. API Docs
  4. getSecureCustomRolePermissions
sysdig 1.56.0 published on Wednesday, Apr 30, 2025 by sysdiglabs

sysdig.getSecureCustomRolePermissions

Explore with Pulumi AI

sysdig logo
sysdig 1.56.0 published on Wednesday, Apr 30, 2025 by sysdiglabs

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as sysdig from "@pulumi/sysdig";
    
    const imagesEdit = sysdig.getSecureCustomRolePermissions({
        requestedPermissions: ["secure.blacklist.images.edit"],
    });
    
    import pulumi
    import pulumi_sysdig as sysdig
    
    images_edit = sysdig.get_secure_custom_role_permissions(requested_permissions=["secure.blacklist.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 {
    		_, err := sysdig.GetSecureCustomRolePermissions(ctx, &sysdig.GetSecureCustomRolePermissionsArgs{
    			RequestedPermissions: []string{
    				"secure.blacklist.images.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 imagesEdit = Sysdig.GetSecureCustomRolePermissions.Invoke(new()
        {
            RequestedPermissions = new[]
            {
                "secure.blacklist.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.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());
    
        }
    }
    
    variables:
      imagesEdit:
        fn::invoke:
          function: sysdig:getSecureCustomRolePermissions
          arguments:
            requestedPermissions:
              - secure.blacklist.images.edit
    

    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],
    });
    
    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]))
    
    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
    	})
    }
    
    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,
            },
        });
    
    });
    
    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());
    
        }
    }
    
    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
    

    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>
    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]
    func GetSecureCustomRolePermissions(ctx *Context, args *GetSecureCustomRolePermissionsArgs, opts ...InvokeOption) (*GetSecureCustomRolePermissionsResult, error)
    func GetSecureCustomRolePermissionsOutput(ctx *Context, args *GetSecureCustomRolePermissionsOutputArgs, opts ...InvokeOption) GetSecureCustomRolePermissionsResultOutput

    > 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)
    }
    public static CompletableFuture<GetSecureCustomRolePermissionsResult> getSecureCustomRolePermissions(GetSecureCustomRolePermissionsArgs args, InvokeOptions options)
    public static Output<GetSecureCustomRolePermissionsResult> getSecureCustomRolePermissions(GetSecureCustomRolePermissionsArgs args, InvokeOptions options)
    
    fn::invoke:
      function: sysdig:index/getSecureCustomRolePermissions:getSecureCustomRolePermissions
      arguments:
        # arguments dictionary

    The following arguments are supported:

    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.
    sysdig logo
    sysdig 1.56.0 published on Wednesday, Apr 30, 2025 by sysdiglabs