getSecurityControls function

Future<GetSecurityControlsResult> getSecurityControls(
  1. GetSecurityControlsArgs args, {
  2. InvokeOptions? options,
})

Lists security controls.

Example Usage

All Controls

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

const example = aws.securityhub.getSecurityControls({});
import pulumi
import pulumi_aws as aws

example = aws.securityhub.get_security_controls()
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() =>
{
    var example = Aws.SecurityHub.GetSecurityControls.Invoke();

});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/securityhub"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := securityhub.GetSecurityControls(ctx, &securityhub.GetSecurityControlsArgs{}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
  }
}

data "aws_securityhub_getsecuritycontrols" "example" {
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.securityhub.SecurityhubFunctions;
import com.pulumi.aws.securityhub.inputs.GetSecurityControlsArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 = SecurityhubFunctions.getSecurityControls(GetSecurityControlsArgs.builder()
            .build());

    }
}
variables:
  example:
    fn::invoke:
      function: aws:securityhub:getSecurityControls
      arguments: {}

HIGH or CRITICAL Severity Controls

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as std from "@pulumi/std";

const example = aws.securityhub.getSecurityControls({});
export const securityControlDefinitions = Promise.all([example, std.contains({
    input: [
        "HIGH",
        "CRITICAL",
    ],
    element: d.severityRating,
})]).then(([example, invoke]) => .filter(d => invoke.result).map(d => (d)));
import pulumi
import pulumi_aws as aws
import pulumi_std as std

example = aws.securityhub.get_security_controls()
pulumi.export("securityControlDefinitions", [d for d in example.security_control_definitions if std.contains(input=[
        "HIGH",
        "CRITICAL",
    ],
    element=d.severity_rating).result])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Std = Pulumi.Std;

return await Deployment.RunAsync(() =>
{
    var example = Aws.SecurityHub.GetSecurityControls.Invoke();

    return new Dictionary<string, object?>
    {
        ["securityControlDefinitions"] = Output.Tuple(example, Std.Contains.Invoke(new()
        {
            Input = new[]
            {
                "HIGH",
                "CRITICAL",
            },
            Element = d.SeverityRating,
        })).Apply(values =>
        {
            var example = values.Item1;
            var invoke = values.Item2;
            return ;
        }),
    };
});
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
    std = {
      source = "pulumi/std"
    }
  }
}

data "aws_securityhub_getsecuritycontrols" "example" {
}

output "securityControlDefinitions" {
  value = [for d in data.aws_securityhub_getsecuritycontrols.example.security_control_definitions : d if contains(["HIGH", "CRITICAL"], d.severityRating)]
}

args Arguments passed to this invoke. Arguments for getSecurityControls. options Invoke options controlling this call.

Implementation

Future<GetSecurityControlsResult> getSecurityControls(
  GetSecurityControlsArgs args, {
  pulumi.InvokeOptions? options,
}) async {
  final deployment = pulumi.Deployment.instance;
  final result = await deployment.invoke<Map<String, dynamic>>(
    'aws:securityhub/getSecurityControls:getSecurityControls',
    args.toMap(),
    options: pulumi.toDeploymentInvokeOptions(options),
  );
  return GetSecurityControlsResult.fromMap(result);
}