projects

package
v6.67.1 Latest Latest
Warning

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

Go to latest
Published: Nov 4, 2023 License: Apache-2.0 Imports: 8 Imported by: 10

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessApprovalSettings

type AccessApprovalSettings struct {
	pulumi.CustomResourceState

	// The asymmetric crypto key version to use for signing approval requests.
	// Empty activeKeyVersion indicates that a Google-managed key should be used for signing.
	// This property will be ignored if set by an ancestor of the resource, and new non-empty values may not be set.
	ActiveKeyVersion pulumi.StringPtrOutput `pulumi:"activeKeyVersion"`
	// If the field is true, that indicates that an ancestor of this Project has set active_key_version.
	AncestorHasActiveKeyVersion pulumi.BoolOutput `pulumi:"ancestorHasActiveKeyVersion"`
	// If the field is true, that indicates that at least one service is enrolled for Access Approval in one or more ancestors of the Project.
	EnrolledAncestor pulumi.BoolOutput `pulumi:"enrolledAncestor"`
	// A list of Google Cloud Services for which the given resource has Access Approval enrolled.
	// Access requests for the resource given by name against any of these services contained here will be required
	// to have explicit approval. Enrollment can only be done on an all or nothing basis.
	// A maximum of 10 enrolled services will be enforced, to be expanded as the set of supported services is expanded.
	// Structure is documented below.
	EnrolledServices AccessApprovalSettingsEnrolledServiceArrayOutput `pulumi:"enrolledServices"`
	// If the field is true, that indicates that there is some configuration issue with the activeKeyVersion
	// configured on this Project (e.g. it doesn't exist or the Access Approval service account doesn't have the
	// correct permissions on it, etc.) This key version is not necessarily the effective key version at this level,
	// as key versions are inherited top-down.
	InvalidKeyVersion pulumi.BoolOutput `pulumi:"invalidKeyVersion"`
	// The resource name of the settings. Format is "projects/{project_id}/accessApprovalSettings"
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of email addresses to which notifications relating to approval requests should be sent.
	// Notifications relating to a resource will be sent to all emails in the settings of ancestor
	// resources of that resource. A maximum of 50 email addresses are allowed.
	NotificationEmails pulumi.StringArrayOutput `pulumi:"notificationEmails"`
	// (Optional, Deprecated)
	// Project id.
	//
	// > **Warning:** `project` is deprecated and will be removed in a future major release. Use `projectId` instead.
	//
	// Deprecated: `project` is deprecated and will be removed in a future major release. Use `project_id` instead.
	Project pulumi.StringPtrOutput `pulumi:"project"`
	// ID of the project of the access approval settings.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
}

Access Approval enables you to require your explicit approval whenever Google support and engineering need to access your customer content.

To get more information about ProjectSettings, see:

* [API documentation](https://cloud.google.com/access-approval/docs/reference/rest/v1/projects)

## Example Usage ### Project Access Approval Full

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewAccessApprovalSettings(ctx, "projectAccessApproval", &projects.AccessApprovalSettingsArgs{
			EnrolledServices: projects.AccessApprovalSettingsEnrolledServiceArray{
				&projects.AccessApprovalSettingsEnrolledServiceArgs{
					CloudProduct:    pulumi.String("all"),
					EnrollmentLevel: pulumi.String("BLOCK_ALL"),
				},
			},
			NotificationEmails: pulumi.StringArray{
				pulumi.String("testuser@example.com"),
				pulumi.String("example.user@example.com"),
			},
			ProjectId: pulumi.String("my-project-name"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Project Access Approval Active Key Version

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/accessapproval"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/kms"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		keyRing, err := kms.NewKeyRing(ctx, "keyRing", &kms.KeyRingArgs{
			Location: pulumi.String("global"),
			Project:  pulumi.String("my-project-name"),
		})
		if err != nil {
			return err
		}
		cryptoKey, err := kms.NewCryptoKey(ctx, "cryptoKey", &kms.CryptoKeyArgs{
			KeyRing: keyRing.ID(),
			Purpose: pulumi.String("ASYMMETRIC_SIGN"),
			VersionTemplate: &kms.CryptoKeyVersionTemplateArgs{
				Algorithm: pulumi.String("EC_SIGN_P384_SHA384"),
			},
		})
		if err != nil {
			return err
		}
		serviceAccount, err := accessapproval.GetProjectServiceAccount(ctx, &accessapproval.GetProjectServiceAccountArgs{
			ProjectId: "my-project-name",
		}, nil)
		if err != nil {
			return err
		}
		iam, err := kms.NewCryptoKeyIAMMember(ctx, "iam", &kms.CryptoKeyIAMMemberArgs{
			CryptoKeyId: cryptoKey.ID(),
			Role:        pulumi.String("roles/cloudkms.signerVerifier"),
			Member:      pulumi.String(fmt.Sprintf("serviceAccount:%v", serviceAccount.AccountEmail)),
		})
		if err != nil {
			return err
		}
		cryptoKeyVersion := kms.GetKMSCryptoKeyVersionOutput(ctx, kms.GetKMSCryptoKeyVersionOutputArgs{
			CryptoKey: cryptoKey.ID(),
		}, nil)
		_, err = projects.NewAccessApprovalSettings(ctx, "projectAccessApproval", &projects.AccessApprovalSettingsArgs{
			ProjectId: pulumi.String("my-project-name"),
			ActiveKeyVersion: cryptoKeyVersion.ApplyT(func(cryptoKeyVersion kms.GetKMSCryptoKeyVersionResult) (*string, error) {
				return &cryptoKeyVersion.Name, nil
			}).(pulumi.StringPtrOutput),
			EnrolledServices: projects.AccessApprovalSettingsEnrolledServiceArray{
				&projects.AccessApprovalSettingsEnrolledServiceArgs{
					CloudProduct: pulumi.String("all"),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			iam,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ProjectSettings can be imported using any of these accepted formats

```sh

$ pulumi import gcp:projects/accessApprovalSettings:AccessApprovalSettings default projects/{{project_id}}/accessApprovalSettings

```

```sh

$ pulumi import gcp:projects/accessApprovalSettings:AccessApprovalSettings default {{project_id}}

```

func GetAccessApprovalSettings

func GetAccessApprovalSettings(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccessApprovalSettingsState, opts ...pulumi.ResourceOption) (*AccessApprovalSettings, error)

GetAccessApprovalSettings gets an existing AccessApprovalSettings 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 NewAccessApprovalSettings

func NewAccessApprovalSettings(ctx *pulumi.Context,
	name string, args *AccessApprovalSettingsArgs, opts ...pulumi.ResourceOption) (*AccessApprovalSettings, error)

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

func (*AccessApprovalSettings) ElementType

func (*AccessApprovalSettings) ElementType() reflect.Type

func (*AccessApprovalSettings) ToAccessApprovalSettingsOutput

func (i *AccessApprovalSettings) ToAccessApprovalSettingsOutput() AccessApprovalSettingsOutput

func (*AccessApprovalSettings) ToAccessApprovalSettingsOutputWithContext

func (i *AccessApprovalSettings) ToAccessApprovalSettingsOutputWithContext(ctx context.Context) AccessApprovalSettingsOutput

func (*AccessApprovalSettings) ToOutput added in v6.65.1

type AccessApprovalSettingsArgs

type AccessApprovalSettingsArgs struct {
	// The asymmetric crypto key version to use for signing approval requests.
	// Empty activeKeyVersion indicates that a Google-managed key should be used for signing.
	// This property will be ignored if set by an ancestor of the resource, and new non-empty values may not be set.
	ActiveKeyVersion pulumi.StringPtrInput
	// A list of Google Cloud Services for which the given resource has Access Approval enrolled.
	// Access requests for the resource given by name against any of these services contained here will be required
	// to have explicit approval. Enrollment can only be done on an all or nothing basis.
	// A maximum of 10 enrolled services will be enforced, to be expanded as the set of supported services is expanded.
	// Structure is documented below.
	EnrolledServices AccessApprovalSettingsEnrolledServiceArrayInput
	// A list of email addresses to which notifications relating to approval requests should be sent.
	// Notifications relating to a resource will be sent to all emails in the settings of ancestor
	// resources of that resource. A maximum of 50 email addresses are allowed.
	NotificationEmails pulumi.StringArrayInput
	// (Optional, Deprecated)
	// Project id.
	//
	// > **Warning:** `project` is deprecated and will be removed in a future major release. Use `projectId` instead.
	//
	// Deprecated: `project` is deprecated and will be removed in a future major release. Use `project_id` instead.
	Project pulumi.StringPtrInput
	// ID of the project of the access approval settings.
	ProjectId pulumi.StringInput
}

The set of arguments for constructing a AccessApprovalSettings resource.

func (AccessApprovalSettingsArgs) ElementType

func (AccessApprovalSettingsArgs) ElementType() reflect.Type

type AccessApprovalSettingsArray

type AccessApprovalSettingsArray []AccessApprovalSettingsInput

func (AccessApprovalSettingsArray) ElementType

func (AccessApprovalSettingsArray) ToAccessApprovalSettingsArrayOutput

func (i AccessApprovalSettingsArray) ToAccessApprovalSettingsArrayOutput() AccessApprovalSettingsArrayOutput

func (AccessApprovalSettingsArray) ToAccessApprovalSettingsArrayOutputWithContext

func (i AccessApprovalSettingsArray) ToAccessApprovalSettingsArrayOutputWithContext(ctx context.Context) AccessApprovalSettingsArrayOutput

func (AccessApprovalSettingsArray) ToOutput added in v6.65.1

type AccessApprovalSettingsArrayInput

type AccessApprovalSettingsArrayInput interface {
	pulumi.Input

	ToAccessApprovalSettingsArrayOutput() AccessApprovalSettingsArrayOutput
	ToAccessApprovalSettingsArrayOutputWithContext(context.Context) AccessApprovalSettingsArrayOutput
}

AccessApprovalSettingsArrayInput is an input type that accepts AccessApprovalSettingsArray and AccessApprovalSettingsArrayOutput values. You can construct a concrete instance of `AccessApprovalSettingsArrayInput` via:

AccessApprovalSettingsArray{ AccessApprovalSettingsArgs{...} }

type AccessApprovalSettingsArrayOutput

type AccessApprovalSettingsArrayOutput struct{ *pulumi.OutputState }

func (AccessApprovalSettingsArrayOutput) ElementType

func (AccessApprovalSettingsArrayOutput) Index

func (AccessApprovalSettingsArrayOutput) ToAccessApprovalSettingsArrayOutput

func (o AccessApprovalSettingsArrayOutput) ToAccessApprovalSettingsArrayOutput() AccessApprovalSettingsArrayOutput

func (AccessApprovalSettingsArrayOutput) ToAccessApprovalSettingsArrayOutputWithContext

func (o AccessApprovalSettingsArrayOutput) ToAccessApprovalSettingsArrayOutputWithContext(ctx context.Context) AccessApprovalSettingsArrayOutput

func (AccessApprovalSettingsArrayOutput) ToOutput added in v6.65.1

type AccessApprovalSettingsEnrolledService

type AccessApprovalSettingsEnrolledService struct {
	// The product for which Access Approval will be enrolled. Allowed values are listed (case-sensitive):
	// all
	// appengine.googleapis.com
	// bigquery.googleapis.com
	// bigtable.googleapis.com
	// cloudkms.googleapis.com
	// compute.googleapis.com
	// dataflow.googleapis.com
	// iam.googleapis.com
	// pubsub.googleapis.com
	// storage.googleapis.com
	CloudProduct string `pulumi:"cloudProduct"`
	// The enrollment level of the service.
	// Default value is `BLOCK_ALL`.
	// Possible values are: `BLOCK_ALL`.
	//
	// ***
	EnrollmentLevel *string `pulumi:"enrollmentLevel"`
}

type AccessApprovalSettingsEnrolledServiceArgs

type AccessApprovalSettingsEnrolledServiceArgs struct {
	// The product for which Access Approval will be enrolled. Allowed values are listed (case-sensitive):
	// all
	// appengine.googleapis.com
	// bigquery.googleapis.com
	// bigtable.googleapis.com
	// cloudkms.googleapis.com
	// compute.googleapis.com
	// dataflow.googleapis.com
	// iam.googleapis.com
	// pubsub.googleapis.com
	// storage.googleapis.com
	CloudProduct pulumi.StringInput `pulumi:"cloudProduct"`
	// The enrollment level of the service.
	// Default value is `BLOCK_ALL`.
	// Possible values are: `BLOCK_ALL`.
	//
	// ***
	EnrollmentLevel pulumi.StringPtrInput `pulumi:"enrollmentLevel"`
}

func (AccessApprovalSettingsEnrolledServiceArgs) ElementType

func (AccessApprovalSettingsEnrolledServiceArgs) ToAccessApprovalSettingsEnrolledServiceOutput

func (i AccessApprovalSettingsEnrolledServiceArgs) ToAccessApprovalSettingsEnrolledServiceOutput() AccessApprovalSettingsEnrolledServiceOutput

func (AccessApprovalSettingsEnrolledServiceArgs) ToAccessApprovalSettingsEnrolledServiceOutputWithContext

func (i AccessApprovalSettingsEnrolledServiceArgs) ToAccessApprovalSettingsEnrolledServiceOutputWithContext(ctx context.Context) AccessApprovalSettingsEnrolledServiceOutput

func (AccessApprovalSettingsEnrolledServiceArgs) ToOutput added in v6.65.1

type AccessApprovalSettingsEnrolledServiceArray

type AccessApprovalSettingsEnrolledServiceArray []AccessApprovalSettingsEnrolledServiceInput

func (AccessApprovalSettingsEnrolledServiceArray) ElementType

func (AccessApprovalSettingsEnrolledServiceArray) ToAccessApprovalSettingsEnrolledServiceArrayOutput

func (i AccessApprovalSettingsEnrolledServiceArray) ToAccessApprovalSettingsEnrolledServiceArrayOutput() AccessApprovalSettingsEnrolledServiceArrayOutput

func (AccessApprovalSettingsEnrolledServiceArray) ToAccessApprovalSettingsEnrolledServiceArrayOutputWithContext

func (i AccessApprovalSettingsEnrolledServiceArray) ToAccessApprovalSettingsEnrolledServiceArrayOutputWithContext(ctx context.Context) AccessApprovalSettingsEnrolledServiceArrayOutput

func (AccessApprovalSettingsEnrolledServiceArray) ToOutput added in v6.65.1

type AccessApprovalSettingsEnrolledServiceArrayInput

type AccessApprovalSettingsEnrolledServiceArrayInput interface {
	pulumi.Input

	ToAccessApprovalSettingsEnrolledServiceArrayOutput() AccessApprovalSettingsEnrolledServiceArrayOutput
	ToAccessApprovalSettingsEnrolledServiceArrayOutputWithContext(context.Context) AccessApprovalSettingsEnrolledServiceArrayOutput
}

AccessApprovalSettingsEnrolledServiceArrayInput is an input type that accepts AccessApprovalSettingsEnrolledServiceArray and AccessApprovalSettingsEnrolledServiceArrayOutput values. You can construct a concrete instance of `AccessApprovalSettingsEnrolledServiceArrayInput` via:

AccessApprovalSettingsEnrolledServiceArray{ AccessApprovalSettingsEnrolledServiceArgs{...} }

type AccessApprovalSettingsEnrolledServiceArrayOutput

type AccessApprovalSettingsEnrolledServiceArrayOutput struct{ *pulumi.OutputState }

func (AccessApprovalSettingsEnrolledServiceArrayOutput) ElementType

func (AccessApprovalSettingsEnrolledServiceArrayOutput) Index

func (AccessApprovalSettingsEnrolledServiceArrayOutput) ToAccessApprovalSettingsEnrolledServiceArrayOutput

func (o AccessApprovalSettingsEnrolledServiceArrayOutput) ToAccessApprovalSettingsEnrolledServiceArrayOutput() AccessApprovalSettingsEnrolledServiceArrayOutput

func (AccessApprovalSettingsEnrolledServiceArrayOutput) ToAccessApprovalSettingsEnrolledServiceArrayOutputWithContext

func (o AccessApprovalSettingsEnrolledServiceArrayOutput) ToAccessApprovalSettingsEnrolledServiceArrayOutputWithContext(ctx context.Context) AccessApprovalSettingsEnrolledServiceArrayOutput

func (AccessApprovalSettingsEnrolledServiceArrayOutput) ToOutput added in v6.65.1

type AccessApprovalSettingsEnrolledServiceInput

type AccessApprovalSettingsEnrolledServiceInput interface {
	pulumi.Input

	ToAccessApprovalSettingsEnrolledServiceOutput() AccessApprovalSettingsEnrolledServiceOutput
	ToAccessApprovalSettingsEnrolledServiceOutputWithContext(context.Context) AccessApprovalSettingsEnrolledServiceOutput
}

AccessApprovalSettingsEnrolledServiceInput is an input type that accepts AccessApprovalSettingsEnrolledServiceArgs and AccessApprovalSettingsEnrolledServiceOutput values. You can construct a concrete instance of `AccessApprovalSettingsEnrolledServiceInput` via:

AccessApprovalSettingsEnrolledServiceArgs{...}

type AccessApprovalSettingsEnrolledServiceOutput

type AccessApprovalSettingsEnrolledServiceOutput struct{ *pulumi.OutputState }

func (AccessApprovalSettingsEnrolledServiceOutput) CloudProduct

The product for which Access Approval will be enrolled. Allowed values are listed (case-sensitive): all appengine.googleapis.com bigquery.googleapis.com bigtable.googleapis.com cloudkms.googleapis.com compute.googleapis.com dataflow.googleapis.com iam.googleapis.com pubsub.googleapis.com storage.googleapis.com

func (AccessApprovalSettingsEnrolledServiceOutput) ElementType

func (AccessApprovalSettingsEnrolledServiceOutput) EnrollmentLevel

The enrollment level of the service. Default value is `BLOCK_ALL`. Possible values are: `BLOCK_ALL`.

***

func (AccessApprovalSettingsEnrolledServiceOutput) ToAccessApprovalSettingsEnrolledServiceOutput

func (o AccessApprovalSettingsEnrolledServiceOutput) ToAccessApprovalSettingsEnrolledServiceOutput() AccessApprovalSettingsEnrolledServiceOutput

func (AccessApprovalSettingsEnrolledServiceOutput) ToAccessApprovalSettingsEnrolledServiceOutputWithContext

func (o AccessApprovalSettingsEnrolledServiceOutput) ToAccessApprovalSettingsEnrolledServiceOutputWithContext(ctx context.Context) AccessApprovalSettingsEnrolledServiceOutput

func (AccessApprovalSettingsEnrolledServiceOutput) ToOutput added in v6.65.1

type AccessApprovalSettingsInput

type AccessApprovalSettingsInput interface {
	pulumi.Input

	ToAccessApprovalSettingsOutput() AccessApprovalSettingsOutput
	ToAccessApprovalSettingsOutputWithContext(ctx context.Context) AccessApprovalSettingsOutput
}

type AccessApprovalSettingsMap

type AccessApprovalSettingsMap map[string]AccessApprovalSettingsInput

func (AccessApprovalSettingsMap) ElementType

func (AccessApprovalSettingsMap) ElementType() reflect.Type

func (AccessApprovalSettingsMap) ToAccessApprovalSettingsMapOutput

func (i AccessApprovalSettingsMap) ToAccessApprovalSettingsMapOutput() AccessApprovalSettingsMapOutput

func (AccessApprovalSettingsMap) ToAccessApprovalSettingsMapOutputWithContext

func (i AccessApprovalSettingsMap) ToAccessApprovalSettingsMapOutputWithContext(ctx context.Context) AccessApprovalSettingsMapOutput

func (AccessApprovalSettingsMap) ToOutput added in v6.65.1

type AccessApprovalSettingsMapInput

type AccessApprovalSettingsMapInput interface {
	pulumi.Input

	ToAccessApprovalSettingsMapOutput() AccessApprovalSettingsMapOutput
	ToAccessApprovalSettingsMapOutputWithContext(context.Context) AccessApprovalSettingsMapOutput
}

AccessApprovalSettingsMapInput is an input type that accepts AccessApprovalSettingsMap and AccessApprovalSettingsMapOutput values. You can construct a concrete instance of `AccessApprovalSettingsMapInput` via:

AccessApprovalSettingsMap{ "key": AccessApprovalSettingsArgs{...} }

type AccessApprovalSettingsMapOutput

type AccessApprovalSettingsMapOutput struct{ *pulumi.OutputState }

func (AccessApprovalSettingsMapOutput) ElementType

func (AccessApprovalSettingsMapOutput) MapIndex

func (AccessApprovalSettingsMapOutput) ToAccessApprovalSettingsMapOutput

func (o AccessApprovalSettingsMapOutput) ToAccessApprovalSettingsMapOutput() AccessApprovalSettingsMapOutput

func (AccessApprovalSettingsMapOutput) ToAccessApprovalSettingsMapOutputWithContext

func (o AccessApprovalSettingsMapOutput) ToAccessApprovalSettingsMapOutputWithContext(ctx context.Context) AccessApprovalSettingsMapOutput

func (AccessApprovalSettingsMapOutput) ToOutput added in v6.65.1

type AccessApprovalSettingsOutput

type AccessApprovalSettingsOutput struct{ *pulumi.OutputState }

func (AccessApprovalSettingsOutput) ActiveKeyVersion added in v6.23.0

The asymmetric crypto key version to use for signing approval requests. Empty activeKeyVersion indicates that a Google-managed key should be used for signing. This property will be ignored if set by an ancestor of the resource, and new non-empty values may not be set.

func (AccessApprovalSettingsOutput) AncestorHasActiveKeyVersion added in v6.23.0

func (o AccessApprovalSettingsOutput) AncestorHasActiveKeyVersion() pulumi.BoolOutput

If the field is true, that indicates that an ancestor of this Project has set active_key_version.

func (AccessApprovalSettingsOutput) ElementType

func (AccessApprovalSettingsOutput) EnrolledAncestor added in v6.23.0

func (o AccessApprovalSettingsOutput) EnrolledAncestor() pulumi.BoolOutput

If the field is true, that indicates that at least one service is enrolled for Access Approval in one or more ancestors of the Project.

func (AccessApprovalSettingsOutput) EnrolledServices added in v6.23.0

A list of Google Cloud Services for which the given resource has Access Approval enrolled. Access requests for the resource given by name against any of these services contained here will be required to have explicit approval. Enrollment can only be done on an all or nothing basis. A maximum of 10 enrolled services will be enforced, to be expanded as the set of supported services is expanded. Structure is documented below.

func (AccessApprovalSettingsOutput) InvalidKeyVersion added in v6.23.0

func (o AccessApprovalSettingsOutput) InvalidKeyVersion() pulumi.BoolOutput

If the field is true, that indicates that there is some configuration issue with the activeKeyVersion configured on this Project (e.g. it doesn't exist or the Access Approval service account doesn't have the correct permissions on it, etc.) This key version is not necessarily the effective key version at this level, as key versions are inherited top-down.

func (AccessApprovalSettingsOutput) Name added in v6.23.0

The resource name of the settings. Format is "projects/{project_id}/accessApprovalSettings"

func (AccessApprovalSettingsOutput) NotificationEmails added in v6.23.0

func (o AccessApprovalSettingsOutput) NotificationEmails() pulumi.StringArrayOutput

A list of email addresses to which notifications relating to approval requests should be sent. Notifications relating to a resource will be sent to all emails in the settings of ancestor resources of that resource. A maximum of 50 email addresses are allowed.

func (AccessApprovalSettingsOutput) Project deprecated added in v6.23.0

(Optional, Deprecated) Project id.

> **Warning:** `project` is deprecated and will be removed in a future major release. Use `projectId` instead.

Deprecated: `project` is deprecated and will be removed in a future major release. Use `project_id` instead.

func (AccessApprovalSettingsOutput) ProjectId added in v6.23.0

ID of the project of the access approval settings.

func (AccessApprovalSettingsOutput) ToAccessApprovalSettingsOutput

func (o AccessApprovalSettingsOutput) ToAccessApprovalSettingsOutput() AccessApprovalSettingsOutput

func (AccessApprovalSettingsOutput) ToAccessApprovalSettingsOutputWithContext

func (o AccessApprovalSettingsOutput) ToAccessApprovalSettingsOutputWithContext(ctx context.Context) AccessApprovalSettingsOutput

func (AccessApprovalSettingsOutput) ToOutput added in v6.65.1

type AccessApprovalSettingsState

type AccessApprovalSettingsState struct {
	// The asymmetric crypto key version to use for signing approval requests.
	// Empty activeKeyVersion indicates that a Google-managed key should be used for signing.
	// This property will be ignored if set by an ancestor of the resource, and new non-empty values may not be set.
	ActiveKeyVersion pulumi.StringPtrInput
	// If the field is true, that indicates that an ancestor of this Project has set active_key_version.
	AncestorHasActiveKeyVersion pulumi.BoolPtrInput
	// If the field is true, that indicates that at least one service is enrolled for Access Approval in one or more ancestors of the Project.
	EnrolledAncestor pulumi.BoolPtrInput
	// A list of Google Cloud Services for which the given resource has Access Approval enrolled.
	// Access requests for the resource given by name against any of these services contained here will be required
	// to have explicit approval. Enrollment can only be done on an all or nothing basis.
	// A maximum of 10 enrolled services will be enforced, to be expanded as the set of supported services is expanded.
	// Structure is documented below.
	EnrolledServices AccessApprovalSettingsEnrolledServiceArrayInput
	// If the field is true, that indicates that there is some configuration issue with the activeKeyVersion
	// configured on this Project (e.g. it doesn't exist or the Access Approval service account doesn't have the
	// correct permissions on it, etc.) This key version is not necessarily the effective key version at this level,
	// as key versions are inherited top-down.
	InvalidKeyVersion pulumi.BoolPtrInput
	// The resource name of the settings. Format is "projects/{project_id}/accessApprovalSettings"
	Name pulumi.StringPtrInput
	// A list of email addresses to which notifications relating to approval requests should be sent.
	// Notifications relating to a resource will be sent to all emails in the settings of ancestor
	// resources of that resource. A maximum of 50 email addresses are allowed.
	NotificationEmails pulumi.StringArrayInput
	// (Optional, Deprecated)
	// Project id.
	//
	// > **Warning:** `project` is deprecated and will be removed in a future major release. Use `projectId` instead.
	//
	// Deprecated: `project` is deprecated and will be removed in a future major release. Use `project_id` instead.
	Project pulumi.StringPtrInput
	// ID of the project of the access approval settings.
	ProjectId pulumi.StringPtrInput
}

func (AccessApprovalSettingsState) ElementType

type ApiKey added in v6.16.0

type ApiKey struct {
	pulumi.CustomResourceState

	// Human-readable display name of this API key. Modifiable by user.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Output only. An encrypted and signed value held by this key. This field can be accessed only through the `GetKeyString` method.
	KeyString pulumi.StringOutput `pulumi:"keyString"`
	// The resource name of the key. The name must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. In another word, the name must match the regular expression: `a-z?`.
	Name pulumi.StringOutput `pulumi:"name"`
	// The project for the resource
	Project pulumi.StringOutput `pulumi:"project"`
	// Key restrictions.
	Restrictions ApiKeyRestrictionsPtrOutput `pulumi:"restrictions"`
	// Output only. Unique id in UUID4 format.
	Uid pulumi.StringOutput `pulumi:"uid"`
}

The Apikeys Key resource

## Example Usage ### Android_key A basic example of a android api keys key ```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		basic, err := organizations.NewProject(ctx, "basic", &organizations.ProjectArgs{
			ProjectId: pulumi.String("app"),
			OrgId:     pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewApiKey(ctx, "primary", &projects.ApiKeyArgs{
			DisplayName: pulumi.String("sample-key"),
			Project:     basic.Name,
			Restrictions: &projects.ApiKeyRestrictionsArgs{
				AndroidKeyRestrictions: &projects.ApiKeyRestrictionsAndroidKeyRestrictionsArgs{
					AllowedApplications: projects.ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray{
						&projects.ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs{
							PackageName:     pulumi.String("com.example.app123"),
							Sha1Fingerprint: pulumi.String("1699466a142d4682a5f91b50fdf400f2358e2b0b"),
						},
					},
				},
				ApiTargets: projects.ApiKeyRestrictionsApiTargetArray{
					&projects.ApiKeyRestrictionsApiTargetArgs{
						Service: pulumi.String("translate.googleapis.com"),
						Methods: pulumi.StringArray{
							pulumi.String("GET*"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Basic_key A basic example of a api keys key ```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		basic, err := organizations.NewProject(ctx, "basic", &organizations.ProjectArgs{
			ProjectId: pulumi.String("app"),
			OrgId:     pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewApiKey(ctx, "primary", &projects.ApiKeyArgs{
			DisplayName: pulumi.String("sample-key"),
			Project:     basic.Name,
			Restrictions: &projects.ApiKeyRestrictionsArgs{
				ApiTargets: projects.ApiKeyRestrictionsApiTargetArray{
					&projects.ApiKeyRestrictionsApiTargetArgs{
						Service: pulumi.String("translate.googleapis.com"),
						Methods: pulumi.StringArray{
							pulumi.String("GET*"),
						},
					},
				},
				BrowserKeyRestrictions: &projects.ApiKeyRestrictionsBrowserKeyRestrictionsArgs{
					AllowedReferrers: pulumi.StringArray{
						pulumi.String(".*"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Ios_key A basic example of a ios api keys key ```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		basic, err := organizations.NewProject(ctx, "basic", &organizations.ProjectArgs{
			ProjectId: pulumi.String("app"),
			OrgId:     pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewApiKey(ctx, "primary", &projects.ApiKeyArgs{
			DisplayName: pulumi.String("sample-key"),
			Project:     basic.Name,
			Restrictions: &projects.ApiKeyRestrictionsArgs{
				ApiTargets: projects.ApiKeyRestrictionsApiTargetArray{
					&projects.ApiKeyRestrictionsApiTargetArgs{
						Service: pulumi.String("translate.googleapis.com"),
						Methods: pulumi.StringArray{
							pulumi.String("GET*"),
						},
					},
				},
				IosKeyRestrictions: &projects.ApiKeyRestrictionsIosKeyRestrictionsArgs{
					AllowedBundleIds: pulumi.StringArray{
						pulumi.String("com.google.app.macos"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Minimal_key A minimal example of a api keys key ```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		basic, err := organizations.NewProject(ctx, "basic", &organizations.ProjectArgs{
			ProjectId: pulumi.String("app"),
			OrgId:     pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewApiKey(ctx, "primary", &projects.ApiKeyArgs{
			DisplayName: pulumi.String("sample-key"),
			Project:     basic.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Server_key A basic example of a server api keys key ```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		basic, err := organizations.NewProject(ctx, "basic", &organizations.ProjectArgs{
			ProjectId: pulumi.String("app"),
			OrgId:     pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewApiKey(ctx, "primary", &projects.ApiKeyArgs{
			DisplayName: pulumi.String("sample-key"),
			Project:     basic.Name,
			Restrictions: &projects.ApiKeyRestrictionsArgs{
				ApiTargets: projects.ApiKeyRestrictionsApiTargetArray{
					&projects.ApiKeyRestrictionsApiTargetArgs{
						Service: pulumi.String("translate.googleapis.com"),
						Methods: pulumi.StringArray{
							pulumi.String("GET*"),
						},
					},
				},
				ServerKeyRestrictions: &projects.ApiKeyRestrictionsServerKeyRestrictionsArgs{
					AllowedIps: pulumi.StringArray{
						pulumi.String("127.0.0.1"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Key can be imported using any of these accepted formats

```sh

$ pulumi import gcp:projects/apiKey:ApiKey default projects/{{project}}/locations/global/keys/{{name}}

```

```sh

$ pulumi import gcp:projects/apiKey:ApiKey default {{project}}/{{name}}

```

```sh

$ pulumi import gcp:projects/apiKey:ApiKey default {{name}}

```

func GetApiKey added in v6.16.0

func GetApiKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ApiKeyState, opts ...pulumi.ResourceOption) (*ApiKey, error)

GetApiKey gets an existing ApiKey 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 NewApiKey added in v6.16.0

func NewApiKey(ctx *pulumi.Context,
	name string, args *ApiKeyArgs, opts ...pulumi.ResourceOption) (*ApiKey, error)

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

func (*ApiKey) ElementType added in v6.16.0

func (*ApiKey) ElementType() reflect.Type

func (*ApiKey) ToApiKeyOutput added in v6.16.0

func (i *ApiKey) ToApiKeyOutput() ApiKeyOutput

func (*ApiKey) ToApiKeyOutputWithContext added in v6.16.0

func (i *ApiKey) ToApiKeyOutputWithContext(ctx context.Context) ApiKeyOutput

func (*ApiKey) ToOutput added in v6.65.1

func (i *ApiKey) ToOutput(ctx context.Context) pulumix.Output[*ApiKey]

type ApiKeyArgs added in v6.16.0

type ApiKeyArgs struct {
	// Human-readable display name of this API key. Modifiable by user.
	DisplayName pulumi.StringPtrInput
	// The resource name of the key. The name must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. In another word, the name must match the regular expression: `a-z?`.
	Name pulumi.StringPtrInput
	// The project for the resource
	Project pulumi.StringPtrInput
	// Key restrictions.
	Restrictions ApiKeyRestrictionsPtrInput
}

The set of arguments for constructing a ApiKey resource.

func (ApiKeyArgs) ElementType added in v6.16.0

func (ApiKeyArgs) ElementType() reflect.Type

type ApiKeyArray added in v6.16.0

type ApiKeyArray []ApiKeyInput

func (ApiKeyArray) ElementType added in v6.16.0

func (ApiKeyArray) ElementType() reflect.Type

func (ApiKeyArray) ToApiKeyArrayOutput added in v6.16.0

func (i ApiKeyArray) ToApiKeyArrayOutput() ApiKeyArrayOutput

func (ApiKeyArray) ToApiKeyArrayOutputWithContext added in v6.16.0

func (i ApiKeyArray) ToApiKeyArrayOutputWithContext(ctx context.Context) ApiKeyArrayOutput

func (ApiKeyArray) ToOutput added in v6.65.1

func (i ApiKeyArray) ToOutput(ctx context.Context) pulumix.Output[[]*ApiKey]

type ApiKeyArrayInput added in v6.16.0

type ApiKeyArrayInput interface {
	pulumi.Input

	ToApiKeyArrayOutput() ApiKeyArrayOutput
	ToApiKeyArrayOutputWithContext(context.Context) ApiKeyArrayOutput
}

ApiKeyArrayInput is an input type that accepts ApiKeyArray and ApiKeyArrayOutput values. You can construct a concrete instance of `ApiKeyArrayInput` via:

ApiKeyArray{ ApiKeyArgs{...} }

type ApiKeyArrayOutput added in v6.16.0

type ApiKeyArrayOutput struct{ *pulumi.OutputState }

func (ApiKeyArrayOutput) ElementType added in v6.16.0

func (ApiKeyArrayOutput) ElementType() reflect.Type

func (ApiKeyArrayOutput) Index added in v6.16.0

func (ApiKeyArrayOutput) ToApiKeyArrayOutput added in v6.16.0

func (o ApiKeyArrayOutput) ToApiKeyArrayOutput() ApiKeyArrayOutput

func (ApiKeyArrayOutput) ToApiKeyArrayOutputWithContext added in v6.16.0

func (o ApiKeyArrayOutput) ToApiKeyArrayOutputWithContext(ctx context.Context) ApiKeyArrayOutput

func (ApiKeyArrayOutput) ToOutput added in v6.65.1

func (o ApiKeyArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]*ApiKey]

type ApiKeyInput added in v6.16.0

type ApiKeyInput interface {
	pulumi.Input

	ToApiKeyOutput() ApiKeyOutput
	ToApiKeyOutputWithContext(ctx context.Context) ApiKeyOutput
}

type ApiKeyMap added in v6.16.0

type ApiKeyMap map[string]ApiKeyInput

func (ApiKeyMap) ElementType added in v6.16.0

func (ApiKeyMap) ElementType() reflect.Type

func (ApiKeyMap) ToApiKeyMapOutput added in v6.16.0

func (i ApiKeyMap) ToApiKeyMapOutput() ApiKeyMapOutput

func (ApiKeyMap) ToApiKeyMapOutputWithContext added in v6.16.0

func (i ApiKeyMap) ToApiKeyMapOutputWithContext(ctx context.Context) ApiKeyMapOutput

func (ApiKeyMap) ToOutput added in v6.65.1

func (i ApiKeyMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*ApiKey]

type ApiKeyMapInput added in v6.16.0

type ApiKeyMapInput interface {
	pulumi.Input

	ToApiKeyMapOutput() ApiKeyMapOutput
	ToApiKeyMapOutputWithContext(context.Context) ApiKeyMapOutput
}

ApiKeyMapInput is an input type that accepts ApiKeyMap and ApiKeyMapOutput values. You can construct a concrete instance of `ApiKeyMapInput` via:

ApiKeyMap{ "key": ApiKeyArgs{...} }

type ApiKeyMapOutput added in v6.16.0

type ApiKeyMapOutput struct{ *pulumi.OutputState }

func (ApiKeyMapOutput) ElementType added in v6.16.0

func (ApiKeyMapOutput) ElementType() reflect.Type

func (ApiKeyMapOutput) MapIndex added in v6.16.0

func (ApiKeyMapOutput) ToApiKeyMapOutput added in v6.16.0

func (o ApiKeyMapOutput) ToApiKeyMapOutput() ApiKeyMapOutput

func (ApiKeyMapOutput) ToApiKeyMapOutputWithContext added in v6.16.0

func (o ApiKeyMapOutput) ToApiKeyMapOutputWithContext(ctx context.Context) ApiKeyMapOutput

func (ApiKeyMapOutput) ToOutput added in v6.65.1

func (o ApiKeyMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]*ApiKey]

type ApiKeyOutput added in v6.16.0

type ApiKeyOutput struct{ *pulumi.OutputState }

func (ApiKeyOutput) DisplayName added in v6.23.0

func (o ApiKeyOutput) DisplayName() pulumi.StringPtrOutput

Human-readable display name of this API key. Modifiable by user.

func (ApiKeyOutput) ElementType added in v6.16.0

func (ApiKeyOutput) ElementType() reflect.Type

func (ApiKeyOutput) KeyString added in v6.23.0

func (o ApiKeyOutput) KeyString() pulumi.StringOutput

Output only. An encrypted and signed value held by this key. This field can be accessed only through the `GetKeyString` method.

func (ApiKeyOutput) Name added in v6.23.0

func (o ApiKeyOutput) Name() pulumi.StringOutput

The resource name of the key. The name must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. In another word, the name must match the regular expression: `a-z?`.

func (ApiKeyOutput) Project added in v6.23.0

func (o ApiKeyOutput) Project() pulumi.StringOutput

The project for the resource

func (ApiKeyOutput) Restrictions added in v6.23.0

func (o ApiKeyOutput) Restrictions() ApiKeyRestrictionsPtrOutput

Key restrictions.

func (ApiKeyOutput) ToApiKeyOutput added in v6.16.0

func (o ApiKeyOutput) ToApiKeyOutput() ApiKeyOutput

func (ApiKeyOutput) ToApiKeyOutputWithContext added in v6.16.0

func (o ApiKeyOutput) ToApiKeyOutputWithContext(ctx context.Context) ApiKeyOutput

func (ApiKeyOutput) ToOutput added in v6.65.1

func (o ApiKeyOutput) ToOutput(ctx context.Context) pulumix.Output[*ApiKey]

func (ApiKeyOutput) Uid added in v6.34.0

Output only. Unique id in UUID4 format.

type ApiKeyRestrictions added in v6.16.0

type ApiKeyRestrictions struct {
	// The Android apps that are allowed to use the key.
	AndroidKeyRestrictions *ApiKeyRestrictionsAndroidKeyRestrictions `pulumi:"androidKeyRestrictions"`
	// A restriction for a specific service and optionally one or more specific methods. Requests are allowed if they match any of these restrictions. If no restrictions are specified, all targets are allowed.
	ApiTargets []ApiKeyRestrictionsApiTarget `pulumi:"apiTargets"`
	// The HTTP referrers (websites) that are allowed to use the key.
	BrowserKeyRestrictions *ApiKeyRestrictionsBrowserKeyRestrictions `pulumi:"browserKeyRestrictions"`
	// The iOS apps that are allowed to use the key.
	IosKeyRestrictions *ApiKeyRestrictionsIosKeyRestrictions `pulumi:"iosKeyRestrictions"`
	// The IP addresses of callers that are allowed to use the key.
	ServerKeyRestrictions *ApiKeyRestrictionsServerKeyRestrictions `pulumi:"serverKeyRestrictions"`
}

type ApiKeyRestrictionsAndroidKeyRestrictions added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictions struct {
	// A list of Android applications that are allowed to make API calls with this key.
	AllowedApplications []ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplication `pulumi:"allowedApplications"`
}

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplication added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplication struct {
	// The package name of the application.
	PackageName string `pulumi:"packageName"`
	// The SHA1 fingerprint of the application. For example, both sha1 formats are acceptable : DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or DA39A3EE5E6B4B0D3255BFEF95601890AFD80709. Output format is the latter.
	//
	// ***
	Sha1Fingerprint string `pulumi:"sha1Fingerprint"`
}

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs struct {
	// The package name of the application.
	PackageName pulumi.StringInput `pulumi:"packageName"`
	// The SHA1 fingerprint of the application. For example, both sha1 formats are acceptable : DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or DA39A3EE5E6B4B0D3255BFEF95601890AFD80709. Output format is the latter.
	//
	// ***
	Sha1Fingerprint pulumi.StringInput `pulumi:"sha1Fingerprint"`
}

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray []ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationInput

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray) ToOutput added in v6.65.1

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayInput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayInput interface {
	pulumi.Input

	ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput() ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput
	ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutputWithContext(context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput
}

ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayInput is an input type that accepts ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray and ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput values. You can construct a concrete instance of `ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayInput` via:

ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArray{ ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs{...} }

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput) Index added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationInput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationInput interface {
	pulumi.Input

	ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput() ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput
	ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutputWithContext(context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput
}

ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationInput is an input type that accepts ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs and ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput values. You can construct a concrete instance of `ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationInput` via:

ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArgs{...}

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) PackageName added in v6.16.0

The package name of the application.

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) Sha1Fingerprint added in v6.16.0

The SHA1 fingerprint of the application. For example, both sha1 formats are acceptable : DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or DA39A3EE5E6B4B0D3255BFEF95601890AFD80709. Output format is the latter.

***

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsAndroidKeyRestrictionsArgs added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsArgs struct {
	// A list of Android applications that are allowed to make API calls with this key.
	AllowedApplications ApiKeyRestrictionsAndroidKeyRestrictionsAllowedApplicationArrayInput `pulumi:"allowedApplications"`
}

func (ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsOutput added in v6.16.0

func (i ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsOutput() ApiKeyRestrictionsAndroidKeyRestrictionsOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput added in v6.16.0

func (i ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput() ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsAndroidKeyRestrictionsInput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsInput interface {
	pulumi.Input

	ToApiKeyRestrictionsAndroidKeyRestrictionsOutput() ApiKeyRestrictionsAndroidKeyRestrictionsOutput
	ToApiKeyRestrictionsAndroidKeyRestrictionsOutputWithContext(context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsOutput
}

ApiKeyRestrictionsAndroidKeyRestrictionsInput is an input type that accepts ApiKeyRestrictionsAndroidKeyRestrictionsArgs and ApiKeyRestrictionsAndroidKeyRestrictionsOutput values. You can construct a concrete instance of `ApiKeyRestrictionsAndroidKeyRestrictionsInput` via:

ApiKeyRestrictionsAndroidKeyRestrictionsArgs{...}

type ApiKeyRestrictionsAndroidKeyRestrictionsOutput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) AllowedApplications added in v6.16.0

A list of Android applications that are allowed to make API calls with this key.

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsOutput added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsOutput() ApiKeyRestrictionsAndroidKeyRestrictionsOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput() ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsAndroidKeyRestrictionsPtrInput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsPtrInput interface {
	pulumi.Input

	ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput() ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput
	ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext(context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput
}

ApiKeyRestrictionsAndroidKeyRestrictionsPtrInput is an input type that accepts ApiKeyRestrictionsAndroidKeyRestrictionsArgs, ApiKeyRestrictionsAndroidKeyRestrictionsPtr and ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput values. You can construct a concrete instance of `ApiKeyRestrictionsAndroidKeyRestrictionsPtrInput` via:

        ApiKeyRestrictionsAndroidKeyRestrictionsArgs{...}

or:

        nil

type ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput added in v6.16.0

type ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) AllowedApplications added in v6.16.0

A list of Android applications that are allowed to make API calls with this key.

func (ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) Elem added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput() ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) ToApiKeyRestrictionsAndroidKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsAndroidKeyRestrictionsPtrOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsApiTarget added in v6.16.0

type ApiKeyRestrictionsApiTarget struct {
	// Optional. List of one or more methods that can be called. If empty, all methods for the service are allowed. A wildcard (*) can be used as the last symbol. Valid examples: `google.cloud.translate.v2.TranslateService.GetSupportedLanguage` `TranslateText` `Get*` `translate.googleapis.com.Get*`
	Methods []string `pulumi:"methods"`
	// The service for this restriction. It should be the canonical service name, for example: `translate.googleapis.com`. You can use `gcloud services list` to get a list of services that are enabled in the project.
	Service string `pulumi:"service"`
}

type ApiKeyRestrictionsApiTargetArgs added in v6.16.0

type ApiKeyRestrictionsApiTargetArgs struct {
	// Optional. List of one or more methods that can be called. If empty, all methods for the service are allowed. A wildcard (*) can be used as the last symbol. Valid examples: `google.cloud.translate.v2.TranslateService.GetSupportedLanguage` `TranslateText` `Get*` `translate.googleapis.com.Get*`
	Methods pulumi.StringArrayInput `pulumi:"methods"`
	// The service for this restriction. It should be the canonical service name, for example: `translate.googleapis.com`. You can use `gcloud services list` to get a list of services that are enabled in the project.
	Service pulumi.StringInput `pulumi:"service"`
}

func (ApiKeyRestrictionsApiTargetArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsApiTargetArgs) ToApiKeyRestrictionsApiTargetOutput added in v6.16.0

func (i ApiKeyRestrictionsApiTargetArgs) ToApiKeyRestrictionsApiTargetOutput() ApiKeyRestrictionsApiTargetOutput

func (ApiKeyRestrictionsApiTargetArgs) ToApiKeyRestrictionsApiTargetOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsApiTargetArgs) ToApiKeyRestrictionsApiTargetOutputWithContext(ctx context.Context) ApiKeyRestrictionsApiTargetOutput

func (ApiKeyRestrictionsApiTargetArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsApiTargetArray added in v6.16.0

type ApiKeyRestrictionsApiTargetArray []ApiKeyRestrictionsApiTargetInput

func (ApiKeyRestrictionsApiTargetArray) ElementType added in v6.16.0

func (ApiKeyRestrictionsApiTargetArray) ToApiKeyRestrictionsApiTargetArrayOutput added in v6.16.0

func (i ApiKeyRestrictionsApiTargetArray) ToApiKeyRestrictionsApiTargetArrayOutput() ApiKeyRestrictionsApiTargetArrayOutput

func (ApiKeyRestrictionsApiTargetArray) ToApiKeyRestrictionsApiTargetArrayOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsApiTargetArray) ToApiKeyRestrictionsApiTargetArrayOutputWithContext(ctx context.Context) ApiKeyRestrictionsApiTargetArrayOutput

func (ApiKeyRestrictionsApiTargetArray) ToOutput added in v6.65.1

type ApiKeyRestrictionsApiTargetArrayInput added in v6.16.0

type ApiKeyRestrictionsApiTargetArrayInput interface {
	pulumi.Input

	ToApiKeyRestrictionsApiTargetArrayOutput() ApiKeyRestrictionsApiTargetArrayOutput
	ToApiKeyRestrictionsApiTargetArrayOutputWithContext(context.Context) ApiKeyRestrictionsApiTargetArrayOutput
}

ApiKeyRestrictionsApiTargetArrayInput is an input type that accepts ApiKeyRestrictionsApiTargetArray and ApiKeyRestrictionsApiTargetArrayOutput values. You can construct a concrete instance of `ApiKeyRestrictionsApiTargetArrayInput` via:

ApiKeyRestrictionsApiTargetArray{ ApiKeyRestrictionsApiTargetArgs{...} }

type ApiKeyRestrictionsApiTargetArrayOutput added in v6.16.0

type ApiKeyRestrictionsApiTargetArrayOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsApiTargetArrayOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsApiTargetArrayOutput) Index added in v6.16.0

func (ApiKeyRestrictionsApiTargetArrayOutput) ToApiKeyRestrictionsApiTargetArrayOutput added in v6.16.0

func (o ApiKeyRestrictionsApiTargetArrayOutput) ToApiKeyRestrictionsApiTargetArrayOutput() ApiKeyRestrictionsApiTargetArrayOutput

func (ApiKeyRestrictionsApiTargetArrayOutput) ToApiKeyRestrictionsApiTargetArrayOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsApiTargetArrayOutput) ToApiKeyRestrictionsApiTargetArrayOutputWithContext(ctx context.Context) ApiKeyRestrictionsApiTargetArrayOutput

func (ApiKeyRestrictionsApiTargetArrayOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsApiTargetInput added in v6.16.0

type ApiKeyRestrictionsApiTargetInput interface {
	pulumi.Input

	ToApiKeyRestrictionsApiTargetOutput() ApiKeyRestrictionsApiTargetOutput
	ToApiKeyRestrictionsApiTargetOutputWithContext(context.Context) ApiKeyRestrictionsApiTargetOutput
}

ApiKeyRestrictionsApiTargetInput is an input type that accepts ApiKeyRestrictionsApiTargetArgs and ApiKeyRestrictionsApiTargetOutput values. You can construct a concrete instance of `ApiKeyRestrictionsApiTargetInput` via:

ApiKeyRestrictionsApiTargetArgs{...}

type ApiKeyRestrictionsApiTargetOutput added in v6.16.0

type ApiKeyRestrictionsApiTargetOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsApiTargetOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsApiTargetOutput) Methods added in v6.16.0

Optional. List of one or more methods that can be called. If empty, all methods for the service are allowed. A wildcard (*) can be used as the last symbol. Valid examples: `google.cloud.translate.v2.TranslateService.GetSupportedLanguage` `TranslateText` `Get*` `translate.googleapis.com.Get*`

func (ApiKeyRestrictionsApiTargetOutput) Service added in v6.16.0

The service for this restriction. It should be the canonical service name, for example: `translate.googleapis.com`. You can use `gcloud services list` to get a list of services that are enabled in the project.

func (ApiKeyRestrictionsApiTargetOutput) ToApiKeyRestrictionsApiTargetOutput added in v6.16.0

func (o ApiKeyRestrictionsApiTargetOutput) ToApiKeyRestrictionsApiTargetOutput() ApiKeyRestrictionsApiTargetOutput

func (ApiKeyRestrictionsApiTargetOutput) ToApiKeyRestrictionsApiTargetOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsApiTargetOutput) ToApiKeyRestrictionsApiTargetOutputWithContext(ctx context.Context) ApiKeyRestrictionsApiTargetOutput

func (ApiKeyRestrictionsApiTargetOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsArgs added in v6.16.0

type ApiKeyRestrictionsArgs struct {
	// The Android apps that are allowed to use the key.
	AndroidKeyRestrictions ApiKeyRestrictionsAndroidKeyRestrictionsPtrInput `pulumi:"androidKeyRestrictions"`
	// A restriction for a specific service and optionally one or more specific methods. Requests are allowed if they match any of these restrictions. If no restrictions are specified, all targets are allowed.
	ApiTargets ApiKeyRestrictionsApiTargetArrayInput `pulumi:"apiTargets"`
	// The HTTP referrers (websites) that are allowed to use the key.
	BrowserKeyRestrictions ApiKeyRestrictionsBrowserKeyRestrictionsPtrInput `pulumi:"browserKeyRestrictions"`
	// The iOS apps that are allowed to use the key.
	IosKeyRestrictions ApiKeyRestrictionsIosKeyRestrictionsPtrInput `pulumi:"iosKeyRestrictions"`
	// The IP addresses of callers that are allowed to use the key.
	ServerKeyRestrictions ApiKeyRestrictionsServerKeyRestrictionsPtrInput `pulumi:"serverKeyRestrictions"`
}

func (ApiKeyRestrictionsArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsArgs) ElementType() reflect.Type

func (ApiKeyRestrictionsArgs) ToApiKeyRestrictionsOutput added in v6.16.0

func (i ApiKeyRestrictionsArgs) ToApiKeyRestrictionsOutput() ApiKeyRestrictionsOutput

func (ApiKeyRestrictionsArgs) ToApiKeyRestrictionsOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsArgs) ToApiKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsOutput

func (ApiKeyRestrictionsArgs) ToApiKeyRestrictionsPtrOutput added in v6.16.0

func (i ApiKeyRestrictionsArgs) ToApiKeyRestrictionsPtrOutput() ApiKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsArgs) ToApiKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsArgs) ToApiKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsBrowserKeyRestrictions added in v6.16.0

type ApiKeyRestrictionsBrowserKeyRestrictions struct {
	// A list of regular expressions for the referrer URLs that are allowed to make API calls with this key.
	AllowedReferrers []string `pulumi:"allowedReferrers"`
}

type ApiKeyRestrictionsBrowserKeyRestrictionsArgs added in v6.16.0

type ApiKeyRestrictionsBrowserKeyRestrictionsArgs struct {
	// A list of regular expressions for the referrer URLs that are allowed to make API calls with this key.
	AllowedReferrers pulumi.StringArrayInput `pulumi:"allowedReferrers"`
}

func (ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsOutput added in v6.16.0

func (i ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsOutput() ApiKeyRestrictionsBrowserKeyRestrictionsOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput added in v6.16.0

func (i ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput() ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsBrowserKeyRestrictionsInput added in v6.16.0

type ApiKeyRestrictionsBrowserKeyRestrictionsInput interface {
	pulumi.Input

	ToApiKeyRestrictionsBrowserKeyRestrictionsOutput() ApiKeyRestrictionsBrowserKeyRestrictionsOutput
	ToApiKeyRestrictionsBrowserKeyRestrictionsOutputWithContext(context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsOutput
}

ApiKeyRestrictionsBrowserKeyRestrictionsInput is an input type that accepts ApiKeyRestrictionsBrowserKeyRestrictionsArgs and ApiKeyRestrictionsBrowserKeyRestrictionsOutput values. You can construct a concrete instance of `ApiKeyRestrictionsBrowserKeyRestrictionsInput` via:

ApiKeyRestrictionsBrowserKeyRestrictionsArgs{...}

type ApiKeyRestrictionsBrowserKeyRestrictionsOutput added in v6.16.0

type ApiKeyRestrictionsBrowserKeyRestrictionsOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) AllowedReferrers added in v6.16.0

A list of regular expressions for the referrer URLs that are allowed to make API calls with this key.

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsOutput added in v6.16.0

func (o ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsOutput() ApiKeyRestrictionsBrowserKeyRestrictionsOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput() ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsBrowserKeyRestrictionsPtrInput added in v6.16.0

type ApiKeyRestrictionsBrowserKeyRestrictionsPtrInput interface {
	pulumi.Input

	ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput() ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput
	ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext(context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput
}

ApiKeyRestrictionsBrowserKeyRestrictionsPtrInput is an input type that accepts ApiKeyRestrictionsBrowserKeyRestrictionsArgs, ApiKeyRestrictionsBrowserKeyRestrictionsPtr and ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput values. You can construct a concrete instance of `ApiKeyRestrictionsBrowserKeyRestrictionsPtrInput` via:

        ApiKeyRestrictionsBrowserKeyRestrictionsArgs{...}

or:

        nil

type ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput added in v6.16.0

type ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) AllowedReferrers added in v6.16.0

A list of regular expressions for the referrer URLs that are allowed to make API calls with this key.

func (ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) Elem added in v6.16.0

func (ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput() ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) ToApiKeyRestrictionsBrowserKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsBrowserKeyRestrictionsPtrOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsInput added in v6.16.0

type ApiKeyRestrictionsInput interface {
	pulumi.Input

	ToApiKeyRestrictionsOutput() ApiKeyRestrictionsOutput
	ToApiKeyRestrictionsOutputWithContext(context.Context) ApiKeyRestrictionsOutput
}

ApiKeyRestrictionsInput is an input type that accepts ApiKeyRestrictionsArgs and ApiKeyRestrictionsOutput values. You can construct a concrete instance of `ApiKeyRestrictionsInput` via:

ApiKeyRestrictionsArgs{...}

type ApiKeyRestrictionsIosKeyRestrictions added in v6.16.0

type ApiKeyRestrictionsIosKeyRestrictions struct {
	// A list of bundle IDs that are allowed when making API calls with this key.
	AllowedBundleIds []string `pulumi:"allowedBundleIds"`
}

type ApiKeyRestrictionsIosKeyRestrictionsArgs added in v6.16.0

type ApiKeyRestrictionsIosKeyRestrictionsArgs struct {
	// A list of bundle IDs that are allowed when making API calls with this key.
	AllowedBundleIds pulumi.StringArrayInput `pulumi:"allowedBundleIds"`
}

func (ApiKeyRestrictionsIosKeyRestrictionsArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsOutput added in v6.16.0

func (i ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsOutput() ApiKeyRestrictionsIosKeyRestrictionsOutput

func (ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsIosKeyRestrictionsOutput

func (ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput added in v6.16.0

func (i ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput() ApiKeyRestrictionsIosKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsIosKeyRestrictionsArgs) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsIosKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsIosKeyRestrictionsArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsIosKeyRestrictionsInput added in v6.16.0

type ApiKeyRestrictionsIosKeyRestrictionsInput interface {
	pulumi.Input

	ToApiKeyRestrictionsIosKeyRestrictionsOutput() ApiKeyRestrictionsIosKeyRestrictionsOutput
	ToApiKeyRestrictionsIosKeyRestrictionsOutputWithContext(context.Context) ApiKeyRestrictionsIosKeyRestrictionsOutput
}

ApiKeyRestrictionsIosKeyRestrictionsInput is an input type that accepts ApiKeyRestrictionsIosKeyRestrictionsArgs and ApiKeyRestrictionsIosKeyRestrictionsOutput values. You can construct a concrete instance of `ApiKeyRestrictionsIosKeyRestrictionsInput` via:

ApiKeyRestrictionsIosKeyRestrictionsArgs{...}

type ApiKeyRestrictionsIosKeyRestrictionsOutput added in v6.16.0

type ApiKeyRestrictionsIosKeyRestrictionsOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) AllowedBundleIds added in v6.16.0

A list of bundle IDs that are allowed when making API calls with this key.

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsOutput added in v6.16.0

func (o ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsOutput() ApiKeyRestrictionsIosKeyRestrictionsOutput

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsIosKeyRestrictionsOutput

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput() ApiKeyRestrictionsIosKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsIosKeyRestrictionsOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsIosKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsIosKeyRestrictionsOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsIosKeyRestrictionsPtrInput added in v6.16.0

type ApiKeyRestrictionsIosKeyRestrictionsPtrInput interface {
	pulumi.Input

	ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput() ApiKeyRestrictionsIosKeyRestrictionsPtrOutput
	ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext(context.Context) ApiKeyRestrictionsIosKeyRestrictionsPtrOutput
}

ApiKeyRestrictionsIosKeyRestrictionsPtrInput is an input type that accepts ApiKeyRestrictionsIosKeyRestrictionsArgs, ApiKeyRestrictionsIosKeyRestrictionsPtr and ApiKeyRestrictionsIosKeyRestrictionsPtrOutput values. You can construct a concrete instance of `ApiKeyRestrictionsIosKeyRestrictionsPtrInput` via:

        ApiKeyRestrictionsIosKeyRestrictionsArgs{...}

or:

        nil

type ApiKeyRestrictionsIosKeyRestrictionsPtrOutput added in v6.16.0

type ApiKeyRestrictionsIosKeyRestrictionsPtrOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) AllowedBundleIds added in v6.16.0

A list of bundle IDs that are allowed when making API calls with this key.

func (ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) Elem added in v6.16.0

func (ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutput() ApiKeyRestrictionsIosKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) ToApiKeyRestrictionsIosKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsIosKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsIosKeyRestrictionsPtrOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsOutput added in v6.16.0

type ApiKeyRestrictionsOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsOutput) AndroidKeyRestrictions added in v6.16.0

The Android apps that are allowed to use the key.

func (ApiKeyRestrictionsOutput) ApiTargets added in v6.16.0

A restriction for a specific service and optionally one or more specific methods. Requests are allowed if they match any of these restrictions. If no restrictions are specified, all targets are allowed.

func (ApiKeyRestrictionsOutput) BrowserKeyRestrictions added in v6.16.0

The HTTP referrers (websites) that are allowed to use the key.

func (ApiKeyRestrictionsOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsOutput) ElementType() reflect.Type

func (ApiKeyRestrictionsOutput) IosKeyRestrictions added in v6.16.0

The iOS apps that are allowed to use the key.

func (ApiKeyRestrictionsOutput) ServerKeyRestrictions added in v6.16.0

The IP addresses of callers that are allowed to use the key.

func (ApiKeyRestrictionsOutput) ToApiKeyRestrictionsOutput added in v6.16.0

func (o ApiKeyRestrictionsOutput) ToApiKeyRestrictionsOutput() ApiKeyRestrictionsOutput

func (ApiKeyRestrictionsOutput) ToApiKeyRestrictionsOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsOutput) ToApiKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsOutput

func (ApiKeyRestrictionsOutput) ToApiKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsOutput) ToApiKeyRestrictionsPtrOutput() ApiKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsOutput) ToApiKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsOutput) ToApiKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsPtrInput added in v6.16.0

type ApiKeyRestrictionsPtrInput interface {
	pulumi.Input

	ToApiKeyRestrictionsPtrOutput() ApiKeyRestrictionsPtrOutput
	ToApiKeyRestrictionsPtrOutputWithContext(context.Context) ApiKeyRestrictionsPtrOutput
}

ApiKeyRestrictionsPtrInput is an input type that accepts ApiKeyRestrictionsArgs, ApiKeyRestrictionsPtr and ApiKeyRestrictionsPtrOutput values. You can construct a concrete instance of `ApiKeyRestrictionsPtrInput` via:

        ApiKeyRestrictionsArgs{...}

or:

        nil

func ApiKeyRestrictionsPtr added in v6.16.0

func ApiKeyRestrictionsPtr(v *ApiKeyRestrictionsArgs) ApiKeyRestrictionsPtrInput

type ApiKeyRestrictionsPtrOutput added in v6.16.0

type ApiKeyRestrictionsPtrOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsPtrOutput) AndroidKeyRestrictions added in v6.16.0

The Android apps that are allowed to use the key.

func (ApiKeyRestrictionsPtrOutput) ApiTargets added in v6.16.0

A restriction for a specific service and optionally one or more specific methods. Requests are allowed if they match any of these restrictions. If no restrictions are specified, all targets are allowed.

func (ApiKeyRestrictionsPtrOutput) BrowserKeyRestrictions added in v6.16.0

The HTTP referrers (websites) that are allowed to use the key.

func (ApiKeyRestrictionsPtrOutput) Elem added in v6.16.0

func (ApiKeyRestrictionsPtrOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsPtrOutput) IosKeyRestrictions added in v6.16.0

The iOS apps that are allowed to use the key.

func (ApiKeyRestrictionsPtrOutput) ServerKeyRestrictions added in v6.16.0

The IP addresses of callers that are allowed to use the key.

func (ApiKeyRestrictionsPtrOutput) ToApiKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsPtrOutput) ToApiKeyRestrictionsPtrOutput() ApiKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsPtrOutput) ToApiKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsPtrOutput) ToApiKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsPtrOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsServerKeyRestrictions added in v6.16.0

type ApiKeyRestrictionsServerKeyRestrictions struct {
	// A list of the caller IP addresses that are allowed to make API calls with this key.
	AllowedIps []string `pulumi:"allowedIps"`
}

type ApiKeyRestrictionsServerKeyRestrictionsArgs added in v6.16.0

type ApiKeyRestrictionsServerKeyRestrictionsArgs struct {
	// A list of the caller IP addresses that are allowed to make API calls with this key.
	AllowedIps pulumi.StringArrayInput `pulumi:"allowedIps"`
}

func (ApiKeyRestrictionsServerKeyRestrictionsArgs) ElementType added in v6.16.0

func (ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsOutput added in v6.16.0

func (i ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsOutput() ApiKeyRestrictionsServerKeyRestrictionsOutput

func (ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsServerKeyRestrictionsOutput

func (ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput added in v6.16.0

func (i ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput() ApiKeyRestrictionsServerKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (i ApiKeyRestrictionsServerKeyRestrictionsArgs) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsServerKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsServerKeyRestrictionsArgs) ToOutput added in v6.65.1

type ApiKeyRestrictionsServerKeyRestrictionsInput added in v6.16.0

type ApiKeyRestrictionsServerKeyRestrictionsInput interface {
	pulumi.Input

	ToApiKeyRestrictionsServerKeyRestrictionsOutput() ApiKeyRestrictionsServerKeyRestrictionsOutput
	ToApiKeyRestrictionsServerKeyRestrictionsOutputWithContext(context.Context) ApiKeyRestrictionsServerKeyRestrictionsOutput
}

ApiKeyRestrictionsServerKeyRestrictionsInput is an input type that accepts ApiKeyRestrictionsServerKeyRestrictionsArgs and ApiKeyRestrictionsServerKeyRestrictionsOutput values. You can construct a concrete instance of `ApiKeyRestrictionsServerKeyRestrictionsInput` via:

ApiKeyRestrictionsServerKeyRestrictionsArgs{...}

type ApiKeyRestrictionsServerKeyRestrictionsOutput added in v6.16.0

type ApiKeyRestrictionsServerKeyRestrictionsOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) AllowedIps added in v6.16.0

A list of the caller IP addresses that are allowed to make API calls with this key.

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsOutput added in v6.16.0

func (o ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsOutput() ApiKeyRestrictionsServerKeyRestrictionsOutput

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsOutputWithContext(ctx context.Context) ApiKeyRestrictionsServerKeyRestrictionsOutput

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput() ApiKeyRestrictionsServerKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsServerKeyRestrictionsOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsServerKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsServerKeyRestrictionsOutput) ToOutput added in v6.65.1

type ApiKeyRestrictionsServerKeyRestrictionsPtrInput added in v6.16.0

type ApiKeyRestrictionsServerKeyRestrictionsPtrInput interface {
	pulumi.Input

	ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput() ApiKeyRestrictionsServerKeyRestrictionsPtrOutput
	ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext(context.Context) ApiKeyRestrictionsServerKeyRestrictionsPtrOutput
}

ApiKeyRestrictionsServerKeyRestrictionsPtrInput is an input type that accepts ApiKeyRestrictionsServerKeyRestrictionsArgs, ApiKeyRestrictionsServerKeyRestrictionsPtr and ApiKeyRestrictionsServerKeyRestrictionsPtrOutput values. You can construct a concrete instance of `ApiKeyRestrictionsServerKeyRestrictionsPtrInput` via:

        ApiKeyRestrictionsServerKeyRestrictionsArgs{...}

or:

        nil

type ApiKeyRestrictionsServerKeyRestrictionsPtrOutput added in v6.16.0

type ApiKeyRestrictionsServerKeyRestrictionsPtrOutput struct{ *pulumi.OutputState }

func (ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) AllowedIps added in v6.16.0

A list of the caller IP addresses that are allowed to make API calls with this key.

func (ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) Elem added in v6.16.0

func (ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) ElementType added in v6.16.0

func (ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput added in v6.16.0

func (o ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutput() ApiKeyRestrictionsServerKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext added in v6.16.0

func (o ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) ToApiKeyRestrictionsServerKeyRestrictionsPtrOutputWithContext(ctx context.Context) ApiKeyRestrictionsServerKeyRestrictionsPtrOutput

func (ApiKeyRestrictionsServerKeyRestrictionsPtrOutput) ToOutput added in v6.65.1

type ApiKeyState added in v6.16.0

type ApiKeyState struct {
	// Human-readable display name of this API key. Modifiable by user.
	DisplayName pulumi.StringPtrInput
	// Output only. An encrypted and signed value held by this key. This field can be accessed only through the `GetKeyString` method.
	KeyString pulumi.StringPtrInput
	// The resource name of the key. The name must be unique within the project, must conform with RFC-1034, is restricted to lower-cased letters, and has a maximum length of 63 characters. In another word, the name must match the regular expression: `a-z?`.
	Name pulumi.StringPtrInput
	// The project for the resource
	Project pulumi.StringPtrInput
	// Key restrictions.
	Restrictions ApiKeyRestrictionsPtrInput
	// Output only. Unique id in UUID4 format.
	Uid pulumi.StringPtrInput
}

func (ApiKeyState) ElementType added in v6.16.0

func (ApiKeyState) ElementType() reflect.Type

type DefaultServiceAccounts

type DefaultServiceAccounts struct {
	pulumi.CustomResourceState

	// The action to be performed in the default service accounts. Valid values are: `DEPRIVILEGE`, `DELETE`, `DISABLE`. Note that `DEPRIVILEGE` action will ignore the REVERT configuration in the restore_policy
	Action pulumi.StringOutput `pulumi:"action"`
	// The project ID where service accounts are created.
	Project pulumi.StringOutput `pulumi:"project"`
	// The action to be performed in the default service accounts on the resource destroy.
	// Valid values are NONE, REVERT and REVERT_AND_IGNORE_FAILURE. It is applied for any action but in the DEPRIVILEGE.
	// If set to REVERT it attempts to restore all default SAs but the DEPRIVILEGE action.
	// If set to REVERT_AND_IGNORE_FAILURE it is the same behavior as REVERT but ignores errors returned by the API.
	RestorePolicy pulumi.StringPtrOutput `pulumi:"restorePolicy"`
	// The Service Accounts changed by this resource. It is used for `REVERT` the `action` on the destroy.
	ServiceAccounts pulumi.MapOutput `pulumi:"serviceAccounts"`
}

Allows management of Google Cloud Platform project default service accounts.

When certain service APIs are enabled, Google Cloud Platform automatically creates service accounts to help get started, but this is not recommended for production environments as per [Google's documentation](https://cloud.google.com/iam/docs/service-accounts#default). See the [Organization documentation](https://cloud.google.com/resource-manager/docs/quickstarts) for more details.

> **WARNING** Some Google Cloud products do not work if the default service accounts are deleted so it is better to `DEPRIVILEGE` as Google **CAN NOT** recover service accounts that have been deleted for more than 30 days. Also Google recommends using the `constraints/iam.automaticIamGrantsForDefaultServiceAccounts` [constraint](https://www.terraform.io/docs/providers/google/r/google_organization_policy.html) to disable automatic IAM Grants to default service accounts.

> This resource works on a best-effort basis, as no API formally describes the default service accounts and it is for users who are unable to use constraints. If the default service accounts change their name or additional service accounts are added, this resource will need to be updated.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewDefaultServiceAccounts(ctx, "myProject", &projects.DefaultServiceAccountsArgs{
			Action:  pulumi.String("DELETE"),
			Project: pulumi.String("my-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To enable the default service accounts on the resource destroy:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewDefaultServiceAccounts(ctx, "myProject", &projects.DefaultServiceAccountsArgs{
			Action:        pulumi.String("DISABLE"),
			Project:       pulumi.String("my-project-id"),
			RestorePolicy: pulumi.String("REVERT"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource does not support import

func GetDefaultServiceAccounts

func GetDefaultServiceAccounts(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultServiceAccountsState, opts ...pulumi.ResourceOption) (*DefaultServiceAccounts, error)

GetDefaultServiceAccounts gets an existing DefaultServiceAccounts 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 NewDefaultServiceAccounts

func NewDefaultServiceAccounts(ctx *pulumi.Context,
	name string, args *DefaultServiceAccountsArgs, opts ...pulumi.ResourceOption) (*DefaultServiceAccounts, error)

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

func (*DefaultServiceAccounts) ElementType

func (*DefaultServiceAccounts) ElementType() reflect.Type

func (*DefaultServiceAccounts) ToDefaultServiceAccountsOutput

func (i *DefaultServiceAccounts) ToDefaultServiceAccountsOutput() DefaultServiceAccountsOutput

func (*DefaultServiceAccounts) ToDefaultServiceAccountsOutputWithContext

func (i *DefaultServiceAccounts) ToDefaultServiceAccountsOutputWithContext(ctx context.Context) DefaultServiceAccountsOutput

func (*DefaultServiceAccounts) ToOutput added in v6.65.1

type DefaultServiceAccountsArgs

type DefaultServiceAccountsArgs struct {
	// The action to be performed in the default service accounts. Valid values are: `DEPRIVILEGE`, `DELETE`, `DISABLE`. Note that `DEPRIVILEGE` action will ignore the REVERT configuration in the restore_policy
	Action pulumi.StringInput
	// The project ID where service accounts are created.
	Project pulumi.StringInput
	// The action to be performed in the default service accounts on the resource destroy.
	// Valid values are NONE, REVERT and REVERT_AND_IGNORE_FAILURE. It is applied for any action but in the DEPRIVILEGE.
	// If set to REVERT it attempts to restore all default SAs but the DEPRIVILEGE action.
	// If set to REVERT_AND_IGNORE_FAILURE it is the same behavior as REVERT but ignores errors returned by the API.
	RestorePolicy pulumi.StringPtrInput
}

The set of arguments for constructing a DefaultServiceAccounts resource.

func (DefaultServiceAccountsArgs) ElementType

func (DefaultServiceAccountsArgs) ElementType() reflect.Type

type DefaultServiceAccountsArray

type DefaultServiceAccountsArray []DefaultServiceAccountsInput

func (DefaultServiceAccountsArray) ElementType

func (DefaultServiceAccountsArray) ToDefaultServiceAccountsArrayOutput

func (i DefaultServiceAccountsArray) ToDefaultServiceAccountsArrayOutput() DefaultServiceAccountsArrayOutput

func (DefaultServiceAccountsArray) ToDefaultServiceAccountsArrayOutputWithContext

func (i DefaultServiceAccountsArray) ToDefaultServiceAccountsArrayOutputWithContext(ctx context.Context) DefaultServiceAccountsArrayOutput

func (DefaultServiceAccountsArray) ToOutput added in v6.65.1

type DefaultServiceAccountsArrayInput

type DefaultServiceAccountsArrayInput interface {
	pulumi.Input

	ToDefaultServiceAccountsArrayOutput() DefaultServiceAccountsArrayOutput
	ToDefaultServiceAccountsArrayOutputWithContext(context.Context) DefaultServiceAccountsArrayOutput
}

DefaultServiceAccountsArrayInput is an input type that accepts DefaultServiceAccountsArray and DefaultServiceAccountsArrayOutput values. You can construct a concrete instance of `DefaultServiceAccountsArrayInput` via:

DefaultServiceAccountsArray{ DefaultServiceAccountsArgs{...} }

type DefaultServiceAccountsArrayOutput

type DefaultServiceAccountsArrayOutput struct{ *pulumi.OutputState }

func (DefaultServiceAccountsArrayOutput) ElementType

func (DefaultServiceAccountsArrayOutput) Index

func (DefaultServiceAccountsArrayOutput) ToDefaultServiceAccountsArrayOutput

func (o DefaultServiceAccountsArrayOutput) ToDefaultServiceAccountsArrayOutput() DefaultServiceAccountsArrayOutput

func (DefaultServiceAccountsArrayOutput) ToDefaultServiceAccountsArrayOutputWithContext

func (o DefaultServiceAccountsArrayOutput) ToDefaultServiceAccountsArrayOutputWithContext(ctx context.Context) DefaultServiceAccountsArrayOutput

func (DefaultServiceAccountsArrayOutput) ToOutput added in v6.65.1

type DefaultServiceAccountsInput

type DefaultServiceAccountsInput interface {
	pulumi.Input

	ToDefaultServiceAccountsOutput() DefaultServiceAccountsOutput
	ToDefaultServiceAccountsOutputWithContext(ctx context.Context) DefaultServiceAccountsOutput
}

type DefaultServiceAccountsMap

type DefaultServiceAccountsMap map[string]DefaultServiceAccountsInput

func (DefaultServiceAccountsMap) ElementType

func (DefaultServiceAccountsMap) ElementType() reflect.Type

func (DefaultServiceAccountsMap) ToDefaultServiceAccountsMapOutput

func (i DefaultServiceAccountsMap) ToDefaultServiceAccountsMapOutput() DefaultServiceAccountsMapOutput

func (DefaultServiceAccountsMap) ToDefaultServiceAccountsMapOutputWithContext

func (i DefaultServiceAccountsMap) ToDefaultServiceAccountsMapOutputWithContext(ctx context.Context) DefaultServiceAccountsMapOutput

func (DefaultServiceAccountsMap) ToOutput added in v6.65.1

type DefaultServiceAccountsMapInput

type DefaultServiceAccountsMapInput interface {
	pulumi.Input

	ToDefaultServiceAccountsMapOutput() DefaultServiceAccountsMapOutput
	ToDefaultServiceAccountsMapOutputWithContext(context.Context) DefaultServiceAccountsMapOutput
}

DefaultServiceAccountsMapInput is an input type that accepts DefaultServiceAccountsMap and DefaultServiceAccountsMapOutput values. You can construct a concrete instance of `DefaultServiceAccountsMapInput` via:

DefaultServiceAccountsMap{ "key": DefaultServiceAccountsArgs{...} }

type DefaultServiceAccountsMapOutput

type DefaultServiceAccountsMapOutput struct{ *pulumi.OutputState }

func (DefaultServiceAccountsMapOutput) ElementType

func (DefaultServiceAccountsMapOutput) MapIndex

func (DefaultServiceAccountsMapOutput) ToDefaultServiceAccountsMapOutput

func (o DefaultServiceAccountsMapOutput) ToDefaultServiceAccountsMapOutput() DefaultServiceAccountsMapOutput

func (DefaultServiceAccountsMapOutput) ToDefaultServiceAccountsMapOutputWithContext

func (o DefaultServiceAccountsMapOutput) ToDefaultServiceAccountsMapOutputWithContext(ctx context.Context) DefaultServiceAccountsMapOutput

func (DefaultServiceAccountsMapOutput) ToOutput added in v6.65.1

type DefaultServiceAccountsOutput

type DefaultServiceAccountsOutput struct{ *pulumi.OutputState }

func (DefaultServiceAccountsOutput) Action added in v6.23.0

The action to be performed in the default service accounts. Valid values are: `DEPRIVILEGE`, `DELETE`, `DISABLE`. Note that `DEPRIVILEGE` action will ignore the REVERT configuration in the restore_policy

func (DefaultServiceAccountsOutput) ElementType

func (DefaultServiceAccountsOutput) Project added in v6.23.0

The project ID where service accounts are created.

func (DefaultServiceAccountsOutput) RestorePolicy added in v6.23.0

The action to be performed in the default service accounts on the resource destroy. Valid values are NONE, REVERT and REVERT_AND_IGNORE_FAILURE. It is applied for any action but in the DEPRIVILEGE. If set to REVERT it attempts to restore all default SAs but the DEPRIVILEGE action. If set to REVERT_AND_IGNORE_FAILURE it is the same behavior as REVERT but ignores errors returned by the API.

func (DefaultServiceAccountsOutput) ServiceAccounts added in v6.23.0

func (o DefaultServiceAccountsOutput) ServiceAccounts() pulumi.MapOutput

The Service Accounts changed by this resource. It is used for `REVERT` the `action` on the destroy.

func (DefaultServiceAccountsOutput) ToDefaultServiceAccountsOutput

func (o DefaultServiceAccountsOutput) ToDefaultServiceAccountsOutput() DefaultServiceAccountsOutput

func (DefaultServiceAccountsOutput) ToDefaultServiceAccountsOutputWithContext

func (o DefaultServiceAccountsOutput) ToDefaultServiceAccountsOutputWithContext(ctx context.Context) DefaultServiceAccountsOutput

func (DefaultServiceAccountsOutput) ToOutput added in v6.65.1

type DefaultServiceAccountsState

type DefaultServiceAccountsState struct {
	// The action to be performed in the default service accounts. Valid values are: `DEPRIVILEGE`, `DELETE`, `DISABLE`. Note that `DEPRIVILEGE` action will ignore the REVERT configuration in the restore_policy
	Action pulumi.StringPtrInput
	// The project ID where service accounts are created.
	Project pulumi.StringPtrInput
	// The action to be performed in the default service accounts on the resource destroy.
	// Valid values are NONE, REVERT and REVERT_AND_IGNORE_FAILURE. It is applied for any action but in the DEPRIVILEGE.
	// If set to REVERT it attempts to restore all default SAs but the DEPRIVILEGE action.
	// If set to REVERT_AND_IGNORE_FAILURE it is the same behavior as REVERT but ignores errors returned by the API.
	RestorePolicy pulumi.StringPtrInput
	// The Service Accounts changed by this resource. It is used for `REVERT` the `action` on the destroy.
	ServiceAccounts pulumi.MapInput
}

func (DefaultServiceAccountsState) ElementType

type GetIamPolicyArgs added in v6.59.0

type GetIamPolicyArgs struct {
	// The project id of the target project. This is not
	// inferred from the provider.
	Project string `pulumi:"project"`
}

A collection of arguments for invoking getIamPolicy.

type GetIamPolicyOutputArgs added in v6.59.0

type GetIamPolicyOutputArgs struct {
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringInput `pulumi:"project"`
}

A collection of arguments for invoking getIamPolicy.

func (GetIamPolicyOutputArgs) ElementType added in v6.59.0

func (GetIamPolicyOutputArgs) ElementType() reflect.Type

type GetIamPolicyResult added in v6.59.0

type GetIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// (Computed) The policy data
	PolicyData string `pulumi:"policyData"`
	Project    string `pulumi:"project"`
}

A collection of values returned by getIamPolicy.

func GetIamPolicy added in v6.59.0

func GetIamPolicy(ctx *pulumi.Context, args *GetIamPolicyArgs, opts ...pulumi.InvokeOption) (*GetIamPolicyResult, error)

Retrieves the current IAM policy data for a project.

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.GetIamPolicy(ctx, &projects.GetIamPolicyArgs{
			Project: "myproject",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetIamPolicyResultOutput added in v6.59.0

type GetIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getIamPolicy.

func GetIamPolicyOutput added in v6.59.0

func GetIamPolicyOutput(ctx *pulumi.Context, args GetIamPolicyOutputArgs, opts ...pulumi.InvokeOption) GetIamPolicyResultOutput

func (GetIamPolicyResultOutput) ElementType added in v6.59.0

func (GetIamPolicyResultOutput) ElementType() reflect.Type

func (GetIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (GetIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (GetIamPolicyResultOutput) PolicyData added in v6.59.0

(Computed) The policy data

func (GetIamPolicyResultOutput) Project added in v6.59.0

func (GetIamPolicyResultOutput) ToGetIamPolicyResultOutput added in v6.59.0

func (o GetIamPolicyResultOutput) ToGetIamPolicyResultOutput() GetIamPolicyResultOutput

func (GetIamPolicyResultOutput) ToGetIamPolicyResultOutputWithContext added in v6.59.0

func (o GetIamPolicyResultOutput) ToGetIamPolicyResultOutputWithContext(ctx context.Context) GetIamPolicyResultOutput

func (GetIamPolicyResultOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyBooleanPolicy

type GetOrganizationPolicyBooleanPolicy struct {
	Enforced bool `pulumi:"enforced"`
}

type GetOrganizationPolicyBooleanPolicyArgs

type GetOrganizationPolicyBooleanPolicyArgs struct {
	Enforced pulumi.BoolInput `pulumi:"enforced"`
}

func (GetOrganizationPolicyBooleanPolicyArgs) ElementType

func (GetOrganizationPolicyBooleanPolicyArgs) ToGetOrganizationPolicyBooleanPolicyOutput

func (i GetOrganizationPolicyBooleanPolicyArgs) ToGetOrganizationPolicyBooleanPolicyOutput() GetOrganizationPolicyBooleanPolicyOutput

func (GetOrganizationPolicyBooleanPolicyArgs) ToGetOrganizationPolicyBooleanPolicyOutputWithContext

func (i GetOrganizationPolicyBooleanPolicyArgs) ToGetOrganizationPolicyBooleanPolicyOutputWithContext(ctx context.Context) GetOrganizationPolicyBooleanPolicyOutput

func (GetOrganizationPolicyBooleanPolicyArgs) ToOutput added in v6.65.1

type GetOrganizationPolicyBooleanPolicyArray

type GetOrganizationPolicyBooleanPolicyArray []GetOrganizationPolicyBooleanPolicyInput

func (GetOrganizationPolicyBooleanPolicyArray) ElementType

func (GetOrganizationPolicyBooleanPolicyArray) ToGetOrganizationPolicyBooleanPolicyArrayOutput

func (i GetOrganizationPolicyBooleanPolicyArray) ToGetOrganizationPolicyBooleanPolicyArrayOutput() GetOrganizationPolicyBooleanPolicyArrayOutput

func (GetOrganizationPolicyBooleanPolicyArray) ToGetOrganizationPolicyBooleanPolicyArrayOutputWithContext

func (i GetOrganizationPolicyBooleanPolicyArray) ToGetOrganizationPolicyBooleanPolicyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyBooleanPolicyArrayOutput

func (GetOrganizationPolicyBooleanPolicyArray) ToOutput added in v6.65.1

type GetOrganizationPolicyBooleanPolicyArrayInput

type GetOrganizationPolicyBooleanPolicyArrayInput interface {
	pulumi.Input

	ToGetOrganizationPolicyBooleanPolicyArrayOutput() GetOrganizationPolicyBooleanPolicyArrayOutput
	ToGetOrganizationPolicyBooleanPolicyArrayOutputWithContext(context.Context) GetOrganizationPolicyBooleanPolicyArrayOutput
}

GetOrganizationPolicyBooleanPolicyArrayInput is an input type that accepts GetOrganizationPolicyBooleanPolicyArray and GetOrganizationPolicyBooleanPolicyArrayOutput values. You can construct a concrete instance of `GetOrganizationPolicyBooleanPolicyArrayInput` via:

GetOrganizationPolicyBooleanPolicyArray{ GetOrganizationPolicyBooleanPolicyArgs{...} }

type GetOrganizationPolicyBooleanPolicyArrayOutput

type GetOrganizationPolicyBooleanPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyBooleanPolicyArrayOutput) ElementType

func (GetOrganizationPolicyBooleanPolicyArrayOutput) Index

func (GetOrganizationPolicyBooleanPolicyArrayOutput) ToGetOrganizationPolicyBooleanPolicyArrayOutput

func (o GetOrganizationPolicyBooleanPolicyArrayOutput) ToGetOrganizationPolicyBooleanPolicyArrayOutput() GetOrganizationPolicyBooleanPolicyArrayOutput

func (GetOrganizationPolicyBooleanPolicyArrayOutput) ToGetOrganizationPolicyBooleanPolicyArrayOutputWithContext

func (o GetOrganizationPolicyBooleanPolicyArrayOutput) ToGetOrganizationPolicyBooleanPolicyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyBooleanPolicyArrayOutput

func (GetOrganizationPolicyBooleanPolicyArrayOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyBooleanPolicyInput

type GetOrganizationPolicyBooleanPolicyInput interface {
	pulumi.Input

	ToGetOrganizationPolicyBooleanPolicyOutput() GetOrganizationPolicyBooleanPolicyOutput
	ToGetOrganizationPolicyBooleanPolicyOutputWithContext(context.Context) GetOrganizationPolicyBooleanPolicyOutput
}

GetOrganizationPolicyBooleanPolicyInput is an input type that accepts GetOrganizationPolicyBooleanPolicyArgs and GetOrganizationPolicyBooleanPolicyOutput values. You can construct a concrete instance of `GetOrganizationPolicyBooleanPolicyInput` via:

GetOrganizationPolicyBooleanPolicyArgs{...}

type GetOrganizationPolicyBooleanPolicyOutput

type GetOrganizationPolicyBooleanPolicyOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyBooleanPolicyOutput) ElementType

func (GetOrganizationPolicyBooleanPolicyOutput) Enforced

func (GetOrganizationPolicyBooleanPolicyOutput) ToGetOrganizationPolicyBooleanPolicyOutput

func (o GetOrganizationPolicyBooleanPolicyOutput) ToGetOrganizationPolicyBooleanPolicyOutput() GetOrganizationPolicyBooleanPolicyOutput

func (GetOrganizationPolicyBooleanPolicyOutput) ToGetOrganizationPolicyBooleanPolicyOutputWithContext

func (o GetOrganizationPolicyBooleanPolicyOutput) ToGetOrganizationPolicyBooleanPolicyOutputWithContext(ctx context.Context) GetOrganizationPolicyBooleanPolicyOutput

func (GetOrganizationPolicyBooleanPolicyOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicy

type GetOrganizationPolicyListPolicy struct {
	Allows            []GetOrganizationPolicyListPolicyAllow `pulumi:"allows"`
	Denies            []GetOrganizationPolicyListPolicyDeny  `pulumi:"denies"`
	InheritFromParent bool                                   `pulumi:"inheritFromParent"`
	SuggestedValue    string                                 `pulumi:"suggestedValue"`
}

type GetOrganizationPolicyListPolicyAllow

type GetOrganizationPolicyListPolicyAllow struct {
	All    bool     `pulumi:"all"`
	Values []string `pulumi:"values"`
}

type GetOrganizationPolicyListPolicyAllowArgs

type GetOrganizationPolicyListPolicyAllowArgs struct {
	All    pulumi.BoolInput        `pulumi:"all"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetOrganizationPolicyListPolicyAllowArgs) ElementType

func (GetOrganizationPolicyListPolicyAllowArgs) ToGetOrganizationPolicyListPolicyAllowOutput

func (i GetOrganizationPolicyListPolicyAllowArgs) ToGetOrganizationPolicyListPolicyAllowOutput() GetOrganizationPolicyListPolicyAllowOutput

func (GetOrganizationPolicyListPolicyAllowArgs) ToGetOrganizationPolicyListPolicyAllowOutputWithContext

func (i GetOrganizationPolicyListPolicyAllowArgs) ToGetOrganizationPolicyListPolicyAllowOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyAllowOutput

func (GetOrganizationPolicyListPolicyAllowArgs) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyAllowArray

type GetOrganizationPolicyListPolicyAllowArray []GetOrganizationPolicyListPolicyAllowInput

func (GetOrganizationPolicyListPolicyAllowArray) ElementType

func (GetOrganizationPolicyListPolicyAllowArray) ToGetOrganizationPolicyListPolicyAllowArrayOutput

func (i GetOrganizationPolicyListPolicyAllowArray) ToGetOrganizationPolicyListPolicyAllowArrayOutput() GetOrganizationPolicyListPolicyAllowArrayOutput

func (GetOrganizationPolicyListPolicyAllowArray) ToGetOrganizationPolicyListPolicyAllowArrayOutputWithContext

func (i GetOrganizationPolicyListPolicyAllowArray) ToGetOrganizationPolicyListPolicyAllowArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyAllowArrayOutput

func (GetOrganizationPolicyListPolicyAllowArray) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyAllowArrayInput

type GetOrganizationPolicyListPolicyAllowArrayInput interface {
	pulumi.Input

	ToGetOrganizationPolicyListPolicyAllowArrayOutput() GetOrganizationPolicyListPolicyAllowArrayOutput
	ToGetOrganizationPolicyListPolicyAllowArrayOutputWithContext(context.Context) GetOrganizationPolicyListPolicyAllowArrayOutput
}

GetOrganizationPolicyListPolicyAllowArrayInput is an input type that accepts GetOrganizationPolicyListPolicyAllowArray and GetOrganizationPolicyListPolicyAllowArrayOutput values. You can construct a concrete instance of `GetOrganizationPolicyListPolicyAllowArrayInput` via:

GetOrganizationPolicyListPolicyAllowArray{ GetOrganizationPolicyListPolicyAllowArgs{...} }

type GetOrganizationPolicyListPolicyAllowArrayOutput

type GetOrganizationPolicyListPolicyAllowArrayOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyListPolicyAllowArrayOutput) ElementType

func (GetOrganizationPolicyListPolicyAllowArrayOutput) Index

func (GetOrganizationPolicyListPolicyAllowArrayOutput) ToGetOrganizationPolicyListPolicyAllowArrayOutput

func (o GetOrganizationPolicyListPolicyAllowArrayOutput) ToGetOrganizationPolicyListPolicyAllowArrayOutput() GetOrganizationPolicyListPolicyAllowArrayOutput

func (GetOrganizationPolicyListPolicyAllowArrayOutput) ToGetOrganizationPolicyListPolicyAllowArrayOutputWithContext

func (o GetOrganizationPolicyListPolicyAllowArrayOutput) ToGetOrganizationPolicyListPolicyAllowArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyAllowArrayOutput

func (GetOrganizationPolicyListPolicyAllowArrayOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyAllowInput

type GetOrganizationPolicyListPolicyAllowInput interface {
	pulumi.Input

	ToGetOrganizationPolicyListPolicyAllowOutput() GetOrganizationPolicyListPolicyAllowOutput
	ToGetOrganizationPolicyListPolicyAllowOutputWithContext(context.Context) GetOrganizationPolicyListPolicyAllowOutput
}

GetOrganizationPolicyListPolicyAllowInput is an input type that accepts GetOrganizationPolicyListPolicyAllowArgs and GetOrganizationPolicyListPolicyAllowOutput values. You can construct a concrete instance of `GetOrganizationPolicyListPolicyAllowInput` via:

GetOrganizationPolicyListPolicyAllowArgs{...}

type GetOrganizationPolicyListPolicyAllowOutput

type GetOrganizationPolicyListPolicyAllowOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyListPolicyAllowOutput) All

func (GetOrganizationPolicyListPolicyAllowOutput) ElementType

func (GetOrganizationPolicyListPolicyAllowOutput) ToGetOrganizationPolicyListPolicyAllowOutput

func (o GetOrganizationPolicyListPolicyAllowOutput) ToGetOrganizationPolicyListPolicyAllowOutput() GetOrganizationPolicyListPolicyAllowOutput

func (GetOrganizationPolicyListPolicyAllowOutput) ToGetOrganizationPolicyListPolicyAllowOutputWithContext

func (o GetOrganizationPolicyListPolicyAllowOutput) ToGetOrganizationPolicyListPolicyAllowOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyAllowOutput

func (GetOrganizationPolicyListPolicyAllowOutput) ToOutput added in v6.65.1

func (GetOrganizationPolicyListPolicyAllowOutput) Values

type GetOrganizationPolicyListPolicyArgs

type GetOrganizationPolicyListPolicyArgs struct {
	Allows            GetOrganizationPolicyListPolicyAllowArrayInput `pulumi:"allows"`
	Denies            GetOrganizationPolicyListPolicyDenyArrayInput  `pulumi:"denies"`
	InheritFromParent pulumi.BoolInput                               `pulumi:"inheritFromParent"`
	SuggestedValue    pulumi.StringInput                             `pulumi:"suggestedValue"`
}

func (GetOrganizationPolicyListPolicyArgs) ElementType

func (GetOrganizationPolicyListPolicyArgs) ToGetOrganizationPolicyListPolicyOutput

func (i GetOrganizationPolicyListPolicyArgs) ToGetOrganizationPolicyListPolicyOutput() GetOrganizationPolicyListPolicyOutput

func (GetOrganizationPolicyListPolicyArgs) ToGetOrganizationPolicyListPolicyOutputWithContext

func (i GetOrganizationPolicyListPolicyArgs) ToGetOrganizationPolicyListPolicyOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyOutput

func (GetOrganizationPolicyListPolicyArgs) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyArray

type GetOrganizationPolicyListPolicyArray []GetOrganizationPolicyListPolicyInput

func (GetOrganizationPolicyListPolicyArray) ElementType

func (GetOrganizationPolicyListPolicyArray) ToGetOrganizationPolicyListPolicyArrayOutput

func (i GetOrganizationPolicyListPolicyArray) ToGetOrganizationPolicyListPolicyArrayOutput() GetOrganizationPolicyListPolicyArrayOutput

func (GetOrganizationPolicyListPolicyArray) ToGetOrganizationPolicyListPolicyArrayOutputWithContext

func (i GetOrganizationPolicyListPolicyArray) ToGetOrganizationPolicyListPolicyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyArrayOutput

func (GetOrganizationPolicyListPolicyArray) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyArrayInput

type GetOrganizationPolicyListPolicyArrayInput interface {
	pulumi.Input

	ToGetOrganizationPolicyListPolicyArrayOutput() GetOrganizationPolicyListPolicyArrayOutput
	ToGetOrganizationPolicyListPolicyArrayOutputWithContext(context.Context) GetOrganizationPolicyListPolicyArrayOutput
}

GetOrganizationPolicyListPolicyArrayInput is an input type that accepts GetOrganizationPolicyListPolicyArray and GetOrganizationPolicyListPolicyArrayOutput values. You can construct a concrete instance of `GetOrganizationPolicyListPolicyArrayInput` via:

GetOrganizationPolicyListPolicyArray{ GetOrganizationPolicyListPolicyArgs{...} }

type GetOrganizationPolicyListPolicyArrayOutput

type GetOrganizationPolicyListPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyListPolicyArrayOutput) ElementType

func (GetOrganizationPolicyListPolicyArrayOutput) Index

func (GetOrganizationPolicyListPolicyArrayOutput) ToGetOrganizationPolicyListPolicyArrayOutput

func (o GetOrganizationPolicyListPolicyArrayOutput) ToGetOrganizationPolicyListPolicyArrayOutput() GetOrganizationPolicyListPolicyArrayOutput

func (GetOrganizationPolicyListPolicyArrayOutput) ToGetOrganizationPolicyListPolicyArrayOutputWithContext

func (o GetOrganizationPolicyListPolicyArrayOutput) ToGetOrganizationPolicyListPolicyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyArrayOutput

func (GetOrganizationPolicyListPolicyArrayOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyDeny

type GetOrganizationPolicyListPolicyDeny struct {
	All    bool     `pulumi:"all"`
	Values []string `pulumi:"values"`
}

type GetOrganizationPolicyListPolicyDenyArgs

type GetOrganizationPolicyListPolicyDenyArgs struct {
	All    pulumi.BoolInput        `pulumi:"all"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetOrganizationPolicyListPolicyDenyArgs) ElementType

func (GetOrganizationPolicyListPolicyDenyArgs) ToGetOrganizationPolicyListPolicyDenyOutput

func (i GetOrganizationPolicyListPolicyDenyArgs) ToGetOrganizationPolicyListPolicyDenyOutput() GetOrganizationPolicyListPolicyDenyOutput

func (GetOrganizationPolicyListPolicyDenyArgs) ToGetOrganizationPolicyListPolicyDenyOutputWithContext

func (i GetOrganizationPolicyListPolicyDenyArgs) ToGetOrganizationPolicyListPolicyDenyOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyDenyOutput

func (GetOrganizationPolicyListPolicyDenyArgs) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyDenyArray

type GetOrganizationPolicyListPolicyDenyArray []GetOrganizationPolicyListPolicyDenyInput

func (GetOrganizationPolicyListPolicyDenyArray) ElementType

func (GetOrganizationPolicyListPolicyDenyArray) ToGetOrganizationPolicyListPolicyDenyArrayOutput

func (i GetOrganizationPolicyListPolicyDenyArray) ToGetOrganizationPolicyListPolicyDenyArrayOutput() GetOrganizationPolicyListPolicyDenyArrayOutput

func (GetOrganizationPolicyListPolicyDenyArray) ToGetOrganizationPolicyListPolicyDenyArrayOutputWithContext

func (i GetOrganizationPolicyListPolicyDenyArray) ToGetOrganizationPolicyListPolicyDenyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyDenyArrayOutput

func (GetOrganizationPolicyListPolicyDenyArray) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyDenyArrayInput

type GetOrganizationPolicyListPolicyDenyArrayInput interface {
	pulumi.Input

	ToGetOrganizationPolicyListPolicyDenyArrayOutput() GetOrganizationPolicyListPolicyDenyArrayOutput
	ToGetOrganizationPolicyListPolicyDenyArrayOutputWithContext(context.Context) GetOrganizationPolicyListPolicyDenyArrayOutput
}

GetOrganizationPolicyListPolicyDenyArrayInput is an input type that accepts GetOrganizationPolicyListPolicyDenyArray and GetOrganizationPolicyListPolicyDenyArrayOutput values. You can construct a concrete instance of `GetOrganizationPolicyListPolicyDenyArrayInput` via:

GetOrganizationPolicyListPolicyDenyArray{ GetOrganizationPolicyListPolicyDenyArgs{...} }

type GetOrganizationPolicyListPolicyDenyArrayOutput

type GetOrganizationPolicyListPolicyDenyArrayOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyListPolicyDenyArrayOutput) ElementType

func (GetOrganizationPolicyListPolicyDenyArrayOutput) Index

func (GetOrganizationPolicyListPolicyDenyArrayOutput) ToGetOrganizationPolicyListPolicyDenyArrayOutput

func (o GetOrganizationPolicyListPolicyDenyArrayOutput) ToGetOrganizationPolicyListPolicyDenyArrayOutput() GetOrganizationPolicyListPolicyDenyArrayOutput

func (GetOrganizationPolicyListPolicyDenyArrayOutput) ToGetOrganizationPolicyListPolicyDenyArrayOutputWithContext

func (o GetOrganizationPolicyListPolicyDenyArrayOutput) ToGetOrganizationPolicyListPolicyDenyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyDenyArrayOutput

func (GetOrganizationPolicyListPolicyDenyArrayOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyListPolicyDenyInput

type GetOrganizationPolicyListPolicyDenyInput interface {
	pulumi.Input

	ToGetOrganizationPolicyListPolicyDenyOutput() GetOrganizationPolicyListPolicyDenyOutput
	ToGetOrganizationPolicyListPolicyDenyOutputWithContext(context.Context) GetOrganizationPolicyListPolicyDenyOutput
}

GetOrganizationPolicyListPolicyDenyInput is an input type that accepts GetOrganizationPolicyListPolicyDenyArgs and GetOrganizationPolicyListPolicyDenyOutput values. You can construct a concrete instance of `GetOrganizationPolicyListPolicyDenyInput` via:

GetOrganizationPolicyListPolicyDenyArgs{...}

type GetOrganizationPolicyListPolicyDenyOutput

type GetOrganizationPolicyListPolicyDenyOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyListPolicyDenyOutput) All

func (GetOrganizationPolicyListPolicyDenyOutput) ElementType

func (GetOrganizationPolicyListPolicyDenyOutput) ToGetOrganizationPolicyListPolicyDenyOutput

func (o GetOrganizationPolicyListPolicyDenyOutput) ToGetOrganizationPolicyListPolicyDenyOutput() GetOrganizationPolicyListPolicyDenyOutput

func (GetOrganizationPolicyListPolicyDenyOutput) ToGetOrganizationPolicyListPolicyDenyOutputWithContext

func (o GetOrganizationPolicyListPolicyDenyOutput) ToGetOrganizationPolicyListPolicyDenyOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyDenyOutput

func (GetOrganizationPolicyListPolicyDenyOutput) ToOutput added in v6.65.1

func (GetOrganizationPolicyListPolicyDenyOutput) Values

type GetOrganizationPolicyListPolicyInput

type GetOrganizationPolicyListPolicyInput interface {
	pulumi.Input

	ToGetOrganizationPolicyListPolicyOutput() GetOrganizationPolicyListPolicyOutput
	ToGetOrganizationPolicyListPolicyOutputWithContext(context.Context) GetOrganizationPolicyListPolicyOutput
}

GetOrganizationPolicyListPolicyInput is an input type that accepts GetOrganizationPolicyListPolicyArgs and GetOrganizationPolicyListPolicyOutput values. You can construct a concrete instance of `GetOrganizationPolicyListPolicyInput` via:

GetOrganizationPolicyListPolicyArgs{...}

type GetOrganizationPolicyListPolicyOutput

type GetOrganizationPolicyListPolicyOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyListPolicyOutput) Allows

func (GetOrganizationPolicyListPolicyOutput) Denies

func (GetOrganizationPolicyListPolicyOutput) ElementType

func (GetOrganizationPolicyListPolicyOutput) InheritFromParent

func (GetOrganizationPolicyListPolicyOutput) SuggestedValue

func (GetOrganizationPolicyListPolicyOutput) ToGetOrganizationPolicyListPolicyOutput

func (o GetOrganizationPolicyListPolicyOutput) ToGetOrganizationPolicyListPolicyOutput() GetOrganizationPolicyListPolicyOutput

func (GetOrganizationPolicyListPolicyOutput) ToGetOrganizationPolicyListPolicyOutputWithContext

func (o GetOrganizationPolicyListPolicyOutput) ToGetOrganizationPolicyListPolicyOutputWithContext(ctx context.Context) GetOrganizationPolicyListPolicyOutput

func (GetOrganizationPolicyListPolicyOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyRestorePolicy

type GetOrganizationPolicyRestorePolicy struct {
	Default bool `pulumi:"default"`
}

type GetOrganizationPolicyRestorePolicyArgs

type GetOrganizationPolicyRestorePolicyArgs struct {
	Default pulumi.BoolInput `pulumi:"default"`
}

func (GetOrganizationPolicyRestorePolicyArgs) ElementType

func (GetOrganizationPolicyRestorePolicyArgs) ToGetOrganizationPolicyRestorePolicyOutput

func (i GetOrganizationPolicyRestorePolicyArgs) ToGetOrganizationPolicyRestorePolicyOutput() GetOrganizationPolicyRestorePolicyOutput

func (GetOrganizationPolicyRestorePolicyArgs) ToGetOrganizationPolicyRestorePolicyOutputWithContext

func (i GetOrganizationPolicyRestorePolicyArgs) ToGetOrganizationPolicyRestorePolicyOutputWithContext(ctx context.Context) GetOrganizationPolicyRestorePolicyOutput

func (GetOrganizationPolicyRestorePolicyArgs) ToOutput added in v6.65.1

type GetOrganizationPolicyRestorePolicyArray

type GetOrganizationPolicyRestorePolicyArray []GetOrganizationPolicyRestorePolicyInput

func (GetOrganizationPolicyRestorePolicyArray) ElementType

func (GetOrganizationPolicyRestorePolicyArray) ToGetOrganizationPolicyRestorePolicyArrayOutput

func (i GetOrganizationPolicyRestorePolicyArray) ToGetOrganizationPolicyRestorePolicyArrayOutput() GetOrganizationPolicyRestorePolicyArrayOutput

func (GetOrganizationPolicyRestorePolicyArray) ToGetOrganizationPolicyRestorePolicyArrayOutputWithContext

func (i GetOrganizationPolicyRestorePolicyArray) ToGetOrganizationPolicyRestorePolicyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyRestorePolicyArrayOutput

func (GetOrganizationPolicyRestorePolicyArray) ToOutput added in v6.65.1

type GetOrganizationPolicyRestorePolicyArrayInput

type GetOrganizationPolicyRestorePolicyArrayInput interface {
	pulumi.Input

	ToGetOrganizationPolicyRestorePolicyArrayOutput() GetOrganizationPolicyRestorePolicyArrayOutput
	ToGetOrganizationPolicyRestorePolicyArrayOutputWithContext(context.Context) GetOrganizationPolicyRestorePolicyArrayOutput
}

GetOrganizationPolicyRestorePolicyArrayInput is an input type that accepts GetOrganizationPolicyRestorePolicyArray and GetOrganizationPolicyRestorePolicyArrayOutput values. You can construct a concrete instance of `GetOrganizationPolicyRestorePolicyArrayInput` via:

GetOrganizationPolicyRestorePolicyArray{ GetOrganizationPolicyRestorePolicyArgs{...} }

type GetOrganizationPolicyRestorePolicyArrayOutput

type GetOrganizationPolicyRestorePolicyArrayOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyRestorePolicyArrayOutput) ElementType

func (GetOrganizationPolicyRestorePolicyArrayOutput) Index

func (GetOrganizationPolicyRestorePolicyArrayOutput) ToGetOrganizationPolicyRestorePolicyArrayOutput

func (o GetOrganizationPolicyRestorePolicyArrayOutput) ToGetOrganizationPolicyRestorePolicyArrayOutput() GetOrganizationPolicyRestorePolicyArrayOutput

func (GetOrganizationPolicyRestorePolicyArrayOutput) ToGetOrganizationPolicyRestorePolicyArrayOutputWithContext

func (o GetOrganizationPolicyRestorePolicyArrayOutput) ToGetOrganizationPolicyRestorePolicyArrayOutputWithContext(ctx context.Context) GetOrganizationPolicyRestorePolicyArrayOutput

func (GetOrganizationPolicyRestorePolicyArrayOutput) ToOutput added in v6.65.1

type GetOrganizationPolicyRestorePolicyInput

type GetOrganizationPolicyRestorePolicyInput interface {
	pulumi.Input

	ToGetOrganizationPolicyRestorePolicyOutput() GetOrganizationPolicyRestorePolicyOutput
	ToGetOrganizationPolicyRestorePolicyOutputWithContext(context.Context) GetOrganizationPolicyRestorePolicyOutput
}

GetOrganizationPolicyRestorePolicyInput is an input type that accepts GetOrganizationPolicyRestorePolicyArgs and GetOrganizationPolicyRestorePolicyOutput values. You can construct a concrete instance of `GetOrganizationPolicyRestorePolicyInput` via:

GetOrganizationPolicyRestorePolicyArgs{...}

type GetOrganizationPolicyRestorePolicyOutput

type GetOrganizationPolicyRestorePolicyOutput struct{ *pulumi.OutputState }

func (GetOrganizationPolicyRestorePolicyOutput) Default

func (GetOrganizationPolicyRestorePolicyOutput) ElementType

func (GetOrganizationPolicyRestorePolicyOutput) ToGetOrganizationPolicyRestorePolicyOutput

func (o GetOrganizationPolicyRestorePolicyOutput) ToGetOrganizationPolicyRestorePolicyOutput() GetOrganizationPolicyRestorePolicyOutput

func (GetOrganizationPolicyRestorePolicyOutput) ToGetOrganizationPolicyRestorePolicyOutputWithContext

func (o GetOrganizationPolicyRestorePolicyOutput) ToGetOrganizationPolicyRestorePolicyOutputWithContext(ctx context.Context) GetOrganizationPolicyRestorePolicyOutput

func (GetOrganizationPolicyRestorePolicyOutput) ToOutput added in v6.65.1

type GetProjectArgs

type GetProjectArgs struct {
	// A string filter as defined in the [REST API](https://cloud.google.com/resource-manager/reference/rest/v1/projects/list#query-parameters).
	Filter string `pulumi:"filter"`
}

A collection of arguments for invoking getProject.

type GetProjectOutputArgs

type GetProjectOutputArgs struct {
	// A string filter as defined in the [REST API](https://cloud.google.com/resource-manager/reference/rest/v1/projects/list#query-parameters).
	Filter pulumi.StringInput `pulumi:"filter"`
}

A collection of arguments for invoking getProject.

func (GetProjectOutputArgs) ElementType

func (GetProjectOutputArgs) ElementType() reflect.Type

type GetProjectProject

type GetProjectProject struct {
	// Creation time in RFC3339 UTC "Zulu" format.
	CreateTime string `pulumi:"createTime"`
	// A set of key/value label pairs assigned on a project.
	Labels map[string]string `pulumi:"labels"`
	// The Project lifecycle state.
	LifecycleState string `pulumi:"lifecycleState"`
	// The optional user-assigned display name of the project.
	Name string `pulumi:"name"`
	// The numeric identifier of the project.
	Number string `pulumi:"number"`
	// An optional reference to a parent resource.
	Parent map[string]string `pulumi:"parent"`
	// The project id of the project.
	ProjectId string `pulumi:"projectId"`
}

type GetProjectProjectArgs

type GetProjectProjectArgs struct {
	// Creation time in RFC3339 UTC "Zulu" format.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// A set of key/value label pairs assigned on a project.
	Labels pulumi.StringMapInput `pulumi:"labels"`
	// The Project lifecycle state.
	LifecycleState pulumi.StringInput `pulumi:"lifecycleState"`
	// The optional user-assigned display name of the project.
	Name pulumi.StringInput `pulumi:"name"`
	// The numeric identifier of the project.
	Number pulumi.StringInput `pulumi:"number"`
	// An optional reference to a parent resource.
	Parent pulumi.StringMapInput `pulumi:"parent"`
	// The project id of the project.
	ProjectId pulumi.StringInput `pulumi:"projectId"`
}

func (GetProjectProjectArgs) ElementType

func (GetProjectProjectArgs) ElementType() reflect.Type

func (GetProjectProjectArgs) ToGetProjectProjectOutput

func (i GetProjectProjectArgs) ToGetProjectProjectOutput() GetProjectProjectOutput

func (GetProjectProjectArgs) ToGetProjectProjectOutputWithContext

func (i GetProjectProjectArgs) ToGetProjectProjectOutputWithContext(ctx context.Context) GetProjectProjectOutput

func (GetProjectProjectArgs) ToOutput added in v6.65.1

type GetProjectProjectArray

type GetProjectProjectArray []GetProjectProjectInput

func (GetProjectProjectArray) ElementType

func (GetProjectProjectArray) ElementType() reflect.Type

func (GetProjectProjectArray) ToGetProjectProjectArrayOutput

func (i GetProjectProjectArray) ToGetProjectProjectArrayOutput() GetProjectProjectArrayOutput

func (GetProjectProjectArray) ToGetProjectProjectArrayOutputWithContext

func (i GetProjectProjectArray) ToGetProjectProjectArrayOutputWithContext(ctx context.Context) GetProjectProjectArrayOutput

func (GetProjectProjectArray) ToOutput added in v6.65.1

type GetProjectProjectArrayInput

type GetProjectProjectArrayInput interface {
	pulumi.Input

	ToGetProjectProjectArrayOutput() GetProjectProjectArrayOutput
	ToGetProjectProjectArrayOutputWithContext(context.Context) GetProjectProjectArrayOutput
}

GetProjectProjectArrayInput is an input type that accepts GetProjectProjectArray and GetProjectProjectArrayOutput values. You can construct a concrete instance of `GetProjectProjectArrayInput` via:

GetProjectProjectArray{ GetProjectProjectArgs{...} }

type GetProjectProjectArrayOutput

type GetProjectProjectArrayOutput struct{ *pulumi.OutputState }

func (GetProjectProjectArrayOutput) ElementType

func (GetProjectProjectArrayOutput) Index

func (GetProjectProjectArrayOutput) ToGetProjectProjectArrayOutput

func (o GetProjectProjectArrayOutput) ToGetProjectProjectArrayOutput() GetProjectProjectArrayOutput

func (GetProjectProjectArrayOutput) ToGetProjectProjectArrayOutputWithContext

func (o GetProjectProjectArrayOutput) ToGetProjectProjectArrayOutputWithContext(ctx context.Context) GetProjectProjectArrayOutput

func (GetProjectProjectArrayOutput) ToOutput added in v6.65.1

type GetProjectProjectInput

type GetProjectProjectInput interface {
	pulumi.Input

	ToGetProjectProjectOutput() GetProjectProjectOutput
	ToGetProjectProjectOutputWithContext(context.Context) GetProjectProjectOutput
}

GetProjectProjectInput is an input type that accepts GetProjectProjectArgs and GetProjectProjectOutput values. You can construct a concrete instance of `GetProjectProjectInput` via:

GetProjectProjectArgs{...}

type GetProjectProjectOutput

type GetProjectProjectOutput struct{ *pulumi.OutputState }

func (GetProjectProjectOutput) CreateTime

Creation time in RFC3339 UTC "Zulu" format.

func (GetProjectProjectOutput) ElementType

func (GetProjectProjectOutput) ElementType() reflect.Type

func (GetProjectProjectOutput) Labels

A set of key/value label pairs assigned on a project.

func (GetProjectProjectOutput) LifecycleState

func (o GetProjectProjectOutput) LifecycleState() pulumi.StringOutput

The Project lifecycle state.

func (GetProjectProjectOutput) Name

The optional user-assigned display name of the project.

func (GetProjectProjectOutput) Number

The numeric identifier of the project.

func (GetProjectProjectOutput) Parent

An optional reference to a parent resource.

func (GetProjectProjectOutput) ProjectId

The project id of the project.

func (GetProjectProjectOutput) ToGetProjectProjectOutput

func (o GetProjectProjectOutput) ToGetProjectProjectOutput() GetProjectProjectOutput

func (GetProjectProjectOutput) ToGetProjectProjectOutputWithContext

func (o GetProjectProjectOutput) ToGetProjectProjectOutputWithContext(ctx context.Context) GetProjectProjectOutput

func (GetProjectProjectOutput) ToOutput added in v6.65.1

type GetProjectResult

type GetProjectResult struct {
	Filter string `pulumi:"filter"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of projects matching the provided filter. Structure is defined below.
	Projects []GetProjectProject `pulumi:"projects"`
}

A collection of values returned by getProject.

func GetProject

func GetProject(ctx *pulumi.Context, args *GetProjectArgs, opts ...pulumi.InvokeOption) (*GetProjectResult, error)

Retrieve information about a set of projects based on a filter. See the [REST API](https://cloud.google.com/resource-manager/reference/rest/v1/projects/list) for more details.

## Example Usage ### Searching For Projects About To Be Deleted In An Org

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		my_org_projects, err := projects.GetProject(ctx, &projects.GetProjectArgs{
			Filter: "parent.id:012345678910 lifecycleState:DELETE_REQUESTED",
		}, nil)
		if err != nil {
			return err
		}
		_, err = organizations.LookupProject(ctx, &organizations.LookupProjectArgs{
			ProjectId: pulumi.StringRef(my_org_projects.Projects[0].ProjectId),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetProjectResultOutput

type GetProjectResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProject.

func (GetProjectResultOutput) ElementType

func (GetProjectResultOutput) ElementType() reflect.Type

func (GetProjectResultOutput) Filter

func (GetProjectResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetProjectResultOutput) Projects

A list of projects matching the provided filter. Structure is defined below.

func (GetProjectResultOutput) ToGetProjectResultOutput

func (o GetProjectResultOutput) ToGetProjectResultOutput() GetProjectResultOutput

func (GetProjectResultOutput) ToGetProjectResultOutputWithContext

func (o GetProjectResultOutput) ToGetProjectResultOutputWithContext(ctx context.Context) GetProjectResultOutput

func (GetProjectResultOutput) ToOutput added in v6.65.1

type GetProjectServiceArgs added in v6.47.0

type GetProjectServiceArgs struct {
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project *string `pulumi:"project"`
	// The name of the Google Platform project service.
	//
	// ***
	Service string `pulumi:"service"`
}

A collection of arguments for invoking getProjectService.

type GetProjectServiceOutputArgs added in v6.47.0

type GetProjectServiceOutputArgs struct {
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
	// The name of the Google Platform project service.
	//
	// ***
	Service pulumi.StringInput `pulumi:"service"`
}

A collection of arguments for invoking getProjectService.

func (GetProjectServiceOutputArgs) ElementType added in v6.47.0

type GetProjectServiceResult added in v6.47.0

type GetProjectServiceResult struct {
	DisableDependentServices bool `pulumi:"disableDependentServices"`
	DisableOnDestroy         bool `pulumi:"disableOnDestroy"`
	// The provider-assigned unique ID for this managed resource.
	Id      string  `pulumi:"id"`
	Project *string `pulumi:"project"`
	Service string  `pulumi:"service"`
}

A collection of values returned by getProjectService.

func GetProjectService added in v6.47.0

func GetProjectService(ctx *pulumi.Context, args *GetProjectServiceArgs, opts ...pulumi.InvokeOption) (*GetProjectServiceResult, error)

Verify the API service for the Google Cloud Platform project to see if it is enabled or not.

For a list of services available, visit the [API library page](https://console.cloud.google.com/apis/library) or run `gcloud services list --available`.

This datasource requires the [Service Usage API](https://console.cloud.google.com/apis/library/serviceusage.googleapis.com) to use.

To get more information about `projects.Service`, see:

* [API documentation](https://cloud.google.com/service-usage/docs/reference/rest/v1/services) * How-to Guides

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.GetProjectService(ctx, &projects.GetProjectServiceArgs{
			Service: "my-project-service",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetProjectServiceResultOutput added in v6.47.0

type GetProjectServiceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProjectService.

func GetProjectServiceOutput added in v6.47.0

func (GetProjectServiceResultOutput) DisableDependentServices added in v6.47.0

func (o GetProjectServiceResultOutput) DisableDependentServices() pulumi.BoolOutput

func (GetProjectServiceResultOutput) DisableOnDestroy added in v6.47.0

func (o GetProjectServiceResultOutput) DisableOnDestroy() pulumi.BoolOutput

func (GetProjectServiceResultOutput) ElementType added in v6.47.0

func (GetProjectServiceResultOutput) Id added in v6.47.0

The provider-assigned unique ID for this managed resource.

func (GetProjectServiceResultOutput) Project added in v6.47.0

func (GetProjectServiceResultOutput) Service added in v6.47.0

func (GetProjectServiceResultOutput) ToGetProjectServiceResultOutput added in v6.47.0

func (o GetProjectServiceResultOutput) ToGetProjectServiceResultOutput() GetProjectServiceResultOutput

func (GetProjectServiceResultOutput) ToGetProjectServiceResultOutputWithContext added in v6.47.0

func (o GetProjectServiceResultOutput) ToGetProjectServiceResultOutputWithContext(ctx context.Context) GetProjectServiceResultOutput

func (GetProjectServiceResultOutput) ToOutput added in v6.65.1

type IAMAuditConfig

type IAMAuditConfig struct {
	pulumi.CustomResourceState

	// The configuration for logging of each type of permission.  This can be specified multiple times.  Structure is documented below.
	AuditLogConfigs IAMAuditConfigAuditLogConfigArrayOutput `pulumi:"auditLogConfigs"`
	// (Computed) The etag of the project's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringOutput `pulumi:"project"`
	// Service which will be enabled for audit logging.  The special value `allServices` covers all services.  Note that if there are google\_project\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.
	Service pulumi.StringOutput `pulumi:"service"`
}

Four different resources help you manage your IAM policy for a project. Each of these resources serves a different use case:

* `projects.IAMPolicy`: Authoritative. Sets the IAM policy for the project and replaces any existing policy already attached. * `projects.IAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the project are preserved. * `projects.IAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the project are preserved. * `projects.IAMAuditConfig`: Authoritative for a given service. Updates the IAM policy to enable audit logging for the given service.

> **Note:** `projects.IAMPolicy` **cannot** be used in conjunction with `projects.IAMBinding`, `projects.IAMMember`, or `projects.IAMAuditConfig` or they will fight over what your policy should be.

> **Note:** `projects.IAMBinding` resources **can be** used in conjunction with `projects.IAMMember` resources **only if** they do not grant privilege to the same role.

> **Note:** The underlying API method `projects.setIamPolicy` has a lot of constraints which are documented [here](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setIamPolicy). In addition to these constraints,

IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning 400 error code so please review these if you encounter errors with this resource.

## google\_project\_iam\_policy

!> **Be careful!** You can accidentally lock yourself out of your project

using this resource. Deleting a `projects.IAMPolicy` removes access
from anyone without organization-level access to the project. Proceed with caution.
It's not recommended to use `projects.IAMPolicy` with your provider project
to avoid locking yourself out, and it should generally only be used with projects
fully managed by this provider. If you do use this resource, it is recommended to **import** the policy before
applying the change.

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			Project:    pulumi.String("your-project-id"),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Condition: {
						Description: pulumi.StringRef("Expiring at midnight of 2019-12-31"),
						Expression:  "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
						Title:       "expires_after_2019_12_31",
					},
					Members: []string{
						"user:jane@example.com",
					},
					Role: "roles/compute.admin",
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			PolicyData: *pulumi.String(admin.PolicyData),
			Project:    pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Condition: &projects.IAMBindingConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/container.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Condition: &projects.IAMMemberConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/firebase.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_audit\_config

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMAuditConfig(ctx, "project", &projects.IAMAuditConfigArgs{
			AuditLogConfigs: projects.IAMAuditConfigAuditLogConfigArray{
				&projects.IAMAuditConfigAuditLogConfigArgs{
					LogType: pulumi.String("ADMIN_READ"),
				},
				&projects.IAMAuditConfigAuditLogConfigArgs{
					ExemptedMembers: pulumi.StringArray{
						pulumi.String("user:joebloggs@hashicorp.com"),
					},
					LogType: pulumi.String("DATA_READ"),
				},
			},
			Project: pulumi.String("your-project-id"),
			Service: pulumi.String("allServices"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `project_id`, role, and member e.g.

```sh

$ pulumi import gcp:projects/iAMAuditConfig:IAMAuditConfig my_project "your-project-id roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `project_id` and role, e.g.

```sh

$ pulumi import gcp:projects/iAMAuditConfig:IAMAuditConfig my_project "your-project-id roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `project_id`.

```sh

$ pulumi import gcp:projects/iAMAuditConfig:IAMAuditConfig my_project your-project-id

```

IAM audit config imports use the identifier of the resource in question and the service, e.g.

```sh

$ pulumi import gcp:projects/iAMAuditConfig:IAMAuditConfig my_project "your-project-id foo.googleapis.com"

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`. -> **Conditional IAM Bindings**If you're importing a IAM binding with a condition block, make sure

```sh

$ pulumi import gcp:projects/iAMAuditConfig:IAMAuditConfig to include the title of condition, e.g. `google_project_iam_binding.my_project "{{your-project-id}} roles/{{role_id}} condition-title"`

```

func GetIAMAuditConfig

func GetIAMAuditConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IAMAuditConfigState, opts ...pulumi.ResourceOption) (*IAMAuditConfig, error)

GetIAMAuditConfig gets an existing IAMAuditConfig 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 NewIAMAuditConfig

func NewIAMAuditConfig(ctx *pulumi.Context,
	name string, args *IAMAuditConfigArgs, opts ...pulumi.ResourceOption) (*IAMAuditConfig, error)

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

func (*IAMAuditConfig) ElementType

func (*IAMAuditConfig) ElementType() reflect.Type

func (*IAMAuditConfig) ToIAMAuditConfigOutput

func (i *IAMAuditConfig) ToIAMAuditConfigOutput() IAMAuditConfigOutput

func (*IAMAuditConfig) ToIAMAuditConfigOutputWithContext

func (i *IAMAuditConfig) ToIAMAuditConfigOutputWithContext(ctx context.Context) IAMAuditConfigOutput

func (*IAMAuditConfig) ToOutput added in v6.65.1

type IAMAuditConfigArgs

type IAMAuditConfigArgs struct {
	// The configuration for logging of each type of permission.  This can be specified multiple times.  Structure is documented below.
	AuditLogConfigs IAMAuditConfigAuditLogConfigArrayInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringInput
	// Service which will be enabled for audit logging.  The special value `allServices` covers all services.  Note that if there are google\_project\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.
	Service pulumi.StringInput
}

The set of arguments for constructing a IAMAuditConfig resource.

func (IAMAuditConfigArgs) ElementType

func (IAMAuditConfigArgs) ElementType() reflect.Type

type IAMAuditConfigArray

type IAMAuditConfigArray []IAMAuditConfigInput

func (IAMAuditConfigArray) ElementType

func (IAMAuditConfigArray) ElementType() reflect.Type

func (IAMAuditConfigArray) ToIAMAuditConfigArrayOutput

func (i IAMAuditConfigArray) ToIAMAuditConfigArrayOutput() IAMAuditConfigArrayOutput

func (IAMAuditConfigArray) ToIAMAuditConfigArrayOutputWithContext

func (i IAMAuditConfigArray) ToIAMAuditConfigArrayOutputWithContext(ctx context.Context) IAMAuditConfigArrayOutput

func (IAMAuditConfigArray) ToOutput added in v6.65.1

type IAMAuditConfigArrayInput

type IAMAuditConfigArrayInput interface {
	pulumi.Input

	ToIAMAuditConfigArrayOutput() IAMAuditConfigArrayOutput
	ToIAMAuditConfigArrayOutputWithContext(context.Context) IAMAuditConfigArrayOutput
}

IAMAuditConfigArrayInput is an input type that accepts IAMAuditConfigArray and IAMAuditConfigArrayOutput values. You can construct a concrete instance of `IAMAuditConfigArrayInput` via:

IAMAuditConfigArray{ IAMAuditConfigArgs{...} }

type IAMAuditConfigArrayOutput

type IAMAuditConfigArrayOutput struct{ *pulumi.OutputState }

func (IAMAuditConfigArrayOutput) ElementType

func (IAMAuditConfigArrayOutput) ElementType() reflect.Type

func (IAMAuditConfigArrayOutput) Index

func (IAMAuditConfigArrayOutput) ToIAMAuditConfigArrayOutput

func (o IAMAuditConfigArrayOutput) ToIAMAuditConfigArrayOutput() IAMAuditConfigArrayOutput

func (IAMAuditConfigArrayOutput) ToIAMAuditConfigArrayOutputWithContext

func (o IAMAuditConfigArrayOutput) ToIAMAuditConfigArrayOutputWithContext(ctx context.Context) IAMAuditConfigArrayOutput

func (IAMAuditConfigArrayOutput) ToOutput added in v6.65.1

type IAMAuditConfigAuditLogConfig

type IAMAuditConfigAuditLogConfig struct {
	// Identities that do not cause logging for this type of permission.  The format is the same as that for `members`.
	ExemptedMembers []string `pulumi:"exemptedMembers"`
	// Permission type for which logging is to be configured.  Must be one of `DATA_READ`, `DATA_WRITE`, or `ADMIN_READ`.
	LogType string `pulumi:"logType"`
}

type IAMAuditConfigAuditLogConfigArgs

type IAMAuditConfigAuditLogConfigArgs struct {
	// Identities that do not cause logging for this type of permission.  The format is the same as that for `members`.
	ExemptedMembers pulumi.StringArrayInput `pulumi:"exemptedMembers"`
	// Permission type for which logging is to be configured.  Must be one of `DATA_READ`, `DATA_WRITE`, or `ADMIN_READ`.
	LogType pulumi.StringInput `pulumi:"logType"`
}

func (IAMAuditConfigAuditLogConfigArgs) ElementType

func (IAMAuditConfigAuditLogConfigArgs) ToIAMAuditConfigAuditLogConfigOutput

func (i IAMAuditConfigAuditLogConfigArgs) ToIAMAuditConfigAuditLogConfigOutput() IAMAuditConfigAuditLogConfigOutput

func (IAMAuditConfigAuditLogConfigArgs) ToIAMAuditConfigAuditLogConfigOutputWithContext

func (i IAMAuditConfigAuditLogConfigArgs) ToIAMAuditConfigAuditLogConfigOutputWithContext(ctx context.Context) IAMAuditConfigAuditLogConfigOutput

func (IAMAuditConfigAuditLogConfigArgs) ToOutput added in v6.65.1

type IAMAuditConfigAuditLogConfigArray

type IAMAuditConfigAuditLogConfigArray []IAMAuditConfigAuditLogConfigInput

func (IAMAuditConfigAuditLogConfigArray) ElementType

func (IAMAuditConfigAuditLogConfigArray) ToIAMAuditConfigAuditLogConfigArrayOutput

func (i IAMAuditConfigAuditLogConfigArray) ToIAMAuditConfigAuditLogConfigArrayOutput() IAMAuditConfigAuditLogConfigArrayOutput

func (IAMAuditConfigAuditLogConfigArray) ToIAMAuditConfigAuditLogConfigArrayOutputWithContext

func (i IAMAuditConfigAuditLogConfigArray) ToIAMAuditConfigAuditLogConfigArrayOutputWithContext(ctx context.Context) IAMAuditConfigAuditLogConfigArrayOutput

func (IAMAuditConfigAuditLogConfigArray) ToOutput added in v6.65.1

type IAMAuditConfigAuditLogConfigArrayInput

type IAMAuditConfigAuditLogConfigArrayInput interface {
	pulumi.Input

	ToIAMAuditConfigAuditLogConfigArrayOutput() IAMAuditConfigAuditLogConfigArrayOutput
	ToIAMAuditConfigAuditLogConfigArrayOutputWithContext(context.Context) IAMAuditConfigAuditLogConfigArrayOutput
}

IAMAuditConfigAuditLogConfigArrayInput is an input type that accepts IAMAuditConfigAuditLogConfigArray and IAMAuditConfigAuditLogConfigArrayOutput values. You can construct a concrete instance of `IAMAuditConfigAuditLogConfigArrayInput` via:

IAMAuditConfigAuditLogConfigArray{ IAMAuditConfigAuditLogConfigArgs{...} }

type IAMAuditConfigAuditLogConfigArrayOutput

type IAMAuditConfigAuditLogConfigArrayOutput struct{ *pulumi.OutputState }

func (IAMAuditConfigAuditLogConfigArrayOutput) ElementType

func (IAMAuditConfigAuditLogConfigArrayOutput) Index

func (IAMAuditConfigAuditLogConfigArrayOutput) ToIAMAuditConfigAuditLogConfigArrayOutput

func (o IAMAuditConfigAuditLogConfigArrayOutput) ToIAMAuditConfigAuditLogConfigArrayOutput() IAMAuditConfigAuditLogConfigArrayOutput

func (IAMAuditConfigAuditLogConfigArrayOutput) ToIAMAuditConfigAuditLogConfigArrayOutputWithContext

func (o IAMAuditConfigAuditLogConfigArrayOutput) ToIAMAuditConfigAuditLogConfigArrayOutputWithContext(ctx context.Context) IAMAuditConfigAuditLogConfigArrayOutput

func (IAMAuditConfigAuditLogConfigArrayOutput) ToOutput added in v6.65.1

type IAMAuditConfigAuditLogConfigInput

type IAMAuditConfigAuditLogConfigInput interface {
	pulumi.Input

	ToIAMAuditConfigAuditLogConfigOutput() IAMAuditConfigAuditLogConfigOutput
	ToIAMAuditConfigAuditLogConfigOutputWithContext(context.Context) IAMAuditConfigAuditLogConfigOutput
}

IAMAuditConfigAuditLogConfigInput is an input type that accepts IAMAuditConfigAuditLogConfigArgs and IAMAuditConfigAuditLogConfigOutput values. You can construct a concrete instance of `IAMAuditConfigAuditLogConfigInput` via:

IAMAuditConfigAuditLogConfigArgs{...}

type IAMAuditConfigAuditLogConfigOutput

type IAMAuditConfigAuditLogConfigOutput struct{ *pulumi.OutputState }

func (IAMAuditConfigAuditLogConfigOutput) ElementType

func (IAMAuditConfigAuditLogConfigOutput) ExemptedMembers

Identities that do not cause logging for this type of permission. The format is the same as that for `members`.

func (IAMAuditConfigAuditLogConfigOutput) LogType

Permission type for which logging is to be configured. Must be one of `DATA_READ`, `DATA_WRITE`, or `ADMIN_READ`.

func (IAMAuditConfigAuditLogConfigOutput) ToIAMAuditConfigAuditLogConfigOutput

func (o IAMAuditConfigAuditLogConfigOutput) ToIAMAuditConfigAuditLogConfigOutput() IAMAuditConfigAuditLogConfigOutput

func (IAMAuditConfigAuditLogConfigOutput) ToIAMAuditConfigAuditLogConfigOutputWithContext

func (o IAMAuditConfigAuditLogConfigOutput) ToIAMAuditConfigAuditLogConfigOutputWithContext(ctx context.Context) IAMAuditConfigAuditLogConfigOutput

func (IAMAuditConfigAuditLogConfigOutput) ToOutput added in v6.65.1

type IAMAuditConfigInput

type IAMAuditConfigInput interface {
	pulumi.Input

	ToIAMAuditConfigOutput() IAMAuditConfigOutput
	ToIAMAuditConfigOutputWithContext(ctx context.Context) IAMAuditConfigOutput
}

type IAMAuditConfigMap

type IAMAuditConfigMap map[string]IAMAuditConfigInput

func (IAMAuditConfigMap) ElementType

func (IAMAuditConfigMap) ElementType() reflect.Type

func (IAMAuditConfigMap) ToIAMAuditConfigMapOutput

func (i IAMAuditConfigMap) ToIAMAuditConfigMapOutput() IAMAuditConfigMapOutput

func (IAMAuditConfigMap) ToIAMAuditConfigMapOutputWithContext

func (i IAMAuditConfigMap) ToIAMAuditConfigMapOutputWithContext(ctx context.Context) IAMAuditConfigMapOutput

func (IAMAuditConfigMap) ToOutput added in v6.65.1

type IAMAuditConfigMapInput

type IAMAuditConfigMapInput interface {
	pulumi.Input

	ToIAMAuditConfigMapOutput() IAMAuditConfigMapOutput
	ToIAMAuditConfigMapOutputWithContext(context.Context) IAMAuditConfigMapOutput
}

IAMAuditConfigMapInput is an input type that accepts IAMAuditConfigMap and IAMAuditConfigMapOutput values. You can construct a concrete instance of `IAMAuditConfigMapInput` via:

IAMAuditConfigMap{ "key": IAMAuditConfigArgs{...} }

type IAMAuditConfigMapOutput

type IAMAuditConfigMapOutput struct{ *pulumi.OutputState }

func (IAMAuditConfigMapOutput) ElementType

func (IAMAuditConfigMapOutput) ElementType() reflect.Type

func (IAMAuditConfigMapOutput) MapIndex

func (IAMAuditConfigMapOutput) ToIAMAuditConfigMapOutput

func (o IAMAuditConfigMapOutput) ToIAMAuditConfigMapOutput() IAMAuditConfigMapOutput

func (IAMAuditConfigMapOutput) ToIAMAuditConfigMapOutputWithContext

func (o IAMAuditConfigMapOutput) ToIAMAuditConfigMapOutputWithContext(ctx context.Context) IAMAuditConfigMapOutput

func (IAMAuditConfigMapOutput) ToOutput added in v6.65.1

type IAMAuditConfigOutput

type IAMAuditConfigOutput struct{ *pulumi.OutputState }

func (IAMAuditConfigOutput) AuditLogConfigs added in v6.23.0

The configuration for logging of each type of permission. This can be specified multiple times. Structure is documented below.

func (IAMAuditConfigOutput) ElementType

func (IAMAuditConfigOutput) ElementType() reflect.Type

func (IAMAuditConfigOutput) Etag added in v6.23.0

(Computed) The etag of the project's IAM policy.

func (IAMAuditConfigOutput) Project added in v6.23.0

The project id of the target project. This is not inferred from the provider.

func (IAMAuditConfigOutput) Service added in v6.23.0

Service which will be enabled for audit logging. The special value `allServices` covers all services. Note that if there are google\_project\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.

func (IAMAuditConfigOutput) ToIAMAuditConfigOutput

func (o IAMAuditConfigOutput) ToIAMAuditConfigOutput() IAMAuditConfigOutput

func (IAMAuditConfigOutput) ToIAMAuditConfigOutputWithContext

func (o IAMAuditConfigOutput) ToIAMAuditConfigOutputWithContext(ctx context.Context) IAMAuditConfigOutput

func (IAMAuditConfigOutput) ToOutput added in v6.65.1

type IAMAuditConfigState

type IAMAuditConfigState struct {
	// The configuration for logging of each type of permission.  This can be specified multiple times.  Structure is documented below.
	AuditLogConfigs IAMAuditConfigAuditLogConfigArrayInput
	// (Computed) The etag of the project's IAM policy.
	Etag pulumi.StringPtrInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringPtrInput
	// Service which will be enabled for audit logging.  The special value `allServices` covers all services.  Note that if there are google\_project\_iam\_audit\_config resources covering both `allServices` and a specific service then the union of the two AuditConfigs is used for that service: the `logTypes` specified in each `auditLogConfig` are enabled, and the `exemptedMembers` in each `auditLogConfig` are exempted.
	Service pulumi.StringPtrInput
}

func (IAMAuditConfigState) ElementType

func (IAMAuditConfigState) ElementType() reflect.Type

type IAMBinding

type IAMBinding struct {
	pulumi.CustomResourceState

	// An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
	// Structure is documented below.
	Condition IAMBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the project's IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `projects.IAMBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Four different resources help you manage your IAM policy for a project. Each of these resources serves a different use case:

* `projects.IAMPolicy`: Authoritative. Sets the IAM policy for the project and replaces any existing policy already attached. * `projects.IAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the project are preserved. * `projects.IAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the project are preserved. * `projects.IAMAuditConfig`: Authoritative for a given service. Updates the IAM policy to enable audit logging for the given service.

> **Note:** `projects.IAMPolicy` **cannot** be used in conjunction with `projects.IAMBinding`, `projects.IAMMember`, or `projects.IAMAuditConfig` or they will fight over what your policy should be.

> **Note:** `projects.IAMBinding` resources **can be** used in conjunction with `projects.IAMMember` resources **only if** they do not grant privilege to the same role.

> **Note:** The underlying API method `projects.setIamPolicy` has a lot of constraints which are documented [here](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setIamPolicy). In addition to these constraints,

IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning 400 error code so please review these if you encounter errors with this resource.

## google\_project\_iam\_policy

!> **Be careful!** You can accidentally lock yourself out of your project

using this resource. Deleting a `projects.IAMPolicy` removes access
from anyone without organization-level access to the project. Proceed with caution.
It's not recommended to use `projects.IAMPolicy` with your provider project
to avoid locking yourself out, and it should generally only be used with projects
fully managed by this provider. If you do use this resource, it is recommended to **import** the policy before
applying the change.

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			Project:    pulumi.String("your-project-id"),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Condition: {
						Description: pulumi.StringRef("Expiring at midnight of 2019-12-31"),
						Expression:  "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
						Title:       "expires_after_2019_12_31",
					},
					Members: []string{
						"user:jane@example.com",
					},
					Role: "roles/compute.admin",
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			PolicyData: *pulumi.String(admin.PolicyData),
			Project:    pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Condition: &projects.IAMBindingConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/container.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Condition: &projects.IAMMemberConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/firebase.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_audit\_config

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMAuditConfig(ctx, "project", &projects.IAMAuditConfigArgs{
			AuditLogConfigs: projects.IAMAuditConfigAuditLogConfigArray{
				&projects.IAMAuditConfigAuditLogConfigArgs{
					LogType: pulumi.String("ADMIN_READ"),
				},
				&projects.IAMAuditConfigAuditLogConfigArgs{
					ExemptedMembers: pulumi.StringArray{
						pulumi.String("user:joebloggs@hashicorp.com"),
					},
					LogType: pulumi.String("DATA_READ"),
				},
			},
			Project: pulumi.String("your-project-id"),
			Service: pulumi.String("allServices"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `project_id`, role, and member e.g.

```sh

$ pulumi import gcp:projects/iAMBinding:IAMBinding my_project "your-project-id roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `project_id` and role, e.g.

```sh

$ pulumi import gcp:projects/iAMBinding:IAMBinding my_project "your-project-id roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `project_id`.

```sh

$ pulumi import gcp:projects/iAMBinding:IAMBinding my_project your-project-id

```

IAM audit config imports use the identifier of the resource in question and the service, e.g.

```sh

$ pulumi import gcp:projects/iAMBinding:IAMBinding my_project "your-project-id foo.googleapis.com"

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`. -> **Conditional IAM Bindings**If you're importing a IAM binding with a condition block, make sure

```sh

$ pulumi import gcp:projects/iAMBinding:IAMBinding to include the title of condition, e.g. `google_project_iam_binding.my_project "{{your-project-id}} roles/{{role_id}} condition-title"`

```

func GetIAMBinding

func GetIAMBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IAMBindingState, opts ...pulumi.ResourceOption) (*IAMBinding, error)

GetIAMBinding gets an existing IAMBinding 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 NewIAMBinding

func NewIAMBinding(ctx *pulumi.Context,
	name string, args *IAMBindingArgs, opts ...pulumi.ResourceOption) (*IAMBinding, error)

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

func (*IAMBinding) ElementType

func (*IAMBinding) ElementType() reflect.Type

func (*IAMBinding) ToIAMBindingOutput

func (i *IAMBinding) ToIAMBindingOutput() IAMBindingOutput

func (*IAMBinding) ToIAMBindingOutputWithContext

func (i *IAMBinding) ToIAMBindingOutputWithContext(ctx context.Context) IAMBindingOutput

func (*IAMBinding) ToOutput added in v6.65.1

func (i *IAMBinding) ToOutput(ctx context.Context) pulumix.Output[*IAMBinding]

type IAMBindingArgs

type IAMBindingArgs struct {
	// An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
	// Structure is documented below.
	Condition IAMBindingConditionPtrInput
	Members   pulumi.StringArrayInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringInput
	// The role that should be applied. Only one
	// `projects.IAMBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a IAMBinding resource.

func (IAMBindingArgs) ElementType

func (IAMBindingArgs) ElementType() reflect.Type

type IAMBindingArray

type IAMBindingArray []IAMBindingInput

func (IAMBindingArray) ElementType

func (IAMBindingArray) ElementType() reflect.Type

func (IAMBindingArray) ToIAMBindingArrayOutput

func (i IAMBindingArray) ToIAMBindingArrayOutput() IAMBindingArrayOutput

func (IAMBindingArray) ToIAMBindingArrayOutputWithContext

func (i IAMBindingArray) ToIAMBindingArrayOutputWithContext(ctx context.Context) IAMBindingArrayOutput

func (IAMBindingArray) ToOutput added in v6.65.1

type IAMBindingArrayInput

type IAMBindingArrayInput interface {
	pulumi.Input

	ToIAMBindingArrayOutput() IAMBindingArrayOutput
	ToIAMBindingArrayOutputWithContext(context.Context) IAMBindingArrayOutput
}

IAMBindingArrayInput is an input type that accepts IAMBindingArray and IAMBindingArrayOutput values. You can construct a concrete instance of `IAMBindingArrayInput` via:

IAMBindingArray{ IAMBindingArgs{...} }

type IAMBindingArrayOutput

type IAMBindingArrayOutput struct{ *pulumi.OutputState }

func (IAMBindingArrayOutput) ElementType

func (IAMBindingArrayOutput) ElementType() reflect.Type

func (IAMBindingArrayOutput) Index

func (IAMBindingArrayOutput) ToIAMBindingArrayOutput

func (o IAMBindingArrayOutput) ToIAMBindingArrayOutput() IAMBindingArrayOutput

func (IAMBindingArrayOutput) ToIAMBindingArrayOutputWithContext

func (o IAMBindingArrayOutput) ToIAMBindingArrayOutputWithContext(ctx context.Context) IAMBindingArrayOutput

func (IAMBindingArrayOutput) ToOutput added in v6.65.1

type IAMBindingCondition

type IAMBindingCondition struct {
	// An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
	//
	// > **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the
	// identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will
	// consider it to be an entirely different resource and will treat it as such.
	Description *string `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression string `pulumi:"expression"`
	// A title for the expression, i.e. a short string describing its purpose.
	Title string `pulumi:"title"`
}

type IAMBindingConditionArgs

type IAMBindingConditionArgs struct {
	// An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
	//
	// > **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the
	// identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will
	// consider it to be an entirely different resource and will treat it as such.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression pulumi.StringInput `pulumi:"expression"`
	// A title for the expression, i.e. a short string describing its purpose.
	Title pulumi.StringInput `pulumi:"title"`
}

func (IAMBindingConditionArgs) ElementType

func (IAMBindingConditionArgs) ElementType() reflect.Type

func (IAMBindingConditionArgs) ToIAMBindingConditionOutput

func (i IAMBindingConditionArgs) ToIAMBindingConditionOutput() IAMBindingConditionOutput

func (IAMBindingConditionArgs) ToIAMBindingConditionOutputWithContext

func (i IAMBindingConditionArgs) ToIAMBindingConditionOutputWithContext(ctx context.Context) IAMBindingConditionOutput

func (IAMBindingConditionArgs) ToIAMBindingConditionPtrOutput

func (i IAMBindingConditionArgs) ToIAMBindingConditionPtrOutput() IAMBindingConditionPtrOutput

func (IAMBindingConditionArgs) ToIAMBindingConditionPtrOutputWithContext

func (i IAMBindingConditionArgs) ToIAMBindingConditionPtrOutputWithContext(ctx context.Context) IAMBindingConditionPtrOutput

func (IAMBindingConditionArgs) ToOutput added in v6.65.1

type IAMBindingConditionInput

type IAMBindingConditionInput interface {
	pulumi.Input

	ToIAMBindingConditionOutput() IAMBindingConditionOutput
	ToIAMBindingConditionOutputWithContext(context.Context) IAMBindingConditionOutput
}

IAMBindingConditionInput is an input type that accepts IAMBindingConditionArgs and IAMBindingConditionOutput values. You can construct a concrete instance of `IAMBindingConditionInput` via:

IAMBindingConditionArgs{...}

type IAMBindingConditionOutput

type IAMBindingConditionOutput struct{ *pulumi.OutputState }

func (IAMBindingConditionOutput) Description

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

> **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will consider it to be an entirely different resource and will treat it as such.

func (IAMBindingConditionOutput) ElementType

func (IAMBindingConditionOutput) ElementType() reflect.Type

func (IAMBindingConditionOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (IAMBindingConditionOutput) Title

A title for the expression, i.e. a short string describing its purpose.

func (IAMBindingConditionOutput) ToIAMBindingConditionOutput

func (o IAMBindingConditionOutput) ToIAMBindingConditionOutput() IAMBindingConditionOutput

func (IAMBindingConditionOutput) ToIAMBindingConditionOutputWithContext

func (o IAMBindingConditionOutput) ToIAMBindingConditionOutputWithContext(ctx context.Context) IAMBindingConditionOutput

func (IAMBindingConditionOutput) ToIAMBindingConditionPtrOutput

func (o IAMBindingConditionOutput) ToIAMBindingConditionPtrOutput() IAMBindingConditionPtrOutput

func (IAMBindingConditionOutput) ToIAMBindingConditionPtrOutputWithContext

func (o IAMBindingConditionOutput) ToIAMBindingConditionPtrOutputWithContext(ctx context.Context) IAMBindingConditionPtrOutput

func (IAMBindingConditionOutput) ToOutput added in v6.65.1

type IAMBindingConditionPtrInput

type IAMBindingConditionPtrInput interface {
	pulumi.Input

	ToIAMBindingConditionPtrOutput() IAMBindingConditionPtrOutput
	ToIAMBindingConditionPtrOutputWithContext(context.Context) IAMBindingConditionPtrOutput
}

IAMBindingConditionPtrInput is an input type that accepts IAMBindingConditionArgs, IAMBindingConditionPtr and IAMBindingConditionPtrOutput values. You can construct a concrete instance of `IAMBindingConditionPtrInput` via:

        IAMBindingConditionArgs{...}

or:

        nil

type IAMBindingConditionPtrOutput

type IAMBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (IAMBindingConditionPtrOutput) Description

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

> **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will consider it to be an entirely different resource and will treat it as such.

func (IAMBindingConditionPtrOutput) Elem

func (IAMBindingConditionPtrOutput) ElementType

func (IAMBindingConditionPtrOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (IAMBindingConditionPtrOutput) Title

A title for the expression, i.e. a short string describing its purpose.

func (IAMBindingConditionPtrOutput) ToIAMBindingConditionPtrOutput

func (o IAMBindingConditionPtrOutput) ToIAMBindingConditionPtrOutput() IAMBindingConditionPtrOutput

func (IAMBindingConditionPtrOutput) ToIAMBindingConditionPtrOutputWithContext

func (o IAMBindingConditionPtrOutput) ToIAMBindingConditionPtrOutputWithContext(ctx context.Context) IAMBindingConditionPtrOutput

func (IAMBindingConditionPtrOutput) ToOutput added in v6.65.1

type IAMBindingInput

type IAMBindingInput interface {
	pulumi.Input

	ToIAMBindingOutput() IAMBindingOutput
	ToIAMBindingOutputWithContext(ctx context.Context) IAMBindingOutput
}

type IAMBindingMap

type IAMBindingMap map[string]IAMBindingInput

func (IAMBindingMap) ElementType

func (IAMBindingMap) ElementType() reflect.Type

func (IAMBindingMap) ToIAMBindingMapOutput

func (i IAMBindingMap) ToIAMBindingMapOutput() IAMBindingMapOutput

func (IAMBindingMap) ToIAMBindingMapOutputWithContext

func (i IAMBindingMap) ToIAMBindingMapOutputWithContext(ctx context.Context) IAMBindingMapOutput

func (IAMBindingMap) ToOutput added in v6.65.1

type IAMBindingMapInput

type IAMBindingMapInput interface {
	pulumi.Input

	ToIAMBindingMapOutput() IAMBindingMapOutput
	ToIAMBindingMapOutputWithContext(context.Context) IAMBindingMapOutput
}

IAMBindingMapInput is an input type that accepts IAMBindingMap and IAMBindingMapOutput values. You can construct a concrete instance of `IAMBindingMapInput` via:

IAMBindingMap{ "key": IAMBindingArgs{...} }

type IAMBindingMapOutput

type IAMBindingMapOutput struct{ *pulumi.OutputState }

func (IAMBindingMapOutput) ElementType

func (IAMBindingMapOutput) ElementType() reflect.Type

func (IAMBindingMapOutput) MapIndex

func (IAMBindingMapOutput) ToIAMBindingMapOutput

func (o IAMBindingMapOutput) ToIAMBindingMapOutput() IAMBindingMapOutput

func (IAMBindingMapOutput) ToIAMBindingMapOutputWithContext

func (o IAMBindingMapOutput) ToIAMBindingMapOutputWithContext(ctx context.Context) IAMBindingMapOutput

func (IAMBindingMapOutput) ToOutput added in v6.65.1

type IAMBindingOutput

type IAMBindingOutput struct{ *pulumi.OutputState }

func (IAMBindingOutput) Condition added in v6.23.0

An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below.

func (IAMBindingOutput) ElementType

func (IAMBindingOutput) ElementType() reflect.Type

func (IAMBindingOutput) Etag added in v6.23.0

(Computed) The etag of the project's IAM policy.

func (IAMBindingOutput) Members added in v6.23.0

func (IAMBindingOutput) Project added in v6.23.0

func (o IAMBindingOutput) Project() pulumi.StringOutput

The project id of the target project. This is not inferred from the provider.

func (IAMBindingOutput) Role added in v6.23.0

The role that should be applied. Only one `projects.IAMBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (IAMBindingOutput) ToIAMBindingOutput

func (o IAMBindingOutput) ToIAMBindingOutput() IAMBindingOutput

func (IAMBindingOutput) ToIAMBindingOutputWithContext

func (o IAMBindingOutput) ToIAMBindingOutputWithContext(ctx context.Context) IAMBindingOutput

func (IAMBindingOutput) ToOutput added in v6.65.1

type IAMBindingState

type IAMBindingState struct {
	// An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
	// Structure is documented below.
	Condition IAMBindingConditionPtrInput
	// (Computed) The etag of the project's IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `projects.IAMBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (IAMBindingState) ElementType

func (IAMBindingState) ElementType() reflect.Type

type IAMCustomRole

type IAMCustomRole struct {
	pulumi.CustomResourceState

	// (Optional) The current deleted state of the role.
	Deleted pulumi.BoolOutput `pulumi:"deleted"`
	// A human-readable description for the role.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The name of the role in the format `projects/{{project}}/roles/{{role_id}}`. Like `id`, this field can be used as a reference in other resources such as IAM role bindings.
	Name pulumi.StringOutput `pulumi:"name"`
	// The names of the permissions this role grants when bound in an IAM policy. At least one permission must be specified.
	Permissions pulumi.StringArrayOutput `pulumi:"permissions"`
	// The project that the service account will be created in.
	// Defaults to the provider project configuration.
	Project pulumi.StringOutput `pulumi:"project"`
	// The camel case role id to use for this role. Cannot contain `-` characters.
	RoleId pulumi.StringOutput `pulumi:"roleId"`
	// The current launch stage of the role.
	// Defaults to `GA`.
	// List of possible stages is [here](https://cloud.google.com/iam/reference/rest/v1/organizations.roles#Role.RoleLaunchStage).
	Stage pulumi.StringPtrOutput `pulumi:"stage"`
	// A human-readable title for the role.
	Title pulumi.StringOutput `pulumi:"title"`
}

Allows management of a customized Cloud IAM project role. For more information see [the official documentation](https://cloud.google.com/iam/docs/understanding-custom-roles) and [API](https://cloud.google.com/iam/reference/rest/v1/projects.roles).

> **Warning:** Note that custom roles in GCP have the concept of a soft-delete. There are two issues that may arise

from this and how roles are propagated. 1) creating a role may involve undeleting and then updating a role with the
same name, possibly causing confusing behavior between undelete and update. 2) A deleted role is permanently deleted
after 7 days, but it can take up to 30 more days (i.e. between 7 and 37 days after deletion) before the role name is
made available again. This means a deleted role that has been deleted for more than 7 days cannot be changed at all
by the provider, and new roles cannot share that name.

## Example Usage

This snippet creates a customized IAM role.

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMCustomRole(ctx, "my-custom-role", &projects.IAMCustomRoleArgs{
			Description: pulumi.String("A description"),
			Permissions: pulumi.StringArray{
				pulumi.String("iam.roles.list"),
				pulumi.String("iam.roles.create"),
				pulumi.String("iam.roles.delete"),
			},
			RoleId: pulumi.String("myCustomRole"),
			Title:  pulumi.String("My Custom Role"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Custom Roles can be imported using any of these accepted formats

```sh

$ pulumi import gcp:projects/iAMCustomRole:IAMCustomRole default projects/{{project}}/roles/{{role_id}}

```

```sh

$ pulumi import gcp:projects/iAMCustomRole:IAMCustomRole default {{project}}/{{role_id}}

```

```sh

$ pulumi import gcp:projects/iAMCustomRole:IAMCustomRole default {{role_id}}

```

func GetIAMCustomRole

func GetIAMCustomRole(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IAMCustomRoleState, opts ...pulumi.ResourceOption) (*IAMCustomRole, error)

GetIAMCustomRole gets an existing IAMCustomRole 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 NewIAMCustomRole

func NewIAMCustomRole(ctx *pulumi.Context,
	name string, args *IAMCustomRoleArgs, opts ...pulumi.ResourceOption) (*IAMCustomRole, error)

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

func (*IAMCustomRole) ElementType

func (*IAMCustomRole) ElementType() reflect.Type

func (*IAMCustomRole) ToIAMCustomRoleOutput

func (i *IAMCustomRole) ToIAMCustomRoleOutput() IAMCustomRoleOutput

func (*IAMCustomRole) ToIAMCustomRoleOutputWithContext

func (i *IAMCustomRole) ToIAMCustomRoleOutputWithContext(ctx context.Context) IAMCustomRoleOutput

func (*IAMCustomRole) ToOutput added in v6.65.1

type IAMCustomRoleArgs

type IAMCustomRoleArgs struct {
	// A human-readable description for the role.
	Description pulumi.StringPtrInput
	// The names of the permissions this role grants when bound in an IAM policy. At least one permission must be specified.
	Permissions pulumi.StringArrayInput
	// The project that the service account will be created in.
	// Defaults to the provider project configuration.
	Project pulumi.StringPtrInput
	// The camel case role id to use for this role. Cannot contain `-` characters.
	RoleId pulumi.StringInput
	// The current launch stage of the role.
	// Defaults to `GA`.
	// List of possible stages is [here](https://cloud.google.com/iam/reference/rest/v1/organizations.roles#Role.RoleLaunchStage).
	Stage pulumi.StringPtrInput
	// A human-readable title for the role.
	Title pulumi.StringInput
}

The set of arguments for constructing a IAMCustomRole resource.

func (IAMCustomRoleArgs) ElementType

func (IAMCustomRoleArgs) ElementType() reflect.Type

type IAMCustomRoleArray

type IAMCustomRoleArray []IAMCustomRoleInput

func (IAMCustomRoleArray) ElementType

func (IAMCustomRoleArray) ElementType() reflect.Type

func (IAMCustomRoleArray) ToIAMCustomRoleArrayOutput

func (i IAMCustomRoleArray) ToIAMCustomRoleArrayOutput() IAMCustomRoleArrayOutput

func (IAMCustomRoleArray) ToIAMCustomRoleArrayOutputWithContext

func (i IAMCustomRoleArray) ToIAMCustomRoleArrayOutputWithContext(ctx context.Context) IAMCustomRoleArrayOutput

func (IAMCustomRoleArray) ToOutput added in v6.65.1

type IAMCustomRoleArrayInput

type IAMCustomRoleArrayInput interface {
	pulumi.Input

	ToIAMCustomRoleArrayOutput() IAMCustomRoleArrayOutput
	ToIAMCustomRoleArrayOutputWithContext(context.Context) IAMCustomRoleArrayOutput
}

IAMCustomRoleArrayInput is an input type that accepts IAMCustomRoleArray and IAMCustomRoleArrayOutput values. You can construct a concrete instance of `IAMCustomRoleArrayInput` via:

IAMCustomRoleArray{ IAMCustomRoleArgs{...} }

type IAMCustomRoleArrayOutput

type IAMCustomRoleArrayOutput struct{ *pulumi.OutputState }

func (IAMCustomRoleArrayOutput) ElementType

func (IAMCustomRoleArrayOutput) ElementType() reflect.Type

func (IAMCustomRoleArrayOutput) Index

func (IAMCustomRoleArrayOutput) ToIAMCustomRoleArrayOutput

func (o IAMCustomRoleArrayOutput) ToIAMCustomRoleArrayOutput() IAMCustomRoleArrayOutput

func (IAMCustomRoleArrayOutput) ToIAMCustomRoleArrayOutputWithContext

func (o IAMCustomRoleArrayOutput) ToIAMCustomRoleArrayOutputWithContext(ctx context.Context) IAMCustomRoleArrayOutput

func (IAMCustomRoleArrayOutput) ToOutput added in v6.65.1

type IAMCustomRoleInput

type IAMCustomRoleInput interface {
	pulumi.Input

	ToIAMCustomRoleOutput() IAMCustomRoleOutput
	ToIAMCustomRoleOutputWithContext(ctx context.Context) IAMCustomRoleOutput
}

type IAMCustomRoleMap

type IAMCustomRoleMap map[string]IAMCustomRoleInput

func (IAMCustomRoleMap) ElementType

func (IAMCustomRoleMap) ElementType() reflect.Type

func (IAMCustomRoleMap) ToIAMCustomRoleMapOutput

func (i IAMCustomRoleMap) ToIAMCustomRoleMapOutput() IAMCustomRoleMapOutput

func (IAMCustomRoleMap) ToIAMCustomRoleMapOutputWithContext

func (i IAMCustomRoleMap) ToIAMCustomRoleMapOutputWithContext(ctx context.Context) IAMCustomRoleMapOutput

func (IAMCustomRoleMap) ToOutput added in v6.65.1

type IAMCustomRoleMapInput

type IAMCustomRoleMapInput interface {
	pulumi.Input

	ToIAMCustomRoleMapOutput() IAMCustomRoleMapOutput
	ToIAMCustomRoleMapOutputWithContext(context.Context) IAMCustomRoleMapOutput
}

IAMCustomRoleMapInput is an input type that accepts IAMCustomRoleMap and IAMCustomRoleMapOutput values. You can construct a concrete instance of `IAMCustomRoleMapInput` via:

IAMCustomRoleMap{ "key": IAMCustomRoleArgs{...} }

type IAMCustomRoleMapOutput

type IAMCustomRoleMapOutput struct{ *pulumi.OutputState }

func (IAMCustomRoleMapOutput) ElementType

func (IAMCustomRoleMapOutput) ElementType() reflect.Type

func (IAMCustomRoleMapOutput) MapIndex

func (IAMCustomRoleMapOutput) ToIAMCustomRoleMapOutput

func (o IAMCustomRoleMapOutput) ToIAMCustomRoleMapOutput() IAMCustomRoleMapOutput

func (IAMCustomRoleMapOutput) ToIAMCustomRoleMapOutputWithContext

func (o IAMCustomRoleMapOutput) ToIAMCustomRoleMapOutputWithContext(ctx context.Context) IAMCustomRoleMapOutput

func (IAMCustomRoleMapOutput) ToOutput added in v6.65.1

type IAMCustomRoleOutput

type IAMCustomRoleOutput struct{ *pulumi.OutputState }

func (IAMCustomRoleOutput) Deleted added in v6.23.0

(Optional) The current deleted state of the role.

func (IAMCustomRoleOutput) Description added in v6.23.0

func (o IAMCustomRoleOutput) Description() pulumi.StringPtrOutput

A human-readable description for the role.

func (IAMCustomRoleOutput) ElementType

func (IAMCustomRoleOutput) ElementType() reflect.Type

func (IAMCustomRoleOutput) Name added in v6.23.0

The name of the role in the format `projects/{{project}}/roles/{{role_id}}`. Like `id`, this field can be used as a reference in other resources such as IAM role bindings.

func (IAMCustomRoleOutput) Permissions added in v6.23.0

The names of the permissions this role grants when bound in an IAM policy. At least one permission must be specified.

func (IAMCustomRoleOutput) Project added in v6.23.0

The project that the service account will be created in. Defaults to the provider project configuration.

func (IAMCustomRoleOutput) RoleId added in v6.23.0

The camel case role id to use for this role. Cannot contain `-` characters.

func (IAMCustomRoleOutput) Stage added in v6.23.0

The current launch stage of the role. Defaults to `GA`. List of possible stages is [here](https://cloud.google.com/iam/reference/rest/v1/organizations.roles#Role.RoleLaunchStage).

func (IAMCustomRoleOutput) Title added in v6.23.0

A human-readable title for the role.

func (IAMCustomRoleOutput) ToIAMCustomRoleOutput

func (o IAMCustomRoleOutput) ToIAMCustomRoleOutput() IAMCustomRoleOutput

func (IAMCustomRoleOutput) ToIAMCustomRoleOutputWithContext

func (o IAMCustomRoleOutput) ToIAMCustomRoleOutputWithContext(ctx context.Context) IAMCustomRoleOutput

func (IAMCustomRoleOutput) ToOutput added in v6.65.1

type IAMCustomRoleState

type IAMCustomRoleState struct {
	// (Optional) The current deleted state of the role.
	Deleted pulumi.BoolPtrInput
	// A human-readable description for the role.
	Description pulumi.StringPtrInput
	// The name of the role in the format `projects/{{project}}/roles/{{role_id}}`. Like `id`, this field can be used as a reference in other resources such as IAM role bindings.
	Name pulumi.StringPtrInput
	// The names of the permissions this role grants when bound in an IAM policy. At least one permission must be specified.
	Permissions pulumi.StringArrayInput
	// The project that the service account will be created in.
	// Defaults to the provider project configuration.
	Project pulumi.StringPtrInput
	// The camel case role id to use for this role. Cannot contain `-` characters.
	RoleId pulumi.StringPtrInput
	// The current launch stage of the role.
	// Defaults to `GA`.
	// List of possible stages is [here](https://cloud.google.com/iam/reference/rest/v1/organizations.roles#Role.RoleLaunchStage).
	Stage pulumi.StringPtrInput
	// A human-readable title for the role.
	Title pulumi.StringPtrInput
}

func (IAMCustomRoleState) ElementType

func (IAMCustomRoleState) ElementType() reflect.Type

type IAMMember

type IAMMember struct {
	pulumi.CustomResourceState

	// An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
	// Structure is documented below.
	Condition IAMMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the project's IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `projects.IAMBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Four different resources help you manage your IAM policy for a project. Each of these resources serves a different use case:

* `projects.IAMPolicy`: Authoritative. Sets the IAM policy for the project and replaces any existing policy already attached. * `projects.IAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the project are preserved. * `projects.IAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the project are preserved. * `projects.IAMAuditConfig`: Authoritative for a given service. Updates the IAM policy to enable audit logging for the given service.

> **Note:** `projects.IAMPolicy` **cannot** be used in conjunction with `projects.IAMBinding`, `projects.IAMMember`, or `projects.IAMAuditConfig` or they will fight over what your policy should be.

> **Note:** `projects.IAMBinding` resources **can be** used in conjunction with `projects.IAMMember` resources **only if** they do not grant privilege to the same role.

> **Note:** The underlying API method `projects.setIamPolicy` has a lot of constraints which are documented [here](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setIamPolicy). In addition to these constraints,

IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning 400 error code so please review these if you encounter errors with this resource.

## google\_project\_iam\_policy

!> **Be careful!** You can accidentally lock yourself out of your project

using this resource. Deleting a `projects.IAMPolicy` removes access
from anyone without organization-level access to the project. Proceed with caution.
It's not recommended to use `projects.IAMPolicy` with your provider project
to avoid locking yourself out, and it should generally only be used with projects
fully managed by this provider. If you do use this resource, it is recommended to **import** the policy before
applying the change.

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			Project:    pulumi.String("your-project-id"),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Condition: {
						Description: pulumi.StringRef("Expiring at midnight of 2019-12-31"),
						Expression:  "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
						Title:       "expires_after_2019_12_31",
					},
					Members: []string{
						"user:jane@example.com",
					},
					Role: "roles/compute.admin",
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			PolicyData: *pulumi.String(admin.PolicyData),
			Project:    pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Condition: &projects.IAMBindingConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/container.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Condition: &projects.IAMMemberConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/firebase.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_audit\_config

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMAuditConfig(ctx, "project", &projects.IAMAuditConfigArgs{
			AuditLogConfigs: projects.IAMAuditConfigAuditLogConfigArray{
				&projects.IAMAuditConfigAuditLogConfigArgs{
					LogType: pulumi.String("ADMIN_READ"),
				},
				&projects.IAMAuditConfigAuditLogConfigArgs{
					ExemptedMembers: pulumi.StringArray{
						pulumi.String("user:joebloggs@hashicorp.com"),
					},
					LogType: pulumi.String("DATA_READ"),
				},
			},
			Project: pulumi.String("your-project-id"),
			Service: pulumi.String("allServices"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `project_id`, role, and member e.g.

```sh

$ pulumi import gcp:projects/iAMMember:IAMMember my_project "your-project-id roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `project_id` and role, e.g.

```sh

$ pulumi import gcp:projects/iAMMember:IAMMember my_project "your-project-id roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `project_id`.

```sh

$ pulumi import gcp:projects/iAMMember:IAMMember my_project your-project-id

```

IAM audit config imports use the identifier of the resource in question and the service, e.g.

```sh

$ pulumi import gcp:projects/iAMMember:IAMMember my_project "your-project-id foo.googleapis.com"

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`. -> **Conditional IAM Bindings**If you're importing a IAM binding with a condition block, make sure

```sh

$ pulumi import gcp:projects/iAMMember:IAMMember to include the title of condition, e.g. `google_project_iam_binding.my_project "{{your-project-id}} roles/{{role_id}} condition-title"`

```

func GetIAMMember

func GetIAMMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IAMMemberState, opts ...pulumi.ResourceOption) (*IAMMember, error)

GetIAMMember gets an existing IAMMember 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 NewIAMMember

func NewIAMMember(ctx *pulumi.Context,
	name string, args *IAMMemberArgs, opts ...pulumi.ResourceOption) (*IAMMember, error)

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

func (*IAMMember) ElementType

func (*IAMMember) ElementType() reflect.Type

func (*IAMMember) ToIAMMemberOutput

func (i *IAMMember) ToIAMMemberOutput() IAMMemberOutput

func (*IAMMember) ToIAMMemberOutputWithContext

func (i *IAMMember) ToIAMMemberOutputWithContext(ctx context.Context) IAMMemberOutput

func (*IAMMember) ToOutput added in v6.65.1

func (i *IAMMember) ToOutput(ctx context.Context) pulumix.Output[*IAMMember]

type IAMMemberArgs

type IAMMemberArgs struct {
	// An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
	// Structure is documented below.
	Condition IAMMemberConditionPtrInput
	Member    pulumi.StringInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringInput
	// The role that should be applied. Only one
	// `projects.IAMBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a IAMMember resource.

func (IAMMemberArgs) ElementType

func (IAMMemberArgs) ElementType() reflect.Type

type IAMMemberArray

type IAMMemberArray []IAMMemberInput

func (IAMMemberArray) ElementType

func (IAMMemberArray) ElementType() reflect.Type

func (IAMMemberArray) ToIAMMemberArrayOutput

func (i IAMMemberArray) ToIAMMemberArrayOutput() IAMMemberArrayOutput

func (IAMMemberArray) ToIAMMemberArrayOutputWithContext

func (i IAMMemberArray) ToIAMMemberArrayOutputWithContext(ctx context.Context) IAMMemberArrayOutput

func (IAMMemberArray) ToOutput added in v6.65.1

func (i IAMMemberArray) ToOutput(ctx context.Context) pulumix.Output[[]*IAMMember]

type IAMMemberArrayInput

type IAMMemberArrayInput interface {
	pulumi.Input

	ToIAMMemberArrayOutput() IAMMemberArrayOutput
	ToIAMMemberArrayOutputWithContext(context.Context) IAMMemberArrayOutput
}

IAMMemberArrayInput is an input type that accepts IAMMemberArray and IAMMemberArrayOutput values. You can construct a concrete instance of `IAMMemberArrayInput` via:

IAMMemberArray{ IAMMemberArgs{...} }

type IAMMemberArrayOutput

type IAMMemberArrayOutput struct{ *pulumi.OutputState }

func (IAMMemberArrayOutput) ElementType

func (IAMMemberArrayOutput) ElementType() reflect.Type

func (IAMMemberArrayOutput) Index

func (IAMMemberArrayOutput) ToIAMMemberArrayOutput

func (o IAMMemberArrayOutput) ToIAMMemberArrayOutput() IAMMemberArrayOutput

func (IAMMemberArrayOutput) ToIAMMemberArrayOutputWithContext

func (o IAMMemberArrayOutput) ToIAMMemberArrayOutputWithContext(ctx context.Context) IAMMemberArrayOutput

func (IAMMemberArrayOutput) ToOutput added in v6.65.1

type IAMMemberCondition

type IAMMemberCondition struct {
	// An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
	//
	// > **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the
	// identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will
	// consider it to be an entirely different resource and will treat it as such.
	Description *string `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression string `pulumi:"expression"`
	// A title for the expression, i.e. a short string describing its purpose.
	Title string `pulumi:"title"`
}

type IAMMemberConditionArgs

type IAMMemberConditionArgs struct {
	// An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
	//
	// > **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the
	// identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will
	// consider it to be an entirely different resource and will treat it as such.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Textual representation of an expression in Common Expression Language syntax.
	Expression pulumi.StringInput `pulumi:"expression"`
	// A title for the expression, i.e. a short string describing its purpose.
	Title pulumi.StringInput `pulumi:"title"`
}

func (IAMMemberConditionArgs) ElementType

func (IAMMemberConditionArgs) ElementType() reflect.Type

func (IAMMemberConditionArgs) ToIAMMemberConditionOutput

func (i IAMMemberConditionArgs) ToIAMMemberConditionOutput() IAMMemberConditionOutput

func (IAMMemberConditionArgs) ToIAMMemberConditionOutputWithContext

func (i IAMMemberConditionArgs) ToIAMMemberConditionOutputWithContext(ctx context.Context) IAMMemberConditionOutput

func (IAMMemberConditionArgs) ToIAMMemberConditionPtrOutput

func (i IAMMemberConditionArgs) ToIAMMemberConditionPtrOutput() IAMMemberConditionPtrOutput

func (IAMMemberConditionArgs) ToIAMMemberConditionPtrOutputWithContext

func (i IAMMemberConditionArgs) ToIAMMemberConditionPtrOutputWithContext(ctx context.Context) IAMMemberConditionPtrOutput

func (IAMMemberConditionArgs) ToOutput added in v6.65.1

type IAMMemberConditionInput

type IAMMemberConditionInput interface {
	pulumi.Input

	ToIAMMemberConditionOutput() IAMMemberConditionOutput
	ToIAMMemberConditionOutputWithContext(context.Context) IAMMemberConditionOutput
}

IAMMemberConditionInput is an input type that accepts IAMMemberConditionArgs and IAMMemberConditionOutput values. You can construct a concrete instance of `IAMMemberConditionInput` via:

IAMMemberConditionArgs{...}

type IAMMemberConditionOutput

type IAMMemberConditionOutput struct{ *pulumi.OutputState }

func (IAMMemberConditionOutput) Description

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

> **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will consider it to be an entirely different resource and will treat it as such.

func (IAMMemberConditionOutput) ElementType

func (IAMMemberConditionOutput) ElementType() reflect.Type

func (IAMMemberConditionOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (IAMMemberConditionOutput) Title

A title for the expression, i.e. a short string describing its purpose.

func (IAMMemberConditionOutput) ToIAMMemberConditionOutput

func (o IAMMemberConditionOutput) ToIAMMemberConditionOutput() IAMMemberConditionOutput

func (IAMMemberConditionOutput) ToIAMMemberConditionOutputWithContext

func (o IAMMemberConditionOutput) ToIAMMemberConditionOutputWithContext(ctx context.Context) IAMMemberConditionOutput

func (IAMMemberConditionOutput) ToIAMMemberConditionPtrOutput

func (o IAMMemberConditionOutput) ToIAMMemberConditionPtrOutput() IAMMemberConditionPtrOutput

func (IAMMemberConditionOutput) ToIAMMemberConditionPtrOutputWithContext

func (o IAMMemberConditionOutput) ToIAMMemberConditionPtrOutputWithContext(ctx context.Context) IAMMemberConditionPtrOutput

func (IAMMemberConditionOutput) ToOutput added in v6.65.1

type IAMMemberConditionPtrInput

type IAMMemberConditionPtrInput interface {
	pulumi.Input

	ToIAMMemberConditionPtrOutput() IAMMemberConditionPtrOutput
	ToIAMMemberConditionPtrOutputWithContext(context.Context) IAMMemberConditionPtrOutput
}

IAMMemberConditionPtrInput is an input type that accepts IAMMemberConditionArgs, IAMMemberConditionPtr and IAMMemberConditionPtrOutput values. You can construct a concrete instance of `IAMMemberConditionPtrInput` via:

        IAMMemberConditionArgs{...}

or:

        nil

type IAMMemberConditionPtrOutput

type IAMMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (IAMMemberConditionPtrOutput) Description

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

> **Warning:** This provider considers the `role` and condition contents (`title`+`description`+`expression`) as the identifier for the binding. This means that if any part of the condition is changed out-of-band, the provider will consider it to be an entirely different resource and will treat it as such.

func (IAMMemberConditionPtrOutput) Elem

func (IAMMemberConditionPtrOutput) ElementType

func (IAMMemberConditionPtrOutput) Expression

Textual representation of an expression in Common Expression Language syntax.

func (IAMMemberConditionPtrOutput) Title

A title for the expression, i.e. a short string describing its purpose.

func (IAMMemberConditionPtrOutput) ToIAMMemberConditionPtrOutput

func (o IAMMemberConditionPtrOutput) ToIAMMemberConditionPtrOutput() IAMMemberConditionPtrOutput

func (IAMMemberConditionPtrOutput) ToIAMMemberConditionPtrOutputWithContext

func (o IAMMemberConditionPtrOutput) ToIAMMemberConditionPtrOutputWithContext(ctx context.Context) IAMMemberConditionPtrOutput

func (IAMMemberConditionPtrOutput) ToOutput added in v6.65.1

type IAMMemberInput

type IAMMemberInput interface {
	pulumi.Input

	ToIAMMemberOutput() IAMMemberOutput
	ToIAMMemberOutputWithContext(ctx context.Context) IAMMemberOutput
}

type IAMMemberMap

type IAMMemberMap map[string]IAMMemberInput

func (IAMMemberMap) ElementType

func (IAMMemberMap) ElementType() reflect.Type

func (IAMMemberMap) ToIAMMemberMapOutput

func (i IAMMemberMap) ToIAMMemberMapOutput() IAMMemberMapOutput

func (IAMMemberMap) ToIAMMemberMapOutputWithContext

func (i IAMMemberMap) ToIAMMemberMapOutputWithContext(ctx context.Context) IAMMemberMapOutput

func (IAMMemberMap) ToOutput added in v6.65.1

func (i IAMMemberMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*IAMMember]

type IAMMemberMapInput

type IAMMemberMapInput interface {
	pulumi.Input

	ToIAMMemberMapOutput() IAMMemberMapOutput
	ToIAMMemberMapOutputWithContext(context.Context) IAMMemberMapOutput
}

IAMMemberMapInput is an input type that accepts IAMMemberMap and IAMMemberMapOutput values. You can construct a concrete instance of `IAMMemberMapInput` via:

IAMMemberMap{ "key": IAMMemberArgs{...} }

type IAMMemberMapOutput

type IAMMemberMapOutput struct{ *pulumi.OutputState }

func (IAMMemberMapOutput) ElementType

func (IAMMemberMapOutput) ElementType() reflect.Type

func (IAMMemberMapOutput) MapIndex

func (IAMMemberMapOutput) ToIAMMemberMapOutput

func (o IAMMemberMapOutput) ToIAMMemberMapOutput() IAMMemberMapOutput

func (IAMMemberMapOutput) ToIAMMemberMapOutputWithContext

func (o IAMMemberMapOutput) ToIAMMemberMapOutputWithContext(ctx context.Context) IAMMemberMapOutput

func (IAMMemberMapOutput) ToOutput added in v6.65.1

type IAMMemberOutput

type IAMMemberOutput struct{ *pulumi.OutputState }

func (IAMMemberOutput) Condition added in v6.23.0

An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding. Structure is documented below.

func (IAMMemberOutput) ElementType

func (IAMMemberOutput) ElementType() reflect.Type

func (IAMMemberOutput) Etag added in v6.23.0

(Computed) The etag of the project's IAM policy.

func (IAMMemberOutput) Member added in v6.23.0

func (o IAMMemberOutput) Member() pulumi.StringOutput

func (IAMMemberOutput) Project added in v6.23.0

func (o IAMMemberOutput) Project() pulumi.StringOutput

The project id of the target project. This is not inferred from the provider.

func (IAMMemberOutput) Role added in v6.23.0

The role that should be applied. Only one `projects.IAMBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (IAMMemberOutput) ToIAMMemberOutput

func (o IAMMemberOutput) ToIAMMemberOutput() IAMMemberOutput

func (IAMMemberOutput) ToIAMMemberOutputWithContext

func (o IAMMemberOutput) ToIAMMemberOutputWithContext(ctx context.Context) IAMMemberOutput

func (IAMMemberOutput) ToOutput added in v6.65.1

type IAMMemberState

type IAMMemberState struct {
	// An [IAM Condition](https://cloud.google.com/iam/docs/conditions-overview) for a given binding.
	// Structure is documented below.
	Condition IAMMemberConditionPtrInput
	// (Computed) The etag of the project's IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `projects.IAMBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (IAMMemberState) ElementType

func (IAMMemberState) ElementType() reflect.Type

type IAMPolicy

type IAMPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the project's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The `organizations.getIAMPolicy` data source that represents
	// the IAM policy that will be applied to the project. The policy will be
	// merged with any existing policy applied to the project.
	//
	// Changing this updates the policy.
	//
	// Deleting this removes all policies from the project, locking out users without
	// organization-level access.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringOutput `pulumi:"project"`
}

Four different resources help you manage your IAM policy for a project. Each of these resources serves a different use case:

* `projects.IAMPolicy`: Authoritative. Sets the IAM policy for the project and replaces any existing policy already attached. * `projects.IAMBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the project are preserved. * `projects.IAMMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the project are preserved. * `projects.IAMAuditConfig`: Authoritative for a given service. Updates the IAM policy to enable audit logging for the given service.

> **Note:** `projects.IAMPolicy` **cannot** be used in conjunction with `projects.IAMBinding`, `projects.IAMMember`, or `projects.IAMAuditConfig` or they will fight over what your policy should be.

> **Note:** `projects.IAMBinding` resources **can be** used in conjunction with `projects.IAMMember` resources **only if** they do not grant privilege to the same role.

> **Note:** The underlying API method `projects.setIamPolicy` has a lot of constraints which are documented [here](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setIamPolicy). In addition to these constraints,

IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning 400 error code so please review these if you encounter errors with this resource.

## google\_project\_iam\_policy

!> **Be careful!** You can accidentally lock yourself out of your project

using this resource. Deleting a `projects.IAMPolicy` removes access
from anyone without organization-level access to the project. Proceed with caution.
It's not recommended to use `projects.IAMPolicy` with your provider project
to avoid locking yourself out, and it should generally only be used with projects
fully managed by this provider. If you do use this resource, it is recommended to **import** the policy before
applying the change.

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			Project:    pulumi.String("your-project-id"),
			PolicyData: *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Condition: {
						Description: pulumi.StringRef("Expiring at midnight of 2019-12-31"),
						Expression:  "request.time < timestamp(\"2020-01-01T00:00:00Z\")",
						Title:       "expires_after_2019_12_31",
					},
					Members: []string{
						"user:jane@example.com",
					},
					Role: "roles/compute.admin",
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = projects.NewIAMPolicy(ctx, "project", &projects.IAMPolicyArgs{
			PolicyData: *pulumi.String(admin.PolicyData),
			Project:    pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMBinding(ctx, "project", &projects.IAMBindingArgs{
			Condition: &projects.IAMBindingConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/container.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

With IAM Conditions:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
			Condition: &projects.IAMMemberConditionArgs{
				Description: pulumi.String("Expiring at midnight of 2019-12-31"),
				Expression:  pulumi.String("request.time < timestamp(\"2020-01-01T00:00:00Z\")"),
				Title:       pulumi.String("expires_after_2019_12_31"),
			},
			Member:  pulumi.String("user:jane@example.com"),
			Project: pulumi.String("your-project-id"),
			Role:    pulumi.String("roles/firebase.admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_project\_iam\_audit\_config

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewIAMAuditConfig(ctx, "project", &projects.IAMAuditConfigArgs{
			AuditLogConfigs: projects.IAMAuditConfigAuditLogConfigArray{
				&projects.IAMAuditConfigAuditLogConfigArgs{
					LogType: pulumi.String("ADMIN_READ"),
				},
				&projects.IAMAuditConfigAuditLogConfigArgs{
					ExemptedMembers: pulumi.StringArray{
						pulumi.String("user:joebloggs@hashicorp.com"),
					},
					LogType: pulumi.String("DATA_READ"),
				},
			},
			Project: pulumi.String("your-project-id"),
			Service: pulumi.String("allServices"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `project_id`, role, and member e.g.

```sh

$ pulumi import gcp:projects/iAMPolicy:IAMPolicy my_project "your-project-id roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `project_id` and role, e.g.

```sh

$ pulumi import gcp:projects/iAMPolicy:IAMPolicy my_project "your-project-id roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `project_id`.

```sh

$ pulumi import gcp:projects/iAMPolicy:IAMPolicy my_project your-project-id

```

IAM audit config imports use the identifier of the resource in question and the service, e.g.

```sh

$ pulumi import gcp:projects/iAMPolicy:IAMPolicy my_project "your-project-id foo.googleapis.com"

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`. -> **Conditional IAM Bindings**If you're importing a IAM binding with a condition block, make sure

```sh

$ pulumi import gcp:projects/iAMPolicy:IAMPolicy to include the title of condition, e.g. `google_project_iam_binding.my_project "{{your-project-id}} roles/{{role_id}} condition-title"`

```

func GetIAMPolicy

func GetIAMPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IAMPolicyState, opts ...pulumi.ResourceOption) (*IAMPolicy, error)

GetIAMPolicy gets an existing IAMPolicy 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 NewIAMPolicy

func NewIAMPolicy(ctx *pulumi.Context,
	name string, args *IAMPolicyArgs, opts ...pulumi.ResourceOption) (*IAMPolicy, error)

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

func (*IAMPolicy) ElementType

func (*IAMPolicy) ElementType() reflect.Type

func (*IAMPolicy) ToIAMPolicyOutput

func (i *IAMPolicy) ToIAMPolicyOutput() IAMPolicyOutput

func (*IAMPolicy) ToIAMPolicyOutputWithContext

func (i *IAMPolicy) ToIAMPolicyOutputWithContext(ctx context.Context) IAMPolicyOutput

func (*IAMPolicy) ToOutput added in v6.65.1

func (i *IAMPolicy) ToOutput(ctx context.Context) pulumix.Output[*IAMPolicy]

type IAMPolicyArgs

type IAMPolicyArgs struct {
	// The `organizations.getIAMPolicy` data source that represents
	// the IAM policy that will be applied to the project. The policy will be
	// merged with any existing policy applied to the project.
	//
	// Changing this updates the policy.
	//
	// Deleting this removes all policies from the project, locking out users without
	// organization-level access.
	PolicyData pulumi.StringInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringInput
}

The set of arguments for constructing a IAMPolicy resource.

func (IAMPolicyArgs) ElementType

func (IAMPolicyArgs) ElementType() reflect.Type

type IAMPolicyArray

type IAMPolicyArray []IAMPolicyInput

func (IAMPolicyArray) ElementType

func (IAMPolicyArray) ElementType() reflect.Type

func (IAMPolicyArray) ToIAMPolicyArrayOutput

func (i IAMPolicyArray) ToIAMPolicyArrayOutput() IAMPolicyArrayOutput

func (IAMPolicyArray) ToIAMPolicyArrayOutputWithContext

func (i IAMPolicyArray) ToIAMPolicyArrayOutputWithContext(ctx context.Context) IAMPolicyArrayOutput

func (IAMPolicyArray) ToOutput added in v6.65.1

func (i IAMPolicyArray) ToOutput(ctx context.Context) pulumix.Output[[]*IAMPolicy]

type IAMPolicyArrayInput

type IAMPolicyArrayInput interface {
	pulumi.Input

	ToIAMPolicyArrayOutput() IAMPolicyArrayOutput
	ToIAMPolicyArrayOutputWithContext(context.Context) IAMPolicyArrayOutput
}

IAMPolicyArrayInput is an input type that accepts IAMPolicyArray and IAMPolicyArrayOutput values. You can construct a concrete instance of `IAMPolicyArrayInput` via:

IAMPolicyArray{ IAMPolicyArgs{...} }

type IAMPolicyArrayOutput

type IAMPolicyArrayOutput struct{ *pulumi.OutputState }

func (IAMPolicyArrayOutput) ElementType

func (IAMPolicyArrayOutput) ElementType() reflect.Type

func (IAMPolicyArrayOutput) Index

func (IAMPolicyArrayOutput) ToIAMPolicyArrayOutput

func (o IAMPolicyArrayOutput) ToIAMPolicyArrayOutput() IAMPolicyArrayOutput

func (IAMPolicyArrayOutput) ToIAMPolicyArrayOutputWithContext

func (o IAMPolicyArrayOutput) ToIAMPolicyArrayOutputWithContext(ctx context.Context) IAMPolicyArrayOutput

func (IAMPolicyArrayOutput) ToOutput added in v6.65.1

type IAMPolicyInput

type IAMPolicyInput interface {
	pulumi.Input

	ToIAMPolicyOutput() IAMPolicyOutput
	ToIAMPolicyOutputWithContext(ctx context.Context) IAMPolicyOutput
}

type IAMPolicyMap

type IAMPolicyMap map[string]IAMPolicyInput

func (IAMPolicyMap) ElementType

func (IAMPolicyMap) ElementType() reflect.Type

func (IAMPolicyMap) ToIAMPolicyMapOutput

func (i IAMPolicyMap) ToIAMPolicyMapOutput() IAMPolicyMapOutput

func (IAMPolicyMap) ToIAMPolicyMapOutputWithContext

func (i IAMPolicyMap) ToIAMPolicyMapOutputWithContext(ctx context.Context) IAMPolicyMapOutput

func (IAMPolicyMap) ToOutput added in v6.65.1

func (i IAMPolicyMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*IAMPolicy]

type IAMPolicyMapInput

type IAMPolicyMapInput interface {
	pulumi.Input

	ToIAMPolicyMapOutput() IAMPolicyMapOutput
	ToIAMPolicyMapOutputWithContext(context.Context) IAMPolicyMapOutput
}

IAMPolicyMapInput is an input type that accepts IAMPolicyMap and IAMPolicyMapOutput values. You can construct a concrete instance of `IAMPolicyMapInput` via:

IAMPolicyMap{ "key": IAMPolicyArgs{...} }

type IAMPolicyMapOutput

type IAMPolicyMapOutput struct{ *pulumi.OutputState }

func (IAMPolicyMapOutput) ElementType

func (IAMPolicyMapOutput) ElementType() reflect.Type

func (IAMPolicyMapOutput) MapIndex

func (IAMPolicyMapOutput) ToIAMPolicyMapOutput

func (o IAMPolicyMapOutput) ToIAMPolicyMapOutput() IAMPolicyMapOutput

func (IAMPolicyMapOutput) ToIAMPolicyMapOutputWithContext

func (o IAMPolicyMapOutput) ToIAMPolicyMapOutputWithContext(ctx context.Context) IAMPolicyMapOutput

func (IAMPolicyMapOutput) ToOutput added in v6.65.1

type IAMPolicyOutput

type IAMPolicyOutput struct{ *pulumi.OutputState }

func (IAMPolicyOutput) ElementType

func (IAMPolicyOutput) ElementType() reflect.Type

func (IAMPolicyOutput) Etag added in v6.23.0

(Computed) The etag of the project's IAM policy.

func (IAMPolicyOutput) PolicyData added in v6.23.0

func (o IAMPolicyOutput) PolicyData() pulumi.StringOutput

The `organizations.getIAMPolicy` data source that represents the IAM policy that will be applied to the project. The policy will be merged with any existing policy applied to the project.

Changing this updates the policy.

Deleting this removes all policies from the project, locking out users without organization-level access.

func (IAMPolicyOutput) Project added in v6.23.0

func (o IAMPolicyOutput) Project() pulumi.StringOutput

The project id of the target project. This is not inferred from the provider.

func (IAMPolicyOutput) ToIAMPolicyOutput

func (o IAMPolicyOutput) ToIAMPolicyOutput() IAMPolicyOutput

func (IAMPolicyOutput) ToIAMPolicyOutputWithContext

func (o IAMPolicyOutput) ToIAMPolicyOutputWithContext(ctx context.Context) IAMPolicyOutput

func (IAMPolicyOutput) ToOutput added in v6.65.1

type IAMPolicyState

type IAMPolicyState struct {
	// (Computed) The etag of the project's IAM policy.
	Etag pulumi.StringPtrInput
	// The `organizations.getIAMPolicy` data source that represents
	// the IAM policy that will be applied to the project. The policy will be
	// merged with any existing policy applied to the project.
	//
	// Changing this updates the policy.
	//
	// Deleting this removes all policies from the project, locking out users without
	// organization-level access.
	PolicyData pulumi.StringPtrInput
	// The project id of the target project. This is not
	// inferred from the provider.
	Project pulumi.StringPtrInput
}

func (IAMPolicyState) ElementType

func (IAMPolicyState) ElementType() reflect.Type

type LookupOrganizationPolicyArgs

type LookupOrganizationPolicyArgs struct {
	// (Required) The name of the Constraint the Policy is configuring, for example, `serviceuser.services`. Check out the [complete list of available constraints](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-constraints#available_constraints).
	Constraint string `pulumi:"constraint"`
	// The project ID.
	Project string `pulumi:"project"`
}

A collection of arguments for invoking getOrganizationPolicy.

type LookupOrganizationPolicyOutputArgs

type LookupOrganizationPolicyOutputArgs struct {
	// (Required) The name of the Constraint the Policy is configuring, for example, `serviceuser.services`. Check out the [complete list of available constraints](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-constraints#available_constraints).
	Constraint pulumi.StringInput `pulumi:"constraint"`
	// The project ID.
	Project pulumi.StringInput `pulumi:"project"`
}

A collection of arguments for invoking getOrganizationPolicy.

func (LookupOrganizationPolicyOutputArgs) ElementType

type LookupOrganizationPolicyResult

type LookupOrganizationPolicyResult struct {
	BooleanPolicies []GetOrganizationPolicyBooleanPolicy `pulumi:"booleanPolicies"`
	Constraint      string                               `pulumi:"constraint"`
	Etag            string                               `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id              string                               `pulumi:"id"`
	ListPolicies    []GetOrganizationPolicyListPolicy    `pulumi:"listPolicies"`
	Project         string                               `pulumi:"project"`
	RestorePolicies []GetOrganizationPolicyRestorePolicy `pulumi:"restorePolicies"`
	UpdateTime      string                               `pulumi:"updateTime"`
	Version         int                                  `pulumi:"version"`
}

A collection of values returned by getOrganizationPolicy.

func LookupOrganizationPolicy

func LookupOrganizationPolicy(ctx *pulumi.Context, args *LookupOrganizationPolicyArgs, opts ...pulumi.InvokeOption) (*LookupOrganizationPolicyResult, error)

Allows management of Organization policies for a Google Project. For more information see [the official documentation](https://cloud.google.com/resource-manager/docs/organization-policy/overview)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		policy, err := projects.LookupOrganizationPolicy(ctx, &projects.LookupOrganizationPolicyArgs{
			Project:    "project-id",
			Constraint: "constraints/serviceuser.services",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("version", policy.Version)
		return nil
	})
}

```

type LookupOrganizationPolicyResultOutput

type LookupOrganizationPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getOrganizationPolicy.

func (LookupOrganizationPolicyResultOutput) BooleanPolicies

func (LookupOrganizationPolicyResultOutput) Constraint

func (LookupOrganizationPolicyResultOutput) ElementType

func (LookupOrganizationPolicyResultOutput) Etag

func (LookupOrganizationPolicyResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupOrganizationPolicyResultOutput) ListPolicies

func (LookupOrganizationPolicyResultOutput) Project

func (LookupOrganizationPolicyResultOutput) RestorePolicies

func (LookupOrganizationPolicyResultOutput) ToLookupOrganizationPolicyResultOutput

func (o LookupOrganizationPolicyResultOutput) ToLookupOrganizationPolicyResultOutput() LookupOrganizationPolicyResultOutput

func (LookupOrganizationPolicyResultOutput) ToLookupOrganizationPolicyResultOutputWithContext

func (o LookupOrganizationPolicyResultOutput) ToLookupOrganizationPolicyResultOutputWithContext(ctx context.Context) LookupOrganizationPolicyResultOutput

func (LookupOrganizationPolicyResultOutput) ToOutput added in v6.65.1

func (LookupOrganizationPolicyResultOutput) UpdateTime

func (LookupOrganizationPolicyResultOutput) Version

type OrganizationPolicy

type OrganizationPolicy struct {
	pulumi.CustomResourceState

	// A boolean policy is a constraint that is either enforced or not. Structure is documented below.
	BooleanPolicy OrganizationPolicyBooleanPolicyPtrOutput `pulumi:"booleanPolicy"`
	// The name of the Constraint the Policy is configuring, for example, `serviceuser.services`. Check out the [complete list of available constraints](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-constraints#available_constraints).
	//
	// ***
	Constraint pulumi.StringOutput `pulumi:"constraint"`
	// (Computed) The etag of the organization policy. `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// A policy that can define specific values that are allowed or denied for the given constraint. It can also be used to allow or deny all values. Structure is documented below.
	ListPolicy OrganizationPolicyListPolicyPtrOutput `pulumi:"listPolicy"`
	// The project id of the project to set the policy for.
	Project pulumi.StringOutput `pulumi:"project"`
	// A restore policy is a constraint to restore the default policy. Structure is documented below.
	//
	// > **Note:** If none of [`booleanPolicy`, `listPolicy`, `restorePolicy`] are defined the policy for a given constraint will
	// effectively be unset. This is represented in the UI as the constraint being 'Inherited'.
	//
	// ***
	RestorePolicy OrganizationPolicyRestorePolicyPtrOutput `pulumi:"restorePolicy"`
	// (Computed) The timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds, representing when the variable was last updated. Example: "2016-10-09T12:33:37.578138407Z".
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// Version of the Policy. Default version is 0.
	Version pulumi.IntOutput `pulumi:"version"`
}

Allows management of Organization Policies for a Google Cloud Project.

> **Warning:** This resource has been superseded by `orgpolicy.Policy`. `orgpolicy.Policy` uses Organization Policy API V2 instead of Cloud Resource Manager API V1 and it supports additional features such as tags and conditions.

To get more information about Organization Policies, see:

* [API documentation](https://cloud.google.com/resource-manager/reference/rest/v1/projects/setOrgPolicy) * How-to Guides

## Example Usage

To set policy with a [boolean constraint](https://cloud.google.com/resource-manager/docs/organization-policy/quickstart-boolean-constraints):

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewOrganizationPolicy(ctx, "serialPortPolicy", &projects.OrganizationPolicyArgs{
			BooleanPolicy: &projects.OrganizationPolicyBooleanPolicyArgs{
				Enforced: pulumi.Bool(true),
			},
			Constraint: pulumi.String("compute.disableSerialPortAccess"),
			Project:    pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To set a policy with a [list constraint](https://cloud.google.com/resource-manager/docs/organization-policy/quickstart-list-constraints):

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewOrganizationPolicy(ctx, "servicesPolicy", &projects.OrganizationPolicyArgs{
			Constraint: pulumi.String("serviceuser.services"),
			ListPolicy: &projects.OrganizationPolicyListPolicyArgs{
				Allow: &projects.OrganizationPolicyListPolicyAllowArgs{
					All: pulumi.Bool(true),
				},
			},
			Project: pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Or to deny some services, use the following instead:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewOrganizationPolicy(ctx, "servicesPolicy", &projects.OrganizationPolicyArgs{
			Constraint: pulumi.String("serviceuser.services"),
			ListPolicy: &projects.OrganizationPolicyListPolicyArgs{
				Deny: &projects.OrganizationPolicyListPolicyDenyArgs{
					Values: pulumi.StringArray{
						pulumi.String("cloudresourcemanager.googleapis.com"),
					},
				},
				SuggestedValue: pulumi.String("compute.googleapis.com"),
			},
			Project: pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To restore the default project organization policy, use the following instead:

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewOrganizationPolicy(ctx, "servicesPolicy", &projects.OrganizationPolicyArgs{
			Constraint: pulumi.String("serviceuser.services"),
			Project:    pulumi.String("your-project-id"),
			RestorePolicy: &projects.OrganizationPolicyRestorePolicyArgs{
				Default: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Project organization policies can be imported using any of the follow formats

```sh

$ pulumi import gcp:projects/organizationPolicy:OrganizationPolicy policy projects/test-project:constraints/serviceuser.services

```

```sh

$ pulumi import gcp:projects/organizationPolicy:OrganizationPolicy policy test-project:constraints/serviceuser.services

```

```sh

$ pulumi import gcp:projects/organizationPolicy:OrganizationPolicy policy test-project:serviceuser.services

```

func GetOrganizationPolicy

func GetOrganizationPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationPolicyState, opts ...pulumi.ResourceOption) (*OrganizationPolicy, error)

GetOrganizationPolicy gets an existing OrganizationPolicy 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 NewOrganizationPolicy

func NewOrganizationPolicy(ctx *pulumi.Context,
	name string, args *OrganizationPolicyArgs, opts ...pulumi.ResourceOption) (*OrganizationPolicy, error)

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

func (*OrganizationPolicy) ElementType

func (*OrganizationPolicy) ElementType() reflect.Type

func (*OrganizationPolicy) ToOrganizationPolicyOutput

func (i *OrganizationPolicy) ToOrganizationPolicyOutput() OrganizationPolicyOutput

func (*OrganizationPolicy) ToOrganizationPolicyOutputWithContext

func (i *OrganizationPolicy) ToOrganizationPolicyOutputWithContext(ctx context.Context) OrganizationPolicyOutput

func (*OrganizationPolicy) ToOutput added in v6.65.1

type OrganizationPolicyArgs

type OrganizationPolicyArgs struct {
	// A boolean policy is a constraint that is either enforced or not. Structure is documented below.
	BooleanPolicy OrganizationPolicyBooleanPolicyPtrInput
	// The name of the Constraint the Policy is configuring, for example, `serviceuser.services`. Check out the [complete list of available constraints](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-constraints#available_constraints).
	//
	// ***
	Constraint pulumi.StringInput
	// A policy that can define specific values that are allowed or denied for the given constraint. It can also be used to allow or deny all values. Structure is documented below.
	ListPolicy OrganizationPolicyListPolicyPtrInput
	// The project id of the project to set the policy for.
	Project pulumi.StringInput
	// A restore policy is a constraint to restore the default policy. Structure is documented below.
	//
	// > **Note:** If none of [`booleanPolicy`, `listPolicy`, `restorePolicy`] are defined the policy for a given constraint will
	// effectively be unset. This is represented in the UI as the constraint being 'Inherited'.
	//
	// ***
	RestorePolicy OrganizationPolicyRestorePolicyPtrInput
	// Version of the Policy. Default version is 0.
	Version pulumi.IntPtrInput
}

The set of arguments for constructing a OrganizationPolicy resource.

func (OrganizationPolicyArgs) ElementType

func (OrganizationPolicyArgs) ElementType() reflect.Type

type OrganizationPolicyArray

type OrganizationPolicyArray []OrganizationPolicyInput

func (OrganizationPolicyArray) ElementType

func (OrganizationPolicyArray) ElementType() reflect.Type

func (OrganizationPolicyArray) ToOrganizationPolicyArrayOutput

func (i OrganizationPolicyArray) ToOrganizationPolicyArrayOutput() OrganizationPolicyArrayOutput

func (OrganizationPolicyArray) ToOrganizationPolicyArrayOutputWithContext

func (i OrganizationPolicyArray) ToOrganizationPolicyArrayOutputWithContext(ctx context.Context) OrganizationPolicyArrayOutput

func (OrganizationPolicyArray) ToOutput added in v6.65.1

type OrganizationPolicyArrayInput

type OrganizationPolicyArrayInput interface {
	pulumi.Input

	ToOrganizationPolicyArrayOutput() OrganizationPolicyArrayOutput
	ToOrganizationPolicyArrayOutputWithContext(context.Context) OrganizationPolicyArrayOutput
}

OrganizationPolicyArrayInput is an input type that accepts OrganizationPolicyArray and OrganizationPolicyArrayOutput values. You can construct a concrete instance of `OrganizationPolicyArrayInput` via:

OrganizationPolicyArray{ OrganizationPolicyArgs{...} }

type OrganizationPolicyArrayOutput

type OrganizationPolicyArrayOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyArrayOutput) ElementType

func (OrganizationPolicyArrayOutput) Index

func (OrganizationPolicyArrayOutput) ToOrganizationPolicyArrayOutput

func (o OrganizationPolicyArrayOutput) ToOrganizationPolicyArrayOutput() OrganizationPolicyArrayOutput

func (OrganizationPolicyArrayOutput) ToOrganizationPolicyArrayOutputWithContext

func (o OrganizationPolicyArrayOutput) ToOrganizationPolicyArrayOutputWithContext(ctx context.Context) OrganizationPolicyArrayOutput

func (OrganizationPolicyArrayOutput) ToOutput added in v6.65.1

type OrganizationPolicyBooleanPolicy

type OrganizationPolicyBooleanPolicy struct {
	// If true, then the Policy is enforced. If false, then any configuration is acceptable.
	Enforced bool `pulumi:"enforced"`
}

type OrganizationPolicyBooleanPolicyArgs

type OrganizationPolicyBooleanPolicyArgs struct {
	// If true, then the Policy is enforced. If false, then any configuration is acceptable.
	Enforced pulumi.BoolInput `pulumi:"enforced"`
}

func (OrganizationPolicyBooleanPolicyArgs) ElementType

func (OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyOutput

func (i OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyOutput() OrganizationPolicyBooleanPolicyOutput

func (OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyOutputWithContext

func (i OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyOutputWithContext(ctx context.Context) OrganizationPolicyBooleanPolicyOutput

func (OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyPtrOutput

func (i OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyPtrOutput() OrganizationPolicyBooleanPolicyPtrOutput

func (OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyPtrOutputWithContext

func (i OrganizationPolicyBooleanPolicyArgs) ToOrganizationPolicyBooleanPolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyBooleanPolicyPtrOutput

func (OrganizationPolicyBooleanPolicyArgs) ToOutput added in v6.65.1

type OrganizationPolicyBooleanPolicyInput

type OrganizationPolicyBooleanPolicyInput interface {
	pulumi.Input

	ToOrganizationPolicyBooleanPolicyOutput() OrganizationPolicyBooleanPolicyOutput
	ToOrganizationPolicyBooleanPolicyOutputWithContext(context.Context) OrganizationPolicyBooleanPolicyOutput
}

OrganizationPolicyBooleanPolicyInput is an input type that accepts OrganizationPolicyBooleanPolicyArgs and OrganizationPolicyBooleanPolicyOutput values. You can construct a concrete instance of `OrganizationPolicyBooleanPolicyInput` via:

OrganizationPolicyBooleanPolicyArgs{...}

type OrganizationPolicyBooleanPolicyOutput

type OrganizationPolicyBooleanPolicyOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyBooleanPolicyOutput) ElementType

func (OrganizationPolicyBooleanPolicyOutput) Enforced

If true, then the Policy is enforced. If false, then any configuration is acceptable.

func (OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyOutput

func (o OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyOutput() OrganizationPolicyBooleanPolicyOutput

func (OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyOutputWithContext

func (o OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyOutputWithContext(ctx context.Context) OrganizationPolicyBooleanPolicyOutput

func (OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyPtrOutput

func (o OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyPtrOutput() OrganizationPolicyBooleanPolicyPtrOutput

func (OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyPtrOutputWithContext

func (o OrganizationPolicyBooleanPolicyOutput) ToOrganizationPolicyBooleanPolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyBooleanPolicyPtrOutput

func (OrganizationPolicyBooleanPolicyOutput) ToOutput added in v6.65.1

type OrganizationPolicyBooleanPolicyPtrInput

type OrganizationPolicyBooleanPolicyPtrInput interface {
	pulumi.Input

	ToOrganizationPolicyBooleanPolicyPtrOutput() OrganizationPolicyBooleanPolicyPtrOutput
	ToOrganizationPolicyBooleanPolicyPtrOutputWithContext(context.Context) OrganizationPolicyBooleanPolicyPtrOutput
}

OrganizationPolicyBooleanPolicyPtrInput is an input type that accepts OrganizationPolicyBooleanPolicyArgs, OrganizationPolicyBooleanPolicyPtr and OrganizationPolicyBooleanPolicyPtrOutput values. You can construct a concrete instance of `OrganizationPolicyBooleanPolicyPtrInput` via:

        OrganizationPolicyBooleanPolicyArgs{...}

or:

        nil

type OrganizationPolicyBooleanPolicyPtrOutput

type OrganizationPolicyBooleanPolicyPtrOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyBooleanPolicyPtrOutput) Elem

func (OrganizationPolicyBooleanPolicyPtrOutput) ElementType

func (OrganizationPolicyBooleanPolicyPtrOutput) Enforced

If true, then the Policy is enforced. If false, then any configuration is acceptable.

func (OrganizationPolicyBooleanPolicyPtrOutput) ToOrganizationPolicyBooleanPolicyPtrOutput

func (o OrganizationPolicyBooleanPolicyPtrOutput) ToOrganizationPolicyBooleanPolicyPtrOutput() OrganizationPolicyBooleanPolicyPtrOutput

func (OrganizationPolicyBooleanPolicyPtrOutput) ToOrganizationPolicyBooleanPolicyPtrOutputWithContext

func (o OrganizationPolicyBooleanPolicyPtrOutput) ToOrganizationPolicyBooleanPolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyBooleanPolicyPtrOutput

func (OrganizationPolicyBooleanPolicyPtrOutput) ToOutput added in v6.65.1

type OrganizationPolicyInput

type OrganizationPolicyInput interface {
	pulumi.Input

	ToOrganizationPolicyOutput() OrganizationPolicyOutput
	ToOrganizationPolicyOutputWithContext(ctx context.Context) OrganizationPolicyOutput
}

type OrganizationPolicyListPolicy

type OrganizationPolicyListPolicy struct {
	// or `deny` - (Optional) One or the other must be set.
	Allow *OrganizationPolicyListPolicyAllow `pulumi:"allow"`
	Deny  *OrganizationPolicyListPolicyDeny  `pulumi:"deny"`
	// If set to true, the values from the effective Policy of the parent resource
	// are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.
	//
	// The `allow` or `deny` blocks support:
	InheritFromParent *bool `pulumi:"inheritFromParent"`
	// The Google Cloud Console will try to default to a configuration that matches the value specified in this field.
	SuggestedValue *string `pulumi:"suggestedValue"`
}

type OrganizationPolicyListPolicyAllow

type OrganizationPolicyListPolicyAllow struct {
	// The policy allows or denies all values.
	All *bool `pulumi:"all"`
	// The policy can define specific values that are allowed or denied.
	Values []string `pulumi:"values"`
}

type OrganizationPolicyListPolicyAllowArgs

type OrganizationPolicyListPolicyAllowArgs struct {
	// The policy allows or denies all values.
	All pulumi.BoolPtrInput `pulumi:"all"`
	// The policy can define specific values that are allowed or denied.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (OrganizationPolicyListPolicyAllowArgs) ElementType

func (OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowOutput

func (i OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowOutput() OrganizationPolicyListPolicyAllowOutput

func (OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowOutputWithContext

func (i OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyAllowOutput

func (OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowPtrOutput

func (i OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowPtrOutput() OrganizationPolicyListPolicyAllowPtrOutput

func (OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowPtrOutputWithContext

func (i OrganizationPolicyListPolicyAllowArgs) ToOrganizationPolicyListPolicyAllowPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyAllowPtrOutput

func (OrganizationPolicyListPolicyAllowArgs) ToOutput added in v6.65.1

type OrganizationPolicyListPolicyAllowInput

type OrganizationPolicyListPolicyAllowInput interface {
	pulumi.Input

	ToOrganizationPolicyListPolicyAllowOutput() OrganizationPolicyListPolicyAllowOutput
	ToOrganizationPolicyListPolicyAllowOutputWithContext(context.Context) OrganizationPolicyListPolicyAllowOutput
}

OrganizationPolicyListPolicyAllowInput is an input type that accepts OrganizationPolicyListPolicyAllowArgs and OrganizationPolicyListPolicyAllowOutput values. You can construct a concrete instance of `OrganizationPolicyListPolicyAllowInput` via:

OrganizationPolicyListPolicyAllowArgs{...}

type OrganizationPolicyListPolicyAllowOutput

type OrganizationPolicyListPolicyAllowOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyListPolicyAllowOutput) All

The policy allows or denies all values.

func (OrganizationPolicyListPolicyAllowOutput) ElementType

func (OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowOutput

func (o OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowOutput() OrganizationPolicyListPolicyAllowOutput

func (OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowOutputWithContext

func (o OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyAllowOutput

func (OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowPtrOutput

func (o OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowPtrOutput() OrganizationPolicyListPolicyAllowPtrOutput

func (OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowPtrOutputWithContext

func (o OrganizationPolicyListPolicyAllowOutput) ToOrganizationPolicyListPolicyAllowPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyAllowPtrOutput

func (OrganizationPolicyListPolicyAllowOutput) ToOutput added in v6.65.1

func (OrganizationPolicyListPolicyAllowOutput) Values

The policy can define specific values that are allowed or denied.

type OrganizationPolicyListPolicyAllowPtrInput

type OrganizationPolicyListPolicyAllowPtrInput interface {
	pulumi.Input

	ToOrganizationPolicyListPolicyAllowPtrOutput() OrganizationPolicyListPolicyAllowPtrOutput
	ToOrganizationPolicyListPolicyAllowPtrOutputWithContext(context.Context) OrganizationPolicyListPolicyAllowPtrOutput
}

OrganizationPolicyListPolicyAllowPtrInput is an input type that accepts OrganizationPolicyListPolicyAllowArgs, OrganizationPolicyListPolicyAllowPtr and OrganizationPolicyListPolicyAllowPtrOutput values. You can construct a concrete instance of `OrganizationPolicyListPolicyAllowPtrInput` via:

        OrganizationPolicyListPolicyAllowArgs{...}

or:

        nil

type OrganizationPolicyListPolicyAllowPtrOutput

type OrganizationPolicyListPolicyAllowPtrOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyListPolicyAllowPtrOutput) All

The policy allows or denies all values.

func (OrganizationPolicyListPolicyAllowPtrOutput) Elem

func (OrganizationPolicyListPolicyAllowPtrOutput) ElementType

func (OrganizationPolicyListPolicyAllowPtrOutput) ToOrganizationPolicyListPolicyAllowPtrOutput

func (o OrganizationPolicyListPolicyAllowPtrOutput) ToOrganizationPolicyListPolicyAllowPtrOutput() OrganizationPolicyListPolicyAllowPtrOutput

func (OrganizationPolicyListPolicyAllowPtrOutput) ToOrganizationPolicyListPolicyAllowPtrOutputWithContext

func (o OrganizationPolicyListPolicyAllowPtrOutput) ToOrganizationPolicyListPolicyAllowPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyAllowPtrOutput

func (OrganizationPolicyListPolicyAllowPtrOutput) ToOutput added in v6.65.1

func (OrganizationPolicyListPolicyAllowPtrOutput) Values

The policy can define specific values that are allowed or denied.

type OrganizationPolicyListPolicyArgs

type OrganizationPolicyListPolicyArgs struct {
	// or `deny` - (Optional) One or the other must be set.
	Allow OrganizationPolicyListPolicyAllowPtrInput `pulumi:"allow"`
	Deny  OrganizationPolicyListPolicyDenyPtrInput  `pulumi:"deny"`
	// If set to true, the values from the effective Policy of the parent resource
	// are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.
	//
	// The `allow` or `deny` blocks support:
	InheritFromParent pulumi.BoolPtrInput `pulumi:"inheritFromParent"`
	// The Google Cloud Console will try to default to a configuration that matches the value specified in this field.
	SuggestedValue pulumi.StringPtrInput `pulumi:"suggestedValue"`
}

func (OrganizationPolicyListPolicyArgs) ElementType

func (OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyOutput

func (i OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyOutput() OrganizationPolicyListPolicyOutput

func (OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyOutputWithContext

func (i OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyOutput

func (OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyPtrOutput

func (i OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyPtrOutput() OrganizationPolicyListPolicyPtrOutput

func (OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyPtrOutputWithContext

func (i OrganizationPolicyListPolicyArgs) ToOrganizationPolicyListPolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyPtrOutput

func (OrganizationPolicyListPolicyArgs) ToOutput added in v6.65.1

type OrganizationPolicyListPolicyDeny

type OrganizationPolicyListPolicyDeny struct {
	// The policy allows or denies all values.
	All *bool `pulumi:"all"`
	// The policy can define specific values that are allowed or denied.
	Values []string `pulumi:"values"`
}

type OrganizationPolicyListPolicyDenyArgs

type OrganizationPolicyListPolicyDenyArgs struct {
	// The policy allows or denies all values.
	All pulumi.BoolPtrInput `pulumi:"all"`
	// The policy can define specific values that are allowed or denied.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (OrganizationPolicyListPolicyDenyArgs) ElementType

func (OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyOutput

func (i OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyOutput() OrganizationPolicyListPolicyDenyOutput

func (OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyOutputWithContext

func (i OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyDenyOutput

func (OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyPtrOutput

func (i OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyPtrOutput() OrganizationPolicyListPolicyDenyPtrOutput

func (OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyPtrOutputWithContext

func (i OrganizationPolicyListPolicyDenyArgs) ToOrganizationPolicyListPolicyDenyPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyDenyPtrOutput

func (OrganizationPolicyListPolicyDenyArgs) ToOutput added in v6.65.1

type OrganizationPolicyListPolicyDenyInput

type OrganizationPolicyListPolicyDenyInput interface {
	pulumi.Input

	ToOrganizationPolicyListPolicyDenyOutput() OrganizationPolicyListPolicyDenyOutput
	ToOrganizationPolicyListPolicyDenyOutputWithContext(context.Context) OrganizationPolicyListPolicyDenyOutput
}

OrganizationPolicyListPolicyDenyInput is an input type that accepts OrganizationPolicyListPolicyDenyArgs and OrganizationPolicyListPolicyDenyOutput values. You can construct a concrete instance of `OrganizationPolicyListPolicyDenyInput` via:

OrganizationPolicyListPolicyDenyArgs{...}

type OrganizationPolicyListPolicyDenyOutput

type OrganizationPolicyListPolicyDenyOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyListPolicyDenyOutput) All

The policy allows or denies all values.

func (OrganizationPolicyListPolicyDenyOutput) ElementType

func (OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyOutput

func (o OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyOutput() OrganizationPolicyListPolicyDenyOutput

func (OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyOutputWithContext

func (o OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyDenyOutput

func (OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyPtrOutput

func (o OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyPtrOutput() OrganizationPolicyListPolicyDenyPtrOutput

func (OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyPtrOutputWithContext

func (o OrganizationPolicyListPolicyDenyOutput) ToOrganizationPolicyListPolicyDenyPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyDenyPtrOutput

func (OrganizationPolicyListPolicyDenyOutput) ToOutput added in v6.65.1

func (OrganizationPolicyListPolicyDenyOutput) Values

The policy can define specific values that are allowed or denied.

type OrganizationPolicyListPolicyDenyPtrInput

type OrganizationPolicyListPolicyDenyPtrInput interface {
	pulumi.Input

	ToOrganizationPolicyListPolicyDenyPtrOutput() OrganizationPolicyListPolicyDenyPtrOutput
	ToOrganizationPolicyListPolicyDenyPtrOutputWithContext(context.Context) OrganizationPolicyListPolicyDenyPtrOutput
}

OrganizationPolicyListPolicyDenyPtrInput is an input type that accepts OrganizationPolicyListPolicyDenyArgs, OrganizationPolicyListPolicyDenyPtr and OrganizationPolicyListPolicyDenyPtrOutput values. You can construct a concrete instance of `OrganizationPolicyListPolicyDenyPtrInput` via:

        OrganizationPolicyListPolicyDenyArgs{...}

or:

        nil

type OrganizationPolicyListPolicyDenyPtrOutput

type OrganizationPolicyListPolicyDenyPtrOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyListPolicyDenyPtrOutput) All

The policy allows or denies all values.

func (OrganizationPolicyListPolicyDenyPtrOutput) Elem

func (OrganizationPolicyListPolicyDenyPtrOutput) ElementType

func (OrganizationPolicyListPolicyDenyPtrOutput) ToOrganizationPolicyListPolicyDenyPtrOutput

func (o OrganizationPolicyListPolicyDenyPtrOutput) ToOrganizationPolicyListPolicyDenyPtrOutput() OrganizationPolicyListPolicyDenyPtrOutput

func (OrganizationPolicyListPolicyDenyPtrOutput) ToOrganizationPolicyListPolicyDenyPtrOutputWithContext

func (o OrganizationPolicyListPolicyDenyPtrOutput) ToOrganizationPolicyListPolicyDenyPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyDenyPtrOutput

func (OrganizationPolicyListPolicyDenyPtrOutput) ToOutput added in v6.65.1

func (OrganizationPolicyListPolicyDenyPtrOutput) Values

The policy can define specific values that are allowed or denied.

type OrganizationPolicyListPolicyInput

type OrganizationPolicyListPolicyInput interface {
	pulumi.Input

	ToOrganizationPolicyListPolicyOutput() OrganizationPolicyListPolicyOutput
	ToOrganizationPolicyListPolicyOutputWithContext(context.Context) OrganizationPolicyListPolicyOutput
}

OrganizationPolicyListPolicyInput is an input type that accepts OrganizationPolicyListPolicyArgs and OrganizationPolicyListPolicyOutput values. You can construct a concrete instance of `OrganizationPolicyListPolicyInput` via:

OrganizationPolicyListPolicyArgs{...}

type OrganizationPolicyListPolicyOutput

type OrganizationPolicyListPolicyOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyListPolicyOutput) Allow

or `deny` - (Optional) One or the other must be set.

func (OrganizationPolicyListPolicyOutput) Deny

func (OrganizationPolicyListPolicyOutput) ElementType

func (OrganizationPolicyListPolicyOutput) InheritFromParent

If set to true, the values from the effective Policy of the parent resource are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.

The `allow` or `deny` blocks support:

func (OrganizationPolicyListPolicyOutput) SuggestedValue

The Google Cloud Console will try to default to a configuration that matches the value specified in this field.

func (OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyOutput

func (o OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyOutput() OrganizationPolicyListPolicyOutput

func (OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyOutputWithContext

func (o OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyOutput

func (OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyPtrOutput

func (o OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyPtrOutput() OrganizationPolicyListPolicyPtrOutput

func (OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyPtrOutputWithContext

func (o OrganizationPolicyListPolicyOutput) ToOrganizationPolicyListPolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyPtrOutput

func (OrganizationPolicyListPolicyOutput) ToOutput added in v6.65.1

type OrganizationPolicyListPolicyPtrInput

type OrganizationPolicyListPolicyPtrInput interface {
	pulumi.Input

	ToOrganizationPolicyListPolicyPtrOutput() OrganizationPolicyListPolicyPtrOutput
	ToOrganizationPolicyListPolicyPtrOutputWithContext(context.Context) OrganizationPolicyListPolicyPtrOutput
}

OrganizationPolicyListPolicyPtrInput is an input type that accepts OrganizationPolicyListPolicyArgs, OrganizationPolicyListPolicyPtr and OrganizationPolicyListPolicyPtrOutput values. You can construct a concrete instance of `OrganizationPolicyListPolicyPtrInput` via:

        OrganizationPolicyListPolicyArgs{...}

or:

        nil

type OrganizationPolicyListPolicyPtrOutput

type OrganizationPolicyListPolicyPtrOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyListPolicyPtrOutput) Allow

or `deny` - (Optional) One or the other must be set.

func (OrganizationPolicyListPolicyPtrOutput) Deny

func (OrganizationPolicyListPolicyPtrOutput) Elem

func (OrganizationPolicyListPolicyPtrOutput) ElementType

func (OrganizationPolicyListPolicyPtrOutput) InheritFromParent

If set to true, the values from the effective Policy of the parent resource are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.

The `allow` or `deny` blocks support:

func (OrganizationPolicyListPolicyPtrOutput) SuggestedValue

The Google Cloud Console will try to default to a configuration that matches the value specified in this field.

func (OrganizationPolicyListPolicyPtrOutput) ToOrganizationPolicyListPolicyPtrOutput

func (o OrganizationPolicyListPolicyPtrOutput) ToOrganizationPolicyListPolicyPtrOutput() OrganizationPolicyListPolicyPtrOutput

func (OrganizationPolicyListPolicyPtrOutput) ToOrganizationPolicyListPolicyPtrOutputWithContext

func (o OrganizationPolicyListPolicyPtrOutput) ToOrganizationPolicyListPolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyListPolicyPtrOutput

func (OrganizationPolicyListPolicyPtrOutput) ToOutput added in v6.65.1

type OrganizationPolicyMap

type OrganizationPolicyMap map[string]OrganizationPolicyInput

func (OrganizationPolicyMap) ElementType

func (OrganizationPolicyMap) ElementType() reflect.Type

func (OrganizationPolicyMap) ToOrganizationPolicyMapOutput

func (i OrganizationPolicyMap) ToOrganizationPolicyMapOutput() OrganizationPolicyMapOutput

func (OrganizationPolicyMap) ToOrganizationPolicyMapOutputWithContext

func (i OrganizationPolicyMap) ToOrganizationPolicyMapOutputWithContext(ctx context.Context) OrganizationPolicyMapOutput

func (OrganizationPolicyMap) ToOutput added in v6.65.1

type OrganizationPolicyMapInput

type OrganizationPolicyMapInput interface {
	pulumi.Input

	ToOrganizationPolicyMapOutput() OrganizationPolicyMapOutput
	ToOrganizationPolicyMapOutputWithContext(context.Context) OrganizationPolicyMapOutput
}

OrganizationPolicyMapInput is an input type that accepts OrganizationPolicyMap and OrganizationPolicyMapOutput values. You can construct a concrete instance of `OrganizationPolicyMapInput` via:

OrganizationPolicyMap{ "key": OrganizationPolicyArgs{...} }

type OrganizationPolicyMapOutput

type OrganizationPolicyMapOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyMapOutput) ElementType

func (OrganizationPolicyMapOutput) MapIndex

func (OrganizationPolicyMapOutput) ToOrganizationPolicyMapOutput

func (o OrganizationPolicyMapOutput) ToOrganizationPolicyMapOutput() OrganizationPolicyMapOutput

func (OrganizationPolicyMapOutput) ToOrganizationPolicyMapOutputWithContext

func (o OrganizationPolicyMapOutput) ToOrganizationPolicyMapOutputWithContext(ctx context.Context) OrganizationPolicyMapOutput

func (OrganizationPolicyMapOutput) ToOutput added in v6.65.1

type OrganizationPolicyOutput

type OrganizationPolicyOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyOutput) BooleanPolicy added in v6.23.0

A boolean policy is a constraint that is either enforced or not. Structure is documented below.

func (OrganizationPolicyOutput) Constraint added in v6.23.0

The name of the Constraint the Policy is configuring, for example, `serviceuser.services`. Check out the [complete list of available constraints](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-constraints#available_constraints).

***

func (OrganizationPolicyOutput) ElementType

func (OrganizationPolicyOutput) ElementType() reflect.Type

func (OrganizationPolicyOutput) Etag added in v6.23.0

(Computed) The etag of the organization policy. `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other.

func (OrganizationPolicyOutput) ListPolicy added in v6.23.0

A policy that can define specific values that are allowed or denied for the given constraint. It can also be used to allow or deny all values. Structure is documented below.

func (OrganizationPolicyOutput) Project added in v6.23.0

The project id of the project to set the policy for.

func (OrganizationPolicyOutput) RestorePolicy added in v6.23.0

A restore policy is a constraint to restore the default policy. Structure is documented below.

> **Note:** If none of [`booleanPolicy`, `listPolicy`, `restorePolicy`] are defined the policy for a given constraint will effectively be unset. This is represented in the UI as the constraint being 'Inherited'.

***

func (OrganizationPolicyOutput) ToOrganizationPolicyOutput

func (o OrganizationPolicyOutput) ToOrganizationPolicyOutput() OrganizationPolicyOutput

func (OrganizationPolicyOutput) ToOrganizationPolicyOutputWithContext

func (o OrganizationPolicyOutput) ToOrganizationPolicyOutputWithContext(ctx context.Context) OrganizationPolicyOutput

func (OrganizationPolicyOutput) ToOutput added in v6.65.1

func (OrganizationPolicyOutput) UpdateTime added in v6.23.0

(Computed) The timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds, representing when the variable was last updated. Example: "2016-10-09T12:33:37.578138407Z".

func (OrganizationPolicyOutput) Version added in v6.23.0

Version of the Policy. Default version is 0.

type OrganizationPolicyRestorePolicy

type OrganizationPolicyRestorePolicy struct {
	// May only be set to true. If set, then the default Policy is restored.
	Default bool `pulumi:"default"`
}

type OrganizationPolicyRestorePolicyArgs

type OrganizationPolicyRestorePolicyArgs struct {
	// May only be set to true. If set, then the default Policy is restored.
	Default pulumi.BoolInput `pulumi:"default"`
}

func (OrganizationPolicyRestorePolicyArgs) ElementType

func (OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyOutput

func (i OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyOutput() OrganizationPolicyRestorePolicyOutput

func (OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyOutputWithContext

func (i OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyOutputWithContext(ctx context.Context) OrganizationPolicyRestorePolicyOutput

func (OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyPtrOutput

func (i OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyPtrOutput() OrganizationPolicyRestorePolicyPtrOutput

func (OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyPtrOutputWithContext

func (i OrganizationPolicyRestorePolicyArgs) ToOrganizationPolicyRestorePolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyRestorePolicyPtrOutput

func (OrganizationPolicyRestorePolicyArgs) ToOutput added in v6.65.1

type OrganizationPolicyRestorePolicyInput

type OrganizationPolicyRestorePolicyInput interface {
	pulumi.Input

	ToOrganizationPolicyRestorePolicyOutput() OrganizationPolicyRestorePolicyOutput
	ToOrganizationPolicyRestorePolicyOutputWithContext(context.Context) OrganizationPolicyRestorePolicyOutput
}

OrganizationPolicyRestorePolicyInput is an input type that accepts OrganizationPolicyRestorePolicyArgs and OrganizationPolicyRestorePolicyOutput values. You can construct a concrete instance of `OrganizationPolicyRestorePolicyInput` via:

OrganizationPolicyRestorePolicyArgs{...}

type OrganizationPolicyRestorePolicyOutput

type OrganizationPolicyRestorePolicyOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyRestorePolicyOutput) Default

May only be set to true. If set, then the default Policy is restored.

func (OrganizationPolicyRestorePolicyOutput) ElementType

func (OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyOutput

func (o OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyOutput() OrganizationPolicyRestorePolicyOutput

func (OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyOutputWithContext

func (o OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyOutputWithContext(ctx context.Context) OrganizationPolicyRestorePolicyOutput

func (OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyPtrOutput

func (o OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyPtrOutput() OrganizationPolicyRestorePolicyPtrOutput

func (OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyPtrOutputWithContext

func (o OrganizationPolicyRestorePolicyOutput) ToOrganizationPolicyRestorePolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyRestorePolicyPtrOutput

func (OrganizationPolicyRestorePolicyOutput) ToOutput added in v6.65.1

type OrganizationPolicyRestorePolicyPtrInput

type OrganizationPolicyRestorePolicyPtrInput interface {
	pulumi.Input

	ToOrganizationPolicyRestorePolicyPtrOutput() OrganizationPolicyRestorePolicyPtrOutput
	ToOrganizationPolicyRestorePolicyPtrOutputWithContext(context.Context) OrganizationPolicyRestorePolicyPtrOutput
}

OrganizationPolicyRestorePolicyPtrInput is an input type that accepts OrganizationPolicyRestorePolicyArgs, OrganizationPolicyRestorePolicyPtr and OrganizationPolicyRestorePolicyPtrOutput values. You can construct a concrete instance of `OrganizationPolicyRestorePolicyPtrInput` via:

        OrganizationPolicyRestorePolicyArgs{...}

or:

        nil

type OrganizationPolicyRestorePolicyPtrOutput

type OrganizationPolicyRestorePolicyPtrOutput struct{ *pulumi.OutputState }

func (OrganizationPolicyRestorePolicyPtrOutput) Default

May only be set to true. If set, then the default Policy is restored.

func (OrganizationPolicyRestorePolicyPtrOutput) Elem

func (OrganizationPolicyRestorePolicyPtrOutput) ElementType

func (OrganizationPolicyRestorePolicyPtrOutput) ToOrganizationPolicyRestorePolicyPtrOutput

func (o OrganizationPolicyRestorePolicyPtrOutput) ToOrganizationPolicyRestorePolicyPtrOutput() OrganizationPolicyRestorePolicyPtrOutput

func (OrganizationPolicyRestorePolicyPtrOutput) ToOrganizationPolicyRestorePolicyPtrOutputWithContext

func (o OrganizationPolicyRestorePolicyPtrOutput) ToOrganizationPolicyRestorePolicyPtrOutputWithContext(ctx context.Context) OrganizationPolicyRestorePolicyPtrOutput

func (OrganizationPolicyRestorePolicyPtrOutput) ToOutput added in v6.65.1

type OrganizationPolicyState

type OrganizationPolicyState struct {
	// A boolean policy is a constraint that is either enforced or not. Structure is documented below.
	BooleanPolicy OrganizationPolicyBooleanPolicyPtrInput
	// The name of the Constraint the Policy is configuring, for example, `serviceuser.services`. Check out the [complete list of available constraints](https://cloud.google.com/resource-manager/docs/organization-policy/understanding-constraints#available_constraints).
	//
	// ***
	Constraint pulumi.StringPtrInput
	// (Computed) The etag of the organization policy. `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other.
	Etag pulumi.StringPtrInput
	// A policy that can define specific values that are allowed or denied for the given constraint. It can also be used to allow or deny all values. Structure is documented below.
	ListPolicy OrganizationPolicyListPolicyPtrInput
	// The project id of the project to set the policy for.
	Project pulumi.StringPtrInput
	// A restore policy is a constraint to restore the default policy. Structure is documented below.
	//
	// > **Note:** If none of [`booleanPolicy`, `listPolicy`, `restorePolicy`] are defined the policy for a given constraint will
	// effectively be unset. This is represented in the UI as the constraint being 'Inherited'.
	//
	// ***
	RestorePolicy OrganizationPolicyRestorePolicyPtrInput
	// (Computed) The timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds, representing when the variable was last updated. Example: "2016-10-09T12:33:37.578138407Z".
	UpdateTime pulumi.StringPtrInput
	// Version of the Policy. Default version is 0.
	Version pulumi.IntPtrInput
}

func (OrganizationPolicyState) ElementType

func (OrganizationPolicyState) ElementType() reflect.Type

type Service

type Service struct {
	pulumi.CustomResourceState

	// If `true`, services that are enabled
	// and which depend on this service should also be disabled when this service is
	// destroyed. If `false` or unset, an error will be generated if any enabled
	// services depend on this service when destroying it.
	DisableDependentServices pulumi.BoolPtrOutput `pulumi:"disableDependentServices"`
	// If true, disable the service when the resource is destroyed. Defaults to true. May be useful in the event that a project is long-lived but the infrastructure running in that project changes frequently.
	DisableOnDestroy pulumi.BoolPtrOutput `pulumi:"disableOnDestroy"`
	// The project ID. If not provided, the provider project
	// is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The service to enable.
	Service pulumi.StringOutput `pulumi:"service"`
}

Allows management of a single API service for a Google Cloud Platform project.

For a list of services available, visit the [API library page](https://console.cloud.google.com/apis/library) or run `gcloud services list --available`.

This resource requires the [Service Usage API](https://console.cloud.google.com/apis/library/serviceusage.googleapis.com) to use.

To get more information about `projects.Service`, see:

* [API documentation](https://cloud.google.com/service-usage/docs/reference/rest/v1/services) * How-to Guides

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := projects.NewService(ctx, "project", &projects.ServiceArgs{
			DisableDependentServices: pulumi.Bool(true),
			Project:                  pulumi.String("your-project-id"),
			Service:                  pulumi.String("iam.googleapis.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Project services can be imported using the `project_id` and `service`, e.g.

```sh

$ pulumi import gcp:projects/service:Service my_project your-project-id/iam.googleapis.com

```

Note that unlike other resources that fail if they already exist, `pulumi up` can be successfully used to verify already enabled services. This means that when importing existing resources into Terraform, you can either import the `google_project_service` resources or treat them as new infrastructure and run `pulumi up` to add them to state.

func GetService

func GetService(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceState, opts ...pulumi.ResourceOption) (*Service, error)

GetService gets an existing Service 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 NewService

func NewService(ctx *pulumi.Context,
	name string, args *ServiceArgs, opts ...pulumi.ResourceOption) (*Service, error)

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

func (*Service) ElementType

func (*Service) ElementType() reflect.Type

func (*Service) ToOutput added in v6.65.1

func (i *Service) ToOutput(ctx context.Context) pulumix.Output[*Service]

func (*Service) ToServiceOutput

func (i *Service) ToServiceOutput() ServiceOutput

func (*Service) ToServiceOutputWithContext

func (i *Service) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

type ServiceArgs

type ServiceArgs struct {
	// If `true`, services that are enabled
	// and which depend on this service should also be disabled when this service is
	// destroyed. If `false` or unset, an error will be generated if any enabled
	// services depend on this service when destroying it.
	DisableDependentServices pulumi.BoolPtrInput
	// If true, disable the service when the resource is destroyed. Defaults to true. May be useful in the event that a project is long-lived but the infrastructure running in that project changes frequently.
	DisableOnDestroy pulumi.BoolPtrInput
	// The project ID. If not provided, the provider project
	// is used.
	Project pulumi.StringPtrInput
	// The service to enable.
	Service pulumi.StringInput
}

The set of arguments for constructing a Service resource.

func (ServiceArgs) ElementType

func (ServiceArgs) ElementType() reflect.Type

type ServiceArray

type ServiceArray []ServiceInput

func (ServiceArray) ElementType

func (ServiceArray) ElementType() reflect.Type

func (ServiceArray) ToOutput added in v6.65.1

func (i ServiceArray) ToOutput(ctx context.Context) pulumix.Output[[]*Service]

func (ServiceArray) ToServiceArrayOutput

func (i ServiceArray) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArray) ToServiceArrayOutputWithContext

func (i ServiceArray) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceArrayInput

type ServiceArrayInput interface {
	pulumi.Input

	ToServiceArrayOutput() ServiceArrayOutput
	ToServiceArrayOutputWithContext(context.Context) ServiceArrayOutput
}

ServiceArrayInput is an input type that accepts ServiceArray and ServiceArrayOutput values. You can construct a concrete instance of `ServiceArrayInput` via:

ServiceArray{ ServiceArgs{...} }

type ServiceArrayOutput

type ServiceArrayOutput struct{ *pulumi.OutputState }

func (ServiceArrayOutput) ElementType

func (ServiceArrayOutput) ElementType() reflect.Type

func (ServiceArrayOutput) Index

func (ServiceArrayOutput) ToOutput added in v6.65.1

func (ServiceArrayOutput) ToServiceArrayOutput

func (o ServiceArrayOutput) ToServiceArrayOutput() ServiceArrayOutput

func (ServiceArrayOutput) ToServiceArrayOutputWithContext

func (o ServiceArrayOutput) ToServiceArrayOutputWithContext(ctx context.Context) ServiceArrayOutput

type ServiceIdentity

type ServiceIdentity struct {
	pulumi.CustomResourceState

	// The email address of the Google managed service account.
	Email pulumi.StringOutput `pulumi:"email"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The service to generate identity for.
	//
	// ***
	Service pulumi.StringOutput `pulumi:"service"`
}

Generate service identity for a service.

> **Note:** Once created, this resource cannot be updated or destroyed. These actions are a no-op.

> **Note:** This resource can be used to retrieve the emails of the [Google-managed service accounts](https://cloud.google.com/iam/docs/service-agents) of the APIs that Google has configured with a Service Identity. You can run `gcloud beta services identity create --service SERVICE_NAME.googleapis.com` to verify if an API supports this.

To get more information about Service Identity, see:

* [API documentation](https://cloud.google.com/service-usage/docs/reference/rest/v1beta1/services/generateServiceIdentity)

## Example Usage ### Service Identity Basic

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		project, err := organizations.LookupProject(ctx, nil, nil)
		if err != nil {
			return err
		}
		hcSa, err := projects.NewServiceIdentity(ctx, "hcSa", &projects.ServiceIdentityArgs{
			Project: *pulumi.String(project.ProjectId),
			Service: pulumi.String("healthcare.googleapis.com"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = projects.NewIAMMember(ctx, "hcSaBqJobuser", &projects.IAMMemberArgs{
			Project: *pulumi.String(project.ProjectId),
			Role:    pulumi.String("roles/bigquery.jobUser"),
			Member: hcSa.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("serviceAccount:%v", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource does not support import.

func GetServiceIdentity

func GetServiceIdentity(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServiceIdentityState, opts ...pulumi.ResourceOption) (*ServiceIdentity, error)

GetServiceIdentity gets an existing ServiceIdentity 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 NewServiceIdentity

func NewServiceIdentity(ctx *pulumi.Context,
	name string, args *ServiceIdentityArgs, opts ...pulumi.ResourceOption) (*ServiceIdentity, error)

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

func (*ServiceIdentity) ElementType

func (*ServiceIdentity) ElementType() reflect.Type

func (*ServiceIdentity) ToOutput added in v6.65.1

func (*ServiceIdentity) ToServiceIdentityOutput

func (i *ServiceIdentity) ToServiceIdentityOutput() ServiceIdentityOutput

func (*ServiceIdentity) ToServiceIdentityOutputWithContext

func (i *ServiceIdentity) ToServiceIdentityOutputWithContext(ctx context.Context) ServiceIdentityOutput

type ServiceIdentityArgs

type ServiceIdentityArgs struct {
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The service to generate identity for.
	//
	// ***
	Service pulumi.StringInput
}

The set of arguments for constructing a ServiceIdentity resource.

func (ServiceIdentityArgs) ElementType

func (ServiceIdentityArgs) ElementType() reflect.Type

type ServiceIdentityArray

type ServiceIdentityArray []ServiceIdentityInput

func (ServiceIdentityArray) ElementType

func (ServiceIdentityArray) ElementType() reflect.Type

func (ServiceIdentityArray) ToOutput added in v6.65.1

func (ServiceIdentityArray) ToServiceIdentityArrayOutput

func (i ServiceIdentityArray) ToServiceIdentityArrayOutput() ServiceIdentityArrayOutput

func (ServiceIdentityArray) ToServiceIdentityArrayOutputWithContext

func (i ServiceIdentityArray) ToServiceIdentityArrayOutputWithContext(ctx context.Context) ServiceIdentityArrayOutput

type ServiceIdentityArrayInput

type ServiceIdentityArrayInput interface {
	pulumi.Input

	ToServiceIdentityArrayOutput() ServiceIdentityArrayOutput
	ToServiceIdentityArrayOutputWithContext(context.Context) ServiceIdentityArrayOutput
}

ServiceIdentityArrayInput is an input type that accepts ServiceIdentityArray and ServiceIdentityArrayOutput values. You can construct a concrete instance of `ServiceIdentityArrayInput` via:

ServiceIdentityArray{ ServiceIdentityArgs{...} }

type ServiceIdentityArrayOutput

type ServiceIdentityArrayOutput struct{ *pulumi.OutputState }

func (ServiceIdentityArrayOutput) ElementType

func (ServiceIdentityArrayOutput) ElementType() reflect.Type

func (ServiceIdentityArrayOutput) Index

func (ServiceIdentityArrayOutput) ToOutput added in v6.65.1

func (ServiceIdentityArrayOutput) ToServiceIdentityArrayOutput

func (o ServiceIdentityArrayOutput) ToServiceIdentityArrayOutput() ServiceIdentityArrayOutput

func (ServiceIdentityArrayOutput) ToServiceIdentityArrayOutputWithContext

func (o ServiceIdentityArrayOutput) ToServiceIdentityArrayOutputWithContext(ctx context.Context) ServiceIdentityArrayOutput

type ServiceIdentityInput

type ServiceIdentityInput interface {
	pulumi.Input

	ToServiceIdentityOutput() ServiceIdentityOutput
	ToServiceIdentityOutputWithContext(ctx context.Context) ServiceIdentityOutput
}

type ServiceIdentityMap

type ServiceIdentityMap map[string]ServiceIdentityInput

func (ServiceIdentityMap) ElementType

func (ServiceIdentityMap) ElementType() reflect.Type

func (ServiceIdentityMap) ToOutput added in v6.65.1

func (ServiceIdentityMap) ToServiceIdentityMapOutput

func (i ServiceIdentityMap) ToServiceIdentityMapOutput() ServiceIdentityMapOutput

func (ServiceIdentityMap) ToServiceIdentityMapOutputWithContext

func (i ServiceIdentityMap) ToServiceIdentityMapOutputWithContext(ctx context.Context) ServiceIdentityMapOutput

type ServiceIdentityMapInput

type ServiceIdentityMapInput interface {
	pulumi.Input

	ToServiceIdentityMapOutput() ServiceIdentityMapOutput
	ToServiceIdentityMapOutputWithContext(context.Context) ServiceIdentityMapOutput
}

ServiceIdentityMapInput is an input type that accepts ServiceIdentityMap and ServiceIdentityMapOutput values. You can construct a concrete instance of `ServiceIdentityMapInput` via:

ServiceIdentityMap{ "key": ServiceIdentityArgs{...} }

type ServiceIdentityMapOutput

type ServiceIdentityMapOutput struct{ *pulumi.OutputState }

func (ServiceIdentityMapOutput) ElementType

func (ServiceIdentityMapOutput) ElementType() reflect.Type

func (ServiceIdentityMapOutput) MapIndex

func (ServiceIdentityMapOutput) ToOutput added in v6.65.1

func (ServiceIdentityMapOutput) ToServiceIdentityMapOutput

func (o ServiceIdentityMapOutput) ToServiceIdentityMapOutput() ServiceIdentityMapOutput

func (ServiceIdentityMapOutput) ToServiceIdentityMapOutputWithContext

func (o ServiceIdentityMapOutput) ToServiceIdentityMapOutputWithContext(ctx context.Context) ServiceIdentityMapOutput

type ServiceIdentityOutput

type ServiceIdentityOutput struct{ *pulumi.OutputState }

func (ServiceIdentityOutput) ElementType

func (ServiceIdentityOutput) ElementType() reflect.Type

func (ServiceIdentityOutput) Email added in v6.23.0

The email address of the Google managed service account.

func (ServiceIdentityOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (ServiceIdentityOutput) Service added in v6.23.0

The service to generate identity for.

***

func (ServiceIdentityOutput) ToOutput added in v6.65.1

func (ServiceIdentityOutput) ToServiceIdentityOutput

func (o ServiceIdentityOutput) ToServiceIdentityOutput() ServiceIdentityOutput

func (ServiceIdentityOutput) ToServiceIdentityOutputWithContext

func (o ServiceIdentityOutput) ToServiceIdentityOutputWithContext(ctx context.Context) ServiceIdentityOutput

type ServiceIdentityState

type ServiceIdentityState struct {
	// The email address of the Google managed service account.
	Email pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The service to generate identity for.
	//
	// ***
	Service pulumi.StringPtrInput
}

func (ServiceIdentityState) ElementType

func (ServiceIdentityState) ElementType() reflect.Type

type ServiceInput

type ServiceInput interface {
	pulumi.Input

	ToServiceOutput() ServiceOutput
	ToServiceOutputWithContext(ctx context.Context) ServiceOutput
}

type ServiceMap

type ServiceMap map[string]ServiceInput

func (ServiceMap) ElementType

func (ServiceMap) ElementType() reflect.Type

func (ServiceMap) ToOutput added in v6.65.1

func (i ServiceMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Service]

func (ServiceMap) ToServiceMapOutput

func (i ServiceMap) ToServiceMapOutput() ServiceMapOutput

func (ServiceMap) ToServiceMapOutputWithContext

func (i ServiceMap) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceMapInput

type ServiceMapInput interface {
	pulumi.Input

	ToServiceMapOutput() ServiceMapOutput
	ToServiceMapOutputWithContext(context.Context) ServiceMapOutput
}

ServiceMapInput is an input type that accepts ServiceMap and ServiceMapOutput values. You can construct a concrete instance of `ServiceMapInput` via:

ServiceMap{ "key": ServiceArgs{...} }

type ServiceMapOutput

type ServiceMapOutput struct{ *pulumi.OutputState }

func (ServiceMapOutput) ElementType

func (ServiceMapOutput) ElementType() reflect.Type

func (ServiceMapOutput) MapIndex

func (ServiceMapOutput) ToOutput added in v6.65.1

func (ServiceMapOutput) ToServiceMapOutput

func (o ServiceMapOutput) ToServiceMapOutput() ServiceMapOutput

func (ServiceMapOutput) ToServiceMapOutputWithContext

func (o ServiceMapOutput) ToServiceMapOutputWithContext(ctx context.Context) ServiceMapOutput

type ServiceOutput

type ServiceOutput struct{ *pulumi.OutputState }

func (ServiceOutput) DisableDependentServices added in v6.23.0

func (o ServiceOutput) DisableDependentServices() pulumi.BoolPtrOutput

If `true`, services that are enabled and which depend on this service should also be disabled when this service is destroyed. If `false` or unset, an error will be generated if any enabled services depend on this service when destroying it.

func (ServiceOutput) DisableOnDestroy added in v6.23.0

func (o ServiceOutput) DisableOnDestroy() pulumi.BoolPtrOutput

If true, disable the service when the resource is destroyed. Defaults to true. May be useful in the event that a project is long-lived but the infrastructure running in that project changes frequently.

func (ServiceOutput) ElementType

func (ServiceOutput) ElementType() reflect.Type

func (ServiceOutput) Project added in v6.23.0

func (o ServiceOutput) Project() pulumi.StringOutput

The project ID. If not provided, the provider project is used.

func (ServiceOutput) Service added in v6.23.0

func (o ServiceOutput) Service() pulumi.StringOutput

The service to enable.

func (ServiceOutput) ToOutput added in v6.65.1

func (o ServiceOutput) ToOutput(ctx context.Context) pulumix.Output[*Service]

func (ServiceOutput) ToServiceOutput

func (o ServiceOutput) ToServiceOutput() ServiceOutput

func (ServiceOutput) ToServiceOutputWithContext

func (o ServiceOutput) ToServiceOutputWithContext(ctx context.Context) ServiceOutput

type ServiceState

type ServiceState struct {
	// If `true`, services that are enabled
	// and which depend on this service should also be disabled when this service is
	// destroyed. If `false` or unset, an error will be generated if any enabled
	// services depend on this service when destroying it.
	DisableDependentServices pulumi.BoolPtrInput
	// If true, disable the service when the resource is destroyed. Defaults to true. May be useful in the event that a project is long-lived but the infrastructure running in that project changes frequently.
	DisableOnDestroy pulumi.BoolPtrInput
	// The project ID. If not provided, the provider project
	// is used.
	Project pulumi.StringPtrInput
	// The service to enable.
	Service pulumi.StringPtrInput
}

func (ServiceState) ElementType

func (ServiceState) ElementType() reflect.Type

type UsageExportBucket

type UsageExportBucket struct {
	pulumi.CustomResourceState

	// The bucket to store reports in.
	BucketName pulumi.StringOutput `pulumi:"bucketName"`
	// A prefix for the reports, for instance, the project name.
	Prefix pulumi.StringPtrOutput `pulumi:"prefix"`
	// The project to set the export bucket on. If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
}

Allows creation and management of a Google Cloud Platform project.

Projects created with this resource must be associated with an Organization. See the [Organization documentation](https://cloud.google.com/resource-manager/docs/quickstarts) for more details.

The user or service account that is running this provider when creating a `organizations.Project` resource must have `roles/resourcemanager.projectCreator` on the specified organization. See the [Access Control for Organizations Using IAM](https://cloud.google.com/resource-manager/docs/access-control-org) doc for more information.

> This resource reads the specified billing account on every pulumi up and plan operation so you must have permissions on the specified billing account.

To get more information about projects, see:

* [API documentation](https://cloud.google.com/resource-manager/reference/rest/v1/projects) * How-to Guides

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := organizations.NewProject(ctx, "myProject", &organizations.ProjectArgs{
			OrgId:     pulumi.String("1234567"),
			ProjectId: pulumi.String("your-project-id"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To create a project under a specific folder

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		department1, err := organizations.NewFolder(ctx, "department1", &organizations.FolderArgs{
			DisplayName: pulumi.String("Department 1"),
			Parent:      pulumi.String("organizations/1234567"),
		})
		if err != nil {
			return err
		}
		_, err = organizations.NewProject(ctx, "myProject-in-a-folder", &organizations.ProjectArgs{
			ProjectId: pulumi.String("your-project-id"),
			FolderId:  department1.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Projects can be imported using the `project_id`, e.g.

```sh

$ pulumi import gcp:projects/usageExportBucket:UsageExportBucket my_project your-project-id

```

func GetUsageExportBucket

func GetUsageExportBucket(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UsageExportBucketState, opts ...pulumi.ResourceOption) (*UsageExportBucket, error)

GetUsageExportBucket gets an existing UsageExportBucket 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 NewUsageExportBucket

func NewUsageExportBucket(ctx *pulumi.Context,
	name string, args *UsageExportBucketArgs, opts ...pulumi.ResourceOption) (*UsageExportBucket, error)

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

func (*UsageExportBucket) ElementType

func (*UsageExportBucket) ElementType() reflect.Type

func (*UsageExportBucket) ToOutput added in v6.65.1

func (*UsageExportBucket) ToUsageExportBucketOutput

func (i *UsageExportBucket) ToUsageExportBucketOutput() UsageExportBucketOutput

func (*UsageExportBucket) ToUsageExportBucketOutputWithContext

func (i *UsageExportBucket) ToUsageExportBucketOutputWithContext(ctx context.Context) UsageExportBucketOutput

type UsageExportBucketArgs

type UsageExportBucketArgs struct {
	// The bucket to store reports in.
	BucketName pulumi.StringInput
	// A prefix for the reports, for instance, the project name.
	Prefix pulumi.StringPtrInput
	// The project to set the export bucket on. If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a UsageExportBucket resource.

func (UsageExportBucketArgs) ElementType

func (UsageExportBucketArgs) ElementType() reflect.Type

type UsageExportBucketArray

type UsageExportBucketArray []UsageExportBucketInput

func (UsageExportBucketArray) ElementType

func (UsageExportBucketArray) ElementType() reflect.Type

func (UsageExportBucketArray) ToOutput added in v6.65.1

func (UsageExportBucketArray) ToUsageExportBucketArrayOutput

func (i UsageExportBucketArray) ToUsageExportBucketArrayOutput() UsageExportBucketArrayOutput

func (UsageExportBucketArray) ToUsageExportBucketArrayOutputWithContext

func (i UsageExportBucketArray) ToUsageExportBucketArrayOutputWithContext(ctx context.Context) UsageExportBucketArrayOutput

type UsageExportBucketArrayInput

type UsageExportBucketArrayInput interface {
	pulumi.Input

	ToUsageExportBucketArrayOutput() UsageExportBucketArrayOutput
	ToUsageExportBucketArrayOutputWithContext(context.Context) UsageExportBucketArrayOutput
}

UsageExportBucketArrayInput is an input type that accepts UsageExportBucketArray and UsageExportBucketArrayOutput values. You can construct a concrete instance of `UsageExportBucketArrayInput` via:

UsageExportBucketArray{ UsageExportBucketArgs{...} }

type UsageExportBucketArrayOutput

type UsageExportBucketArrayOutput struct{ *pulumi.OutputState }

func (UsageExportBucketArrayOutput) ElementType

func (UsageExportBucketArrayOutput) Index

func (UsageExportBucketArrayOutput) ToOutput added in v6.65.1

func (UsageExportBucketArrayOutput) ToUsageExportBucketArrayOutput

func (o UsageExportBucketArrayOutput) ToUsageExportBucketArrayOutput() UsageExportBucketArrayOutput

func (UsageExportBucketArrayOutput) ToUsageExportBucketArrayOutputWithContext

func (o UsageExportBucketArrayOutput) ToUsageExportBucketArrayOutputWithContext(ctx context.Context) UsageExportBucketArrayOutput

type UsageExportBucketInput

type UsageExportBucketInput interface {
	pulumi.Input

	ToUsageExportBucketOutput() UsageExportBucketOutput
	ToUsageExportBucketOutputWithContext(ctx context.Context) UsageExportBucketOutput
}

type UsageExportBucketMap

type UsageExportBucketMap map[string]UsageExportBucketInput

func (UsageExportBucketMap) ElementType

func (UsageExportBucketMap) ElementType() reflect.Type

func (UsageExportBucketMap) ToOutput added in v6.65.1

func (UsageExportBucketMap) ToUsageExportBucketMapOutput

func (i UsageExportBucketMap) ToUsageExportBucketMapOutput() UsageExportBucketMapOutput

func (UsageExportBucketMap) ToUsageExportBucketMapOutputWithContext

func (i UsageExportBucketMap) ToUsageExportBucketMapOutputWithContext(ctx context.Context) UsageExportBucketMapOutput

type UsageExportBucketMapInput

type UsageExportBucketMapInput interface {
	pulumi.Input

	ToUsageExportBucketMapOutput() UsageExportBucketMapOutput
	ToUsageExportBucketMapOutputWithContext(context.Context) UsageExportBucketMapOutput
}

UsageExportBucketMapInput is an input type that accepts UsageExportBucketMap and UsageExportBucketMapOutput values. You can construct a concrete instance of `UsageExportBucketMapInput` via:

UsageExportBucketMap{ "key": UsageExportBucketArgs{...} }

type UsageExportBucketMapOutput

type UsageExportBucketMapOutput struct{ *pulumi.OutputState }

func (UsageExportBucketMapOutput) ElementType

func (UsageExportBucketMapOutput) ElementType() reflect.Type

func (UsageExportBucketMapOutput) MapIndex

func (UsageExportBucketMapOutput) ToOutput added in v6.65.1

func (UsageExportBucketMapOutput) ToUsageExportBucketMapOutput

func (o UsageExportBucketMapOutput) ToUsageExportBucketMapOutput() UsageExportBucketMapOutput

func (UsageExportBucketMapOutput) ToUsageExportBucketMapOutputWithContext

func (o UsageExportBucketMapOutput) ToUsageExportBucketMapOutputWithContext(ctx context.Context) UsageExportBucketMapOutput

type UsageExportBucketOutput

type UsageExportBucketOutput struct{ *pulumi.OutputState }

func (UsageExportBucketOutput) BucketName added in v6.23.0

The bucket to store reports in.

func (UsageExportBucketOutput) ElementType

func (UsageExportBucketOutput) ElementType() reflect.Type

func (UsageExportBucketOutput) Prefix added in v6.23.0

A prefix for the reports, for instance, the project name.

func (UsageExportBucketOutput) Project added in v6.23.0

The project to set the export bucket on. If it is not provided, the provider project is used.

func (UsageExportBucketOutput) ToOutput added in v6.65.1

func (UsageExportBucketOutput) ToUsageExportBucketOutput

func (o UsageExportBucketOutput) ToUsageExportBucketOutput() UsageExportBucketOutput

func (UsageExportBucketOutput) ToUsageExportBucketOutputWithContext

func (o UsageExportBucketOutput) ToUsageExportBucketOutputWithContext(ctx context.Context) UsageExportBucketOutput

type UsageExportBucketState

type UsageExportBucketState struct {
	// The bucket to store reports in.
	BucketName pulumi.StringPtrInput
	// A prefix for the reports, for instance, the project name.
	Prefix pulumi.StringPtrInput
	// The project to set the export bucket on. If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
}

func (UsageExportBucketState) ElementType

func (UsageExportBucketState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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