ram

package
v1.15.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 11, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LookupPermissionArgs added in v0.59.0

type LookupPermissionArgs struct {
	// The Amazon Resource Name (ARN) of the new permission.
	Arn string `pulumi:"arn"`
}

type LookupPermissionOutputArgs added in v0.59.0

type LookupPermissionOutputArgs struct {
	// The Amazon Resource Name (ARN) of the new permission.
	Arn pulumi.StringInput `pulumi:"arn"`
}

func (LookupPermissionOutputArgs) ElementType added in v0.59.0

func (LookupPermissionOutputArgs) ElementType() reflect.Type

type LookupPermissionResult added in v0.59.0

type LookupPermissionResult struct {
	// The Amazon Resource Name (ARN) of the new permission.
	Arn *string `pulumi:"arn"`
	// Set to true to use this as the default permission.
	IsResourceTypeDefault *bool `pulumi:"isResourceTypeDefault"`
	// The type of managed permission. This can be one of the following values:
	//
	// - *AWS_MANAGED_PERMISSION* – AWS created and manages this managed permission. You can associate it with your resource shares, but you can't modify it.
	// - *CUSTOMER_MANAGED_PERMISSION* – You, or another principal in your account created this managed permission. You can associate it with your resource shares and create new versions that have different permissions.
	PermissionType *string `pulumi:"permissionType"`
	// Specifies a list of one or more tag key and value pairs to attach to the permission.
	Tags []aws.Tag `pulumi:"tags"`
	// Version of the permission.
	Version *string `pulumi:"version"`
}

func LookupPermission added in v0.59.0

func LookupPermission(ctx *pulumi.Context, args *LookupPermissionArgs, opts ...pulumi.InvokeOption) (*LookupPermissionResult, error)

Resource type definition for AWS::RAM::Permission

type LookupPermissionResultOutput added in v0.59.0

type LookupPermissionResultOutput struct{ *pulumi.OutputState }

func LookupPermissionOutput added in v0.59.0

func (LookupPermissionResultOutput) Arn added in v0.59.0

The Amazon Resource Name (ARN) of the new permission.

func (LookupPermissionResultOutput) ElementType added in v0.59.0

func (LookupPermissionResultOutput) IsResourceTypeDefault added in v0.59.0

func (o LookupPermissionResultOutput) IsResourceTypeDefault() pulumi.BoolPtrOutput

Set to true to use this as the default permission.

func (LookupPermissionResultOutput) PermissionType added in v0.59.0

The type of managed permission. This can be one of the following values:

- *AWS_MANAGED_PERMISSION* – AWS created and manages this managed permission. You can associate it with your resource shares, but you can't modify it. - *CUSTOMER_MANAGED_PERMISSION* – You, or another principal in your account created this managed permission. You can associate it with your resource shares and create new versions that have different permissions.

func (LookupPermissionResultOutput) Tags added in v0.59.0

Specifies a list of one or more tag key and value pairs to attach to the permission.

func (LookupPermissionResultOutput) ToLookupPermissionResultOutput added in v0.59.0

func (o LookupPermissionResultOutput) ToLookupPermissionResultOutput() LookupPermissionResultOutput

func (LookupPermissionResultOutput) ToLookupPermissionResultOutputWithContext added in v0.59.0

func (o LookupPermissionResultOutput) ToLookupPermissionResultOutputWithContext(ctx context.Context) LookupPermissionResultOutput

func (LookupPermissionResultOutput) Version added in v0.59.0

Version of the permission.

type LookupResourceShareArgs added in v0.12.0

type LookupResourceShareArgs struct {
	// The Amazon Resource Name (ARN) of the resource share.
	Arn string `pulumi:"arn"`
}

type LookupResourceShareOutputArgs added in v0.12.0

type LookupResourceShareOutputArgs struct {
	// The Amazon Resource Name (ARN) of the resource share.
	Arn pulumi.StringInput `pulumi:"arn"`
}

func (LookupResourceShareOutputArgs) ElementType added in v0.12.0

type LookupResourceShareResult added in v0.12.0

type LookupResourceShareResult struct {
	// Specifies whether principals outside your organization in AWS Organizations can be associated with a resource share. A value of `true` lets you share with individual AWS accounts that are not in your organization. A value of `false` only has meaning if your account is a member of an AWS Organization. The default value is `true`.
	AllowExternalPrincipals *bool `pulumi:"allowExternalPrincipals"`
	// The Amazon Resource Name (ARN) of the resource share.
	Arn *string `pulumi:"arn"`
	// Specifies the name of the resource share.
	Name *string `pulumi:"name"`
	// Specifies one or more tags to attach to the resource share itself. It doesn't attach the tags to the resources associated with the resource share.
	Tags []aws.Tag `pulumi:"tags"`
}

func LookupResourceShare added in v0.12.0

func LookupResourceShare(ctx *pulumi.Context, args *LookupResourceShareArgs, opts ...pulumi.InvokeOption) (*LookupResourceShareResult, error)

Resource type definition for AWS::RAM::ResourceShare

type LookupResourceShareResultOutput added in v0.12.0

type LookupResourceShareResultOutput struct{ *pulumi.OutputState }

func LookupResourceShareOutput added in v0.12.0

func (LookupResourceShareResultOutput) AllowExternalPrincipals added in v0.12.0

func (o LookupResourceShareResultOutput) AllowExternalPrincipals() pulumi.BoolPtrOutput

Specifies whether principals outside your organization in AWS Organizations can be associated with a resource share. A value of `true` lets you share with individual AWS accounts that are not in your organization. A value of `false` only has meaning if your account is a member of an AWS Organization. The default value is `true`.

func (LookupResourceShareResultOutput) Arn added in v0.12.0

The Amazon Resource Name (ARN) of the resource share.

func (LookupResourceShareResultOutput) ElementType added in v0.12.0

func (LookupResourceShareResultOutput) Name added in v0.12.0

Specifies the name of the resource share.

func (LookupResourceShareResultOutput) Tags added in v0.12.0

Specifies one or more tags to attach to the resource share itself. It doesn't attach the tags to the resources associated with the resource share.

func (LookupResourceShareResultOutput) ToLookupResourceShareResultOutput added in v0.12.0

func (o LookupResourceShareResultOutput) ToLookupResourceShareResultOutput() LookupResourceShareResultOutput

func (LookupResourceShareResultOutput) ToLookupResourceShareResultOutputWithContext added in v0.12.0

func (o LookupResourceShareResultOutput) ToLookupResourceShareResultOutputWithContext(ctx context.Context) LookupResourceShareResultOutput

type Permission added in v0.59.0

type Permission struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the new permission.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Set to true to use this as the default permission.
	IsResourceTypeDefault pulumi.BoolOutput `pulumi:"isResourceTypeDefault"`
	// The name of the permission.
	Name pulumi.StringOutput `pulumi:"name"`
	// The type of managed permission. This can be one of the following values:
	//
	// - *AWS_MANAGED_PERMISSION* – AWS created and manages this managed permission. You can associate it with your resource shares, but you can't modify it.
	// - *CUSTOMER_MANAGED_PERMISSION* – You, or another principal in your account created this managed permission. You can associate it with your resource shares and create new versions that have different permissions.
	PermissionType pulumi.StringOutput `pulumi:"permissionType"`
	// Policy template for the permission.
	//
	// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::RAM::Permission` for more information about the expected schema for this property.
	PolicyTemplate pulumi.AnyOutput `pulumi:"policyTemplate"`
	// The resource type this permission can be used with.
	ResourceType pulumi.StringOutput `pulumi:"resourceType"`
	// Specifies a list of one or more tag key and value pairs to attach to the permission.
	Tags aws.TagArrayOutput `pulumi:"tags"`
	// Version of the permission.
	Version pulumi.StringOutput `pulumi:"version"`
}

Resource type definition for AWS::RAM::Permission

func GetPermission added in v0.59.0

func GetPermission(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PermissionState, opts ...pulumi.ResourceOption) (*Permission, error)

GetPermission gets an existing Permission resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPermission added in v0.59.0

func NewPermission(ctx *pulumi.Context,
	name string, args *PermissionArgs, opts ...pulumi.ResourceOption) (*Permission, error)

NewPermission registers a new resource with the given unique name, arguments, and options.

func (*Permission) ElementType added in v0.59.0

func (*Permission) ElementType() reflect.Type

func (*Permission) ToPermissionOutput added in v0.59.0

func (i *Permission) ToPermissionOutput() PermissionOutput

func (*Permission) ToPermissionOutputWithContext added in v0.59.0

func (i *Permission) ToPermissionOutputWithContext(ctx context.Context) PermissionOutput

type PermissionArgs added in v0.59.0

type PermissionArgs struct {
	// The name of the permission.
	Name pulumi.StringPtrInput
	// Policy template for the permission.
	//
	// Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::RAM::Permission` for more information about the expected schema for this property.
	PolicyTemplate pulumi.Input
	// The resource type this permission can be used with.
	ResourceType pulumi.StringInput
	// Specifies a list of one or more tag key and value pairs to attach to the permission.
	Tags aws.TagArrayInput
}

The set of arguments for constructing a Permission resource.

func (PermissionArgs) ElementType added in v0.59.0

func (PermissionArgs) ElementType() reflect.Type

type PermissionInput added in v0.59.0

type PermissionInput interface {
	pulumi.Input

	ToPermissionOutput() PermissionOutput
	ToPermissionOutputWithContext(ctx context.Context) PermissionOutput
}

type PermissionOutput added in v0.59.0

type PermissionOutput struct{ *pulumi.OutputState }

func (PermissionOutput) Arn added in v0.59.0

The Amazon Resource Name (ARN) of the new permission.

func (PermissionOutput) ElementType added in v0.59.0

func (PermissionOutput) ElementType() reflect.Type

func (PermissionOutput) IsResourceTypeDefault added in v0.59.0

func (o PermissionOutput) IsResourceTypeDefault() pulumi.BoolOutput

Set to true to use this as the default permission.

func (PermissionOutput) Name added in v0.59.0

The name of the permission.

func (PermissionOutput) PermissionType added in v0.59.0

func (o PermissionOutput) PermissionType() pulumi.StringOutput

The type of managed permission. This can be one of the following values:

- *AWS_MANAGED_PERMISSION* – AWS created and manages this managed permission. You can associate it with your resource shares, but you can't modify it. - *CUSTOMER_MANAGED_PERMISSION* – You, or another principal in your account created this managed permission. You can associate it with your resource shares and create new versions that have different permissions.

func (PermissionOutput) PolicyTemplate added in v0.59.0

func (o PermissionOutput) PolicyTemplate() pulumi.AnyOutput

Policy template for the permission.

Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::RAM::Permission` for more information about the expected schema for this property.

func (PermissionOutput) ResourceType added in v0.59.0

func (o PermissionOutput) ResourceType() pulumi.StringOutput

The resource type this permission can be used with.

func (PermissionOutput) Tags added in v0.59.0

Specifies a list of one or more tag key and value pairs to attach to the permission.

func (PermissionOutput) ToPermissionOutput added in v0.59.0

func (o PermissionOutput) ToPermissionOutput() PermissionOutput

func (PermissionOutput) ToPermissionOutputWithContext added in v0.59.0

func (o PermissionOutput) ToPermissionOutputWithContext(ctx context.Context) PermissionOutput

func (PermissionOutput) Version added in v0.59.0

func (o PermissionOutput) Version() pulumi.StringOutput

Version of the permission.

type PermissionState added in v0.59.0

type PermissionState struct {
}

func (PermissionState) ElementType added in v0.59.0

func (PermissionState) ElementType() reflect.Type

type PermissionTag added in v0.59.0

type PermissionTag struct {
	// The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
	Key string `pulumi:"key"`
	// The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
	Value string `pulumi:"value"`
}

type ResourceShare

type ResourceShare struct {
	pulumi.CustomResourceState

	// Specifies whether principals outside your organization in AWS Organizations can be associated with a resource share. A value of `true` lets you share with individual AWS accounts that are not in your organization. A value of `false` only has meaning if your account is a member of an AWS Organization. The default value is `true`.
	AllowExternalPrincipals pulumi.BoolPtrOutput `pulumi:"allowExternalPrincipals"`
	// The Amazon Resource Name (ARN) of the resource share.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Specifies the name of the resource share.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the AWS RAM permission to associate with the resource share. If you do not specify an ARN for the permission, AWS RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.
	PermissionArns pulumi.StringArrayOutput `pulumi:"permissionArns"`
	// Specifies the principals to associate with the resource share. The possible values are:
	//
	// - An AWS account ID
	//
	// - An Amazon Resource Name (ARN) of an organization in AWS Organizations
	//
	// - An ARN of an organizational unit (OU) in AWS Organizations
	//
	// - An ARN of an IAM role
	//
	// - An ARN of an IAM user
	Principals pulumi.StringArrayOutput `pulumi:"principals"`
	// Specifies a list of one or more ARNs of the resources to associate with the resource share.
	ResourceArns pulumi.StringArrayOutput `pulumi:"resourceArns"`
	// Specifies from which source accounts the service principal has access to the resources in this resource share.
	Sources pulumi.StringArrayOutput `pulumi:"sources"`
	// Specifies one or more tags to attach to the resource share itself. It doesn't attach the tags to the resources associated with the resource share.
	Tags aws.TagArrayOutput `pulumi:"tags"`
}

Resource type definition for AWS::RAM::ResourceShare

## Example Usage ### Example

```go package main

import (

awsnative "github.com/pulumi/pulumi-aws-native/sdk/go/aws"
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.NewResourceShare(ctx, "myresourceshare", &ram.ResourceShareArgs{
			Name: pulumi.String("My Resource Share"),
			ResourceArns: pulumi.StringArray{
				pulumi.String("arn:aws:ec2:us-east-1:123456789012:resource-type/12345678-1234-1234-1234-12345678"),
			},
			Principals: pulumi.StringArray{
				pulumi.String("210987654321"),
			},
			Tags: aws.TagArray{
				&aws.TagArgs{
					Key:   pulumi.String("Key1"),
					Value: pulumi.String("Value1"),
				},
				&aws.TagArgs{
					Key:   pulumi.String("Key2"),
					Value: pulumi.String("Value2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Example

```go package main

import (

awsnative "github.com/pulumi/pulumi-aws-native/sdk/go/aws"
"github.com/pulumi/pulumi-aws-native/sdk/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.NewResourceShare(ctx, "myresourceshare", &ram.ResourceShareArgs{
			Name: pulumi.String("My Resource Share"),
			ResourceArns: pulumi.StringArray{
				pulumi.String("arn:aws:ec2:us-east-1:123456789012:resource-type/12345678-1234-1234-1234-12345678"),
			},
			Principals: pulumi.StringArray{
				pulumi.String("210987654321"),
			},
			Tags: aws.TagArray{
				&aws.TagArgs{
					Key:   pulumi.String("Key1"),
					Value: pulumi.String("Value1"),
				},
				&aws.TagArgs{
					Key:   pulumi.String("Key2"),
					Value: pulumi.String("Value2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetResourceShare

func GetResourceShare(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceShareState, opts ...pulumi.ResourceOption) (*ResourceShare, error)

GetResourceShare gets an existing ResourceShare resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResourceShare

func NewResourceShare(ctx *pulumi.Context,
	name string, args *ResourceShareArgs, opts ...pulumi.ResourceOption) (*ResourceShare, error)

NewResourceShare registers a new resource with the given unique name, arguments, and options.

func (*ResourceShare) ElementType

func (*ResourceShare) ElementType() reflect.Type

func (*ResourceShare) ToResourceShareOutput

func (i *ResourceShare) ToResourceShareOutput() ResourceShareOutput

func (*ResourceShare) ToResourceShareOutputWithContext

func (i *ResourceShare) ToResourceShareOutputWithContext(ctx context.Context) ResourceShareOutput

type ResourceShareArgs

type ResourceShareArgs struct {
	// Specifies whether principals outside your organization in AWS Organizations can be associated with a resource share. A value of `true` lets you share with individual AWS accounts that are not in your organization. A value of `false` only has meaning if your account is a member of an AWS Organization. The default value is `true`.
	AllowExternalPrincipals pulumi.BoolPtrInput
	// Specifies the name of the resource share.
	Name pulumi.StringPtrInput
	// Specifies the [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the AWS RAM permission to associate with the resource share. If you do not specify an ARN for the permission, AWS RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.
	PermissionArns pulumi.StringArrayInput
	// Specifies the principals to associate with the resource share. The possible values are:
	//
	// - An AWS account ID
	//
	// - An Amazon Resource Name (ARN) of an organization in AWS Organizations
	//
	// - An ARN of an organizational unit (OU) in AWS Organizations
	//
	// - An ARN of an IAM role
	//
	// - An ARN of an IAM user
	Principals pulumi.StringArrayInput
	// Specifies a list of one or more ARNs of the resources to associate with the resource share.
	ResourceArns pulumi.StringArrayInput
	// Specifies from which source accounts the service principal has access to the resources in this resource share.
	Sources pulumi.StringArrayInput
	// Specifies one or more tags to attach to the resource share itself. It doesn't attach the tags to the resources associated with the resource share.
	Tags aws.TagArrayInput
}

The set of arguments for constructing a ResourceShare resource.

func (ResourceShareArgs) ElementType

func (ResourceShareArgs) ElementType() reflect.Type

type ResourceShareInput

type ResourceShareInput interface {
	pulumi.Input

	ToResourceShareOutput() ResourceShareOutput
	ToResourceShareOutputWithContext(ctx context.Context) ResourceShareOutput
}

type ResourceShareOutput

type ResourceShareOutput struct{ *pulumi.OutputState }

func (ResourceShareOutput) AllowExternalPrincipals added in v0.17.0

func (o ResourceShareOutput) AllowExternalPrincipals() pulumi.BoolPtrOutput

Specifies whether principals outside your organization in AWS Organizations can be associated with a resource share. A value of `true` lets you share with individual AWS accounts that are not in your organization. A value of `false` only has meaning if your account is a member of an AWS Organization. The default value is `true`.

func (ResourceShareOutput) Arn added in v0.17.0

The Amazon Resource Name (ARN) of the resource share.

func (ResourceShareOutput) ElementType

func (ResourceShareOutput) ElementType() reflect.Type

func (ResourceShareOutput) Name added in v0.17.0

Specifies the name of the resource share.

func (ResourceShareOutput) PermissionArns added in v0.17.0

func (o ResourceShareOutput) PermissionArns() pulumi.StringArrayOutput

Specifies the [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the AWS RAM permission to associate with the resource share. If you do not specify an ARN for the permission, AWS RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.

func (ResourceShareOutput) Principals added in v0.17.0

Specifies the principals to associate with the resource share. The possible values are:

- An AWS account ID

- An Amazon Resource Name (ARN) of an organization in AWS Organizations

- An ARN of an organizational unit (OU) in AWS Organizations

- An ARN of an IAM role

- An ARN of an IAM user

func (ResourceShareOutput) ResourceArns added in v0.17.0

func (o ResourceShareOutput) ResourceArns() pulumi.StringArrayOutput

Specifies a list of one or more ARNs of the resources to associate with the resource share.

func (ResourceShareOutput) Sources added in v0.76.0

Specifies from which source accounts the service principal has access to the resources in this resource share.

func (ResourceShareOutput) Tags added in v0.17.0

Specifies one or more tags to attach to the resource share itself. It doesn't attach the tags to the resources associated with the resource share.

func (ResourceShareOutput) ToResourceShareOutput

func (o ResourceShareOutput) ToResourceShareOutput() ResourceShareOutput

func (ResourceShareOutput) ToResourceShareOutputWithContext

func (o ResourceShareOutput) ToResourceShareOutputWithContext(ctx context.Context) ResourceShareOutput

type ResourceShareState

type ResourceShareState struct {
}

func (ResourceShareState) ElementType

func (ResourceShareState) ElementType() reflect.Type

type ResourceShareTag

type ResourceShareTag struct {
	// The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
	Key string `pulumi:"key"`
	// The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
	Value string `pulumi:"value"`
}

A key-value pair to associate with a resource.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL