getProtection function

Future<GetProtectionResult> getProtection(
  1. GetProtectionArgs args, {
  2. InvokeOptions? options,
})

Data source for managing an AWS Shield Protection.

Example Usage

Basic Usage

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

const example = aws.shield.getProtection({
    protectionId: "abc123",
});
import pulumi
import pulumi_aws as aws

example = aws.shield.get_protection(protection_id="abc123")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() =>
{
    var example = Aws.Shield.GetProtection.Invoke(new()
    {
        ProtectionId = "abc123",
    });

});
package main

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

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.LookupProtection(ctx, &shield.LookupProtectionArgs{
			ProtectionId: pulumi.StringRef("abc123"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
  }
}

data "aws_shield_getprotection" "example" {
  protection_id = "abc123"
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.shield.ShieldFunctions;
import com.pulumi.aws.shield.inputs.GetProtectionArgs;
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 = ShieldFunctions.getProtection(GetProtectionArgs.builder()
            .protectionId("abc123")
            .build());

    }
}
variables:
  example:
    fn::invoke:
      function: aws:shield:getProtection
      arguments:
        protectionId: abc123

By Resource ARN

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

const example = aws.shield.getProtection({
    resourceArn: "arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh",
});
import pulumi
import pulumi_aws as aws

example = aws.shield.get_protection(resource_arn="arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() =>
{
    var example = Aws.Shield.GetProtection.Invoke(new()
    {
        ResourceArn = "arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh",
    });

});
package main

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

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := shield.LookupProtection(ctx, &shield.LookupProtectionArgs{
			ResourceArn: pulumi.StringRef("arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
  }
}

data "aws_shield_getprotection" "example" {
  resource_arn = "arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh"
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.shield.ShieldFunctions;
import com.pulumi.aws.shield.inputs.GetProtectionArgs;
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 = ShieldFunctions.getProtection(GetProtectionArgs.builder()
            .resourceArn("arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh")
            .build());

    }
}
variables:
  example:
    fn::invoke:
      function: aws:shield:getProtection
      arguments:
        resourceArn: arn:aws:globalaccelerator::123456789012:accelerator/1234abcd-abcd-1234-abcd-1234abcdefgh

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

Implementation

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