Origin Access Control Args
data class OriginAccessControlArgs(val description: Output<String>? = null, val name: Output<String>? = null, val originAccessControlOriginType: Output<String>? = null, val signingBehavior: Output<String>? = null, val signingProtocol: Output<String>? = null) : ConvertibleToJava<OriginAccessControlArgs>
Manages an AWS CloudFront Origin Access Control, which is used by CloudFront Distributions with an Amazon S3 bucket as the origin. Read more about Origin Access Control in the CloudFront Developer Guide.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.cloudfront.OriginAccessControl("example", {
name: "example",
description: "Example Policy",
originAccessControlOriginType: "s3",
signingBehavior: "always",
signingProtocol: "sigv4",
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.cloudfront.OriginAccessControl("example",
name="example",
description="Example Policy",
origin_access_control_origin_type="s3",
signing_behavior="always",
signing_protocol="sigv4")
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.CloudFront.OriginAccessControl("example", new()
{
Name = "example",
Description = "Example Policy",
OriginAccessControlOriginType = "s3",
SigningBehavior = "always",
SigningProtocol = "sigv4",
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudfront"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudfront.NewOriginAccessControl(ctx, "example", &cloudfront.OriginAccessControlArgs{
Name: pulumi.String("example"),
Description: pulumi.String("Example Policy"),
OriginAccessControlOriginType: pulumi.String("s3"),
SigningBehavior: pulumi.String("always"),
SigningProtocol: pulumi.String("sigv4"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.cloudfront.OriginAccessControl;
import com.pulumi.aws.cloudfront.OriginAccessControlArgs;
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) {
var example = new OriginAccessControl("example", OriginAccessControlArgs.builder()
.name("example")
.description("Example Policy")
.originAccessControlOriginType("s3")
.signingBehavior("always")
.signingProtocol("sigv4")
.build());
}
}
Content copied to clipboard
resources:
example:
type: aws:cloudfront:OriginAccessControl
properties:
name: example
description: Example Policy
originAccessControlOriginType: s3
signingBehavior: always
signingProtocol: sigv4
Content copied to clipboard
Import
Using pulumi import
, import CloudFront Origin Access Control using the id
. For example:
$ pulumi import aws:cloudfront/originAccessControl:OriginAccessControl example E327GJI25M56DG
Content copied to clipboard
Constructors
Properties
Link copied to clipboard
The description of the Origin Access Control. Defaults to "Managed by Pulumi" if omitted.
Link copied to clipboard
The type of origin that this Origin Access Control is for. Valid values are lambda
, mediapackagev2
, mediastore
, and s3
.
Link copied to clipboard
Specifies which requests CloudFront signs. Specify always
for the most common use case. Allowed values: always
, never
, and no-override
.
Link copied to clipboard
Determines how CloudFront signs (authenticates) requests. The only valid value is sigv4
.