Documentation ¶
Index ¶
- type APIKey
- type APIKeyArgs
- type APIKeyArray
- type APIKeyArrayInput
- type APIKeyArrayOutput
- type APIKeyInput
- type APIKeyMap
- type APIKeyMapInput
- type APIKeyMapOutput
- type APIKeyOutput
- func (o APIKeyOutput) AccessKey() pulumi.StringOutput
- func (o APIKeyOutput) ApplicationId() pulumi.StringPtrOutput
- func (o APIKeyOutput) CreatedAt() pulumi.StringOutput
- func (o APIKeyOutput) CreationIp() pulumi.StringOutput
- func (o APIKeyOutput) DefaultProjectId() pulumi.StringOutput
- func (o APIKeyOutput) Description() pulumi.StringPtrOutput
- func (o APIKeyOutput) Editable() pulumi.BoolOutput
- func (APIKeyOutput) ElementType() reflect.Type
- func (o APIKeyOutput) ExpiresAt() pulumi.StringPtrOutput
- func (o APIKeyOutput) SecretKey() pulumi.StringOutput
- func (o APIKeyOutput) ToAPIKeyOutput() APIKeyOutput
- func (o APIKeyOutput) ToAPIKeyOutputWithContext(ctx context.Context) APIKeyOutput
- func (o APIKeyOutput) UpdatedAt() pulumi.StringOutput
- func (o APIKeyOutput) UserId() pulumi.StringPtrOutput
- type APIKeyState
- type Application
- type ApplicationArgs
- type ApplicationArray
- type ApplicationArrayInput
- type ApplicationArrayOutput
- func (ApplicationArrayOutput) ElementType() reflect.Type
- func (o ApplicationArrayOutput) Index(i pulumi.IntInput) ApplicationOutput
- func (o ApplicationArrayOutput) ToApplicationArrayOutput() ApplicationArrayOutput
- func (o ApplicationArrayOutput) ToApplicationArrayOutputWithContext(ctx context.Context) ApplicationArrayOutput
- type ApplicationInput
- type ApplicationMap
- type ApplicationMapInput
- type ApplicationMapOutput
- func (ApplicationMapOutput) ElementType() reflect.Type
- func (o ApplicationMapOutput) MapIndex(k pulumi.StringInput) ApplicationOutput
- func (o ApplicationMapOutput) ToApplicationMapOutput() ApplicationMapOutput
- func (o ApplicationMapOutput) ToApplicationMapOutputWithContext(ctx context.Context) ApplicationMapOutput
- type ApplicationOutput
- func (o ApplicationOutput) CreatedAt() pulumi.StringOutput
- func (o ApplicationOutput) Description() pulumi.StringPtrOutput
- func (o ApplicationOutput) Editable() pulumi.BoolOutput
- func (ApplicationOutput) ElementType() reflect.Type
- func (o ApplicationOutput) Name() pulumi.StringOutput
- func (o ApplicationOutput) OrganizationId() pulumi.StringOutput
- func (o ApplicationOutput) Tags() pulumi.StringArrayOutput
- func (o ApplicationOutput) ToApplicationOutput() ApplicationOutput
- func (o ApplicationOutput) ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput
- func (o ApplicationOutput) UpdatedAt() pulumi.StringOutput
- type ApplicationState
- type Group
- type GroupArgs
- type GroupArray
- type GroupArrayInput
- type GroupArrayOutput
- type GroupInput
- type GroupMap
- type GroupMapInput
- type GroupMapOutput
- type GroupMembership
- type GroupMembershipArgs
- type GroupMembershipArray
- type GroupMembershipArrayInput
- type GroupMembershipArrayOutput
- func (GroupMembershipArrayOutput) ElementType() reflect.Type
- func (o GroupMembershipArrayOutput) Index(i pulumi.IntInput) GroupMembershipOutput
- func (o GroupMembershipArrayOutput) ToGroupMembershipArrayOutput() GroupMembershipArrayOutput
- func (o GroupMembershipArrayOutput) ToGroupMembershipArrayOutputWithContext(ctx context.Context) GroupMembershipArrayOutput
- type GroupMembershipInput
- type GroupMembershipMap
- type GroupMembershipMapInput
- type GroupMembershipMapOutput
- func (GroupMembershipMapOutput) ElementType() reflect.Type
- func (o GroupMembershipMapOutput) MapIndex(k pulumi.StringInput) GroupMembershipOutput
- func (o GroupMembershipMapOutput) ToGroupMembershipMapOutput() GroupMembershipMapOutput
- func (o GroupMembershipMapOutput) ToGroupMembershipMapOutputWithContext(ctx context.Context) GroupMembershipMapOutput
- type GroupMembershipOutput
- func (o GroupMembershipOutput) ApplicationId() pulumi.StringPtrOutput
- func (GroupMembershipOutput) ElementType() reflect.Type
- func (o GroupMembershipOutput) GroupId() pulumi.StringOutput
- func (o GroupMembershipOutput) ToGroupMembershipOutput() GroupMembershipOutput
- func (o GroupMembershipOutput) ToGroupMembershipOutputWithContext(ctx context.Context) GroupMembershipOutput
- func (o GroupMembershipOutput) UserId() pulumi.StringPtrOutput
- type GroupMembershipState
- type GroupOutput
- func (o GroupOutput) ApplicationIds() pulumi.StringArrayOutput
- func (o GroupOutput) CreatedAt() pulumi.StringOutput
- func (o GroupOutput) Description() pulumi.StringPtrOutput
- func (GroupOutput) ElementType() reflect.Type
- func (o GroupOutput) ExternalMembership() pulumi.BoolPtrOutput
- func (o GroupOutput) Name() pulumi.StringOutput
- func (o GroupOutput) OrganizationId() pulumi.StringOutput
- func (o GroupOutput) Tags() pulumi.StringArrayOutput
- func (o GroupOutput) ToGroupOutput() GroupOutput
- func (o GroupOutput) ToGroupOutputWithContext(ctx context.Context) GroupOutput
- func (o GroupOutput) UpdatedAt() pulumi.StringOutput
- func (o GroupOutput) UserIds() pulumi.StringArrayOutput
- type GroupState
- type LookupApplicationArgs
- type LookupApplicationOutputArgs
- type LookupApplicationResult
- type LookupApplicationResultOutput
- func (o LookupApplicationResultOutput) ApplicationId() pulumi.StringPtrOutput
- func (o LookupApplicationResultOutput) CreatedAt() pulumi.StringOutput
- func (o LookupApplicationResultOutput) Description() pulumi.StringOutput
- func (o LookupApplicationResultOutput) Editable() pulumi.BoolOutput
- func (LookupApplicationResultOutput) ElementType() reflect.Type
- func (o LookupApplicationResultOutput) Id() pulumi.StringOutput
- func (o LookupApplicationResultOutput) Name() pulumi.StringPtrOutput
- func (o LookupApplicationResultOutput) OrganizationId() pulumi.StringPtrOutput
- func (o LookupApplicationResultOutput) Tags() pulumi.StringArrayOutput
- func (o LookupApplicationResultOutput) ToLookupApplicationResultOutput() LookupApplicationResultOutput
- func (o LookupApplicationResultOutput) ToLookupApplicationResultOutputWithContext(ctx context.Context) LookupApplicationResultOutput
- func (o LookupApplicationResultOutput) UpdatedAt() pulumi.StringOutput
- type LookupGroupArgs
- type LookupGroupOutputArgs
- type LookupGroupResult
- type LookupGroupResultOutput
- func (o LookupGroupResultOutput) ApplicationIds() pulumi.StringArrayOutput
- func (o LookupGroupResultOutput) CreatedAt() pulumi.StringOutput
- func (o LookupGroupResultOutput) Description() pulumi.StringOutput
- func (LookupGroupResultOutput) ElementType() reflect.Type
- func (o LookupGroupResultOutput) ExternalMembership() pulumi.BoolOutput
- func (o LookupGroupResultOutput) GroupId() pulumi.StringPtrOutput
- func (o LookupGroupResultOutput) Id() pulumi.StringOutput
- func (o LookupGroupResultOutput) Name() pulumi.StringPtrOutput
- func (o LookupGroupResultOutput) OrganizationId() pulumi.StringPtrOutput
- func (o LookupGroupResultOutput) Tags() pulumi.StringArrayOutput
- func (o LookupGroupResultOutput) ToLookupGroupResultOutput() LookupGroupResultOutput
- func (o LookupGroupResultOutput) ToLookupGroupResultOutputWithContext(ctx context.Context) LookupGroupResultOutput
- func (o LookupGroupResultOutput) UpdatedAt() pulumi.StringOutput
- func (o LookupGroupResultOutput) UserIds() pulumi.StringArrayOutput
- type LookupSSHKeyArgs
- type LookupSSHKeyOutputArgs
- type LookupSSHKeyResult
- type LookupSSHKeyResultOutput
- func (o LookupSSHKeyResultOutput) CreatedAt() pulumi.StringOutput
- func (o LookupSSHKeyResultOutput) Disabled() pulumi.BoolOutput
- func (LookupSSHKeyResultOutput) ElementType() reflect.Type
- func (o LookupSSHKeyResultOutput) Fingerprint() pulumi.StringOutput
- func (o LookupSSHKeyResultOutput) Id() pulumi.StringOutput
- func (o LookupSSHKeyResultOutput) Name() pulumi.StringPtrOutput
- func (o LookupSSHKeyResultOutput) OrganizationId() pulumi.StringOutput
- func (o LookupSSHKeyResultOutput) ProjectId() pulumi.StringPtrOutput
- func (o LookupSSHKeyResultOutput) PublicKey() pulumi.StringOutput
- func (o LookupSSHKeyResultOutput) SshKeyId() pulumi.StringPtrOutput
- func (o LookupSSHKeyResultOutput) ToLookupSSHKeyResultOutput() LookupSSHKeyResultOutput
- func (o LookupSSHKeyResultOutput) ToLookupSSHKeyResultOutputWithContext(ctx context.Context) LookupSSHKeyResultOutput
- func (o LookupSSHKeyResultOutput) UpdatedAt() pulumi.StringOutput
- type LookupUserArgs
- type LookupUserOutputArgs
- type LookupUserResult
- type LookupUserResultOutput
- func (LookupUserResultOutput) ElementType() reflect.Type
- func (o LookupUserResultOutput) Email() pulumi.StringPtrOutput
- func (o LookupUserResultOutput) Id() pulumi.StringOutput
- func (o LookupUserResultOutput) OrganizationId() pulumi.StringPtrOutput
- func (o LookupUserResultOutput) ToLookupUserResultOutput() LookupUserResultOutput
- func (o LookupUserResultOutput) ToLookupUserResultOutputWithContext(ctx context.Context) LookupUserResultOutput
- func (o LookupUserResultOutput) UserId() pulumi.StringPtrOutput
- type Policy
- type PolicyArgs
- type PolicyArray
- type PolicyArrayInput
- type PolicyArrayOutput
- type PolicyInput
- type PolicyMap
- type PolicyMapInput
- type PolicyMapOutput
- type PolicyOutput
- func (o PolicyOutput) ApplicationId() pulumi.StringPtrOutput
- func (o PolicyOutput) CreatedAt() pulumi.StringOutput
- func (o PolicyOutput) Description() pulumi.StringPtrOutput
- func (o PolicyOutput) Editable() pulumi.BoolOutput
- func (PolicyOutput) ElementType() reflect.Type
- func (o PolicyOutput) GroupId() pulumi.StringPtrOutput
- func (o PolicyOutput) Name() pulumi.StringOutput
- func (o PolicyOutput) NoPrincipal() pulumi.BoolPtrOutput
- func (o PolicyOutput) OrganizationId() pulumi.StringOutput
- func (o PolicyOutput) Rules() PolicyRuleArrayOutput
- func (o PolicyOutput) Tags() pulumi.StringArrayOutput
- func (o PolicyOutput) ToPolicyOutput() PolicyOutput
- func (o PolicyOutput) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
- func (o PolicyOutput) UpdatedAt() pulumi.StringOutput
- func (o PolicyOutput) UserId() pulumi.StringPtrOutput
- type PolicyRule
- type PolicyRuleArgs
- type PolicyRuleArray
- type PolicyRuleArrayInput
- type PolicyRuleArrayOutput
- func (PolicyRuleArrayOutput) ElementType() reflect.Type
- func (o PolicyRuleArrayOutput) Index(i pulumi.IntInput) PolicyRuleOutput
- func (o PolicyRuleArrayOutput) ToPolicyRuleArrayOutput() PolicyRuleArrayOutput
- func (o PolicyRuleArrayOutput) ToPolicyRuleArrayOutputWithContext(ctx context.Context) PolicyRuleArrayOutput
- type PolicyRuleInput
- type PolicyRuleOutput
- func (PolicyRuleOutput) ElementType() reflect.Type
- func (o PolicyRuleOutput) OrganizationId() pulumi.StringPtrOutput
- func (o PolicyRuleOutput) PermissionSetNames() pulumi.StringArrayOutput
- func (o PolicyRuleOutput) ProjectIds() pulumi.StringArrayOutput
- func (o PolicyRuleOutput) ToPolicyRuleOutput() PolicyRuleOutput
- func (o PolicyRuleOutput) ToPolicyRuleOutputWithContext(ctx context.Context) PolicyRuleOutput
- type PolicyState
- type SSHKey
- type SSHKeyArgs
- type SSHKeyArray
- type SSHKeyArrayInput
- type SSHKeyArrayOutput
- type SSHKeyInput
- type SSHKeyMap
- type SSHKeyMapInput
- type SSHKeyMapOutput
- type SSHKeyOutput
- func (o SSHKeyOutput) CreatedAt() pulumi.StringOutput
- func (o SSHKeyOutput) Disabled() pulumi.BoolPtrOutput
- func (SSHKeyOutput) ElementType() reflect.Type
- func (o SSHKeyOutput) Fingerprint() pulumi.StringOutput
- func (o SSHKeyOutput) Name() pulumi.StringOutput
- func (o SSHKeyOutput) OrganizationId() pulumi.StringOutput
- func (o SSHKeyOutput) ProjectId() pulumi.StringOutput
- func (o SSHKeyOutput) PublicKey() pulumi.StringOutput
- func (o SSHKeyOutput) ToSSHKeyOutput() SSHKeyOutput
- func (o SSHKeyOutput) ToSSHKeyOutputWithContext(ctx context.Context) SSHKeyOutput
- func (o SSHKeyOutput) UpdatedAt() pulumi.StringOutput
- type SSHKeyState
- type User
- type UserArgs
- type UserArray
- type UserArrayInput
- type UserArrayOutput
- type UserInput
- type UserMap
- type UserMapInput
- type UserMapOutput
- type UserOutput
- func (o UserOutput) AccountRootUserId() pulumi.StringOutput
- func (o UserOutput) CreatedAt() pulumi.StringOutput
- func (o UserOutput) Deletable() pulumi.BoolOutput
- func (UserOutput) ElementType() reflect.Type
- func (o UserOutput) Email() pulumi.StringOutput
- func (o UserOutput) LastLoginAt() pulumi.StringOutput
- func (o UserOutput) Mfa() pulumi.BoolOutput
- func (o UserOutput) OrganizationId() pulumi.StringOutput
- func (o UserOutput) Status() pulumi.StringOutput
- func (o UserOutput) ToUserOutput() UserOutput
- func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput
- func (o UserOutput) Type() pulumi.StringOutput
- func (o UserOutput) UpdatedAt() pulumi.StringOutput
- type UserState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIKey ¶
type APIKey struct { pulumi.CustomResourceState // The access key of the iam api key. AccessKey pulumi.StringOutput `pulumi:"accessKey"` // ID of the application attached to the api key. // Only one of the `applicationId` and `userId` should be specified. ApplicationId pulumi.StringPtrOutput `pulumi:"applicationId"` // The date and time of the creation of the iam api key. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // The IP Address of the device which created the API key. CreationIp pulumi.StringOutput `pulumi:"creationIp"` // The default project ID to use with object storage. DefaultProjectId pulumi.StringOutput `pulumi:"defaultProjectId"` // The description of the iam api key. Description pulumi.StringPtrOutput `pulumi:"description"` // Whether the iam api key is editable. Editable pulumi.BoolOutput `pulumi:"editable"` // The date and time of the expiration of the iam api key. Please note that in case of change, // the resource will be recreated. ExpiresAt pulumi.StringPtrOutput `pulumi:"expiresAt"` // The secret Key of the iam api key. SecretKey pulumi.StringOutput `pulumi:"secretKey"` // The date and time of the last update of the iam api key. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` // ID of the user attached to the api key. // Only one of the `applicationId` and `userId` should be specified. UserId pulumi.StringPtrOutput `pulumi:"userId"` }
Creates and manages Scaleway IAM API Keys. For more information, please check [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#api-keys-3665ae)
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.NewApplication(ctx, "ciCd", nil) if err != nil { return err } _, err = iam.NewAPIKey(ctx, "main", &iam.APIKeyArgs{ ApplicationId: pulumi.Any(scaleway_iam_application.Main.Id), Description: pulumi.String("a description"), }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
Api keys can be imported using the `{id}`, e.g.
bash
```sh $ pulumi import scaleway:iam/aPIKey:APIKey main 11111111111111111111 ```
func GetAPIKey ¶
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 ¶
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 ¶
func (*APIKey) ToAPIKeyOutput ¶
func (i *APIKey) ToAPIKeyOutput() APIKeyOutput
func (*APIKey) ToAPIKeyOutputWithContext ¶
func (i *APIKey) ToAPIKeyOutputWithContext(ctx context.Context) APIKeyOutput
type APIKeyArgs ¶
type APIKeyArgs struct { // ID of the application attached to the api key. // Only one of the `applicationId` and `userId` should be specified. ApplicationId pulumi.StringPtrInput // The default project ID to use with object storage. DefaultProjectId pulumi.StringPtrInput // The description of the iam api key. Description pulumi.StringPtrInput // The date and time of the expiration of the iam api key. Please note that in case of change, // the resource will be recreated. ExpiresAt pulumi.StringPtrInput // ID of the user attached to the api key. // Only one of the `applicationId` and `userId` should be specified. UserId pulumi.StringPtrInput }
The set of arguments for constructing a APIKey resource.
func (APIKeyArgs) ElementType ¶
func (APIKeyArgs) ElementType() reflect.Type
type APIKeyArray ¶
type APIKeyArray []APIKeyInput
func (APIKeyArray) ElementType ¶
func (APIKeyArray) ElementType() reflect.Type
func (APIKeyArray) ToAPIKeyArrayOutput ¶
func (i APIKeyArray) ToAPIKeyArrayOutput() APIKeyArrayOutput
func (APIKeyArray) ToAPIKeyArrayOutputWithContext ¶
func (i APIKeyArray) ToAPIKeyArrayOutputWithContext(ctx context.Context) APIKeyArrayOutput
type APIKeyArrayInput ¶
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 ¶
type APIKeyArrayOutput struct{ *pulumi.OutputState }
func (APIKeyArrayOutput) ElementType ¶
func (APIKeyArrayOutput) ElementType() reflect.Type
func (APIKeyArrayOutput) Index ¶
func (o APIKeyArrayOutput) Index(i pulumi.IntInput) APIKeyOutput
func (APIKeyArrayOutput) ToAPIKeyArrayOutput ¶
func (o APIKeyArrayOutput) ToAPIKeyArrayOutput() APIKeyArrayOutput
func (APIKeyArrayOutput) ToAPIKeyArrayOutputWithContext ¶
func (o APIKeyArrayOutput) ToAPIKeyArrayOutputWithContext(ctx context.Context) APIKeyArrayOutput
type APIKeyInput ¶
type APIKeyInput interface { pulumi.Input ToAPIKeyOutput() APIKeyOutput ToAPIKeyOutputWithContext(ctx context.Context) APIKeyOutput }
type APIKeyMap ¶
type APIKeyMap map[string]APIKeyInput
func (APIKeyMap) ElementType ¶
func (APIKeyMap) ToAPIKeyMapOutput ¶
func (i APIKeyMap) ToAPIKeyMapOutput() APIKeyMapOutput
func (APIKeyMap) ToAPIKeyMapOutputWithContext ¶
func (i APIKeyMap) ToAPIKeyMapOutputWithContext(ctx context.Context) APIKeyMapOutput
type APIKeyMapInput ¶
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 ¶
type APIKeyMapOutput struct{ *pulumi.OutputState }
func (APIKeyMapOutput) ElementType ¶
func (APIKeyMapOutput) ElementType() reflect.Type
func (APIKeyMapOutput) MapIndex ¶
func (o APIKeyMapOutput) MapIndex(k pulumi.StringInput) APIKeyOutput
func (APIKeyMapOutput) ToAPIKeyMapOutput ¶
func (o APIKeyMapOutput) ToAPIKeyMapOutput() APIKeyMapOutput
func (APIKeyMapOutput) ToAPIKeyMapOutputWithContext ¶
func (o APIKeyMapOutput) ToAPIKeyMapOutputWithContext(ctx context.Context) APIKeyMapOutput
type APIKeyOutput ¶
type APIKeyOutput struct{ *pulumi.OutputState }
func (APIKeyOutput) AccessKey ¶
func (o APIKeyOutput) AccessKey() pulumi.StringOutput
The access key of the iam api key.
func (APIKeyOutput) ApplicationId ¶
func (o APIKeyOutput) ApplicationId() pulumi.StringPtrOutput
ID of the application attached to the api key. Only one of the `applicationId` and `userId` should be specified.
func (APIKeyOutput) CreatedAt ¶
func (o APIKeyOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the iam api key.
func (APIKeyOutput) CreationIp ¶
func (o APIKeyOutput) CreationIp() pulumi.StringOutput
The IP Address of the device which created the API key.
func (APIKeyOutput) DefaultProjectId ¶
func (o APIKeyOutput) DefaultProjectId() pulumi.StringOutput
The default project ID to use with object storage.
func (APIKeyOutput) Description ¶
func (o APIKeyOutput) Description() pulumi.StringPtrOutput
The description of the iam api key.
func (APIKeyOutput) Editable ¶
func (o APIKeyOutput) Editable() pulumi.BoolOutput
Whether the iam api key is editable.
func (APIKeyOutput) ElementType ¶
func (APIKeyOutput) ElementType() reflect.Type
func (APIKeyOutput) ExpiresAt ¶
func (o APIKeyOutput) ExpiresAt() pulumi.StringPtrOutput
The date and time of the expiration of the iam api key. Please note that in case of change, the resource will be recreated.
func (APIKeyOutput) SecretKey ¶
func (o APIKeyOutput) SecretKey() pulumi.StringOutput
The secret Key of the iam api key.
func (APIKeyOutput) ToAPIKeyOutput ¶
func (o APIKeyOutput) ToAPIKeyOutput() APIKeyOutput
func (APIKeyOutput) ToAPIKeyOutputWithContext ¶
func (o APIKeyOutput) ToAPIKeyOutputWithContext(ctx context.Context) APIKeyOutput
func (APIKeyOutput) UpdatedAt ¶
func (o APIKeyOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the iam api key.
func (APIKeyOutput) UserId ¶
func (o APIKeyOutput) UserId() pulumi.StringPtrOutput
ID of the user attached to the api key. Only one of the `applicationId` and `userId` should be specified.
type APIKeyState ¶
type APIKeyState struct { // The access key of the iam api key. AccessKey pulumi.StringPtrInput // ID of the application attached to the api key. // Only one of the `applicationId` and `userId` should be specified. ApplicationId pulumi.StringPtrInput // The date and time of the creation of the iam api key. CreatedAt pulumi.StringPtrInput // The IP Address of the device which created the API key. CreationIp pulumi.StringPtrInput // The default project ID to use with object storage. DefaultProjectId pulumi.StringPtrInput // The description of the iam api key. Description pulumi.StringPtrInput // Whether the iam api key is editable. Editable pulumi.BoolPtrInput // The date and time of the expiration of the iam api key. Please note that in case of change, // the resource will be recreated. ExpiresAt pulumi.StringPtrInput // The secret Key of the iam api key. SecretKey pulumi.StringPtrInput // The date and time of the last update of the iam api key. UpdatedAt pulumi.StringPtrInput // ID of the user attached to the api key. // Only one of the `applicationId` and `userId` should be specified. UserId pulumi.StringPtrInput }
func (APIKeyState) ElementType ¶
func (APIKeyState) ElementType() reflect.Type
type Application ¶
type Application struct { pulumi.CustomResourceState // The date and time of the creation of the application. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // The description of the iam application. Description pulumi.StringPtrOutput `pulumi:"description"` // Whether the application is editable. Editable pulumi.BoolOutput `pulumi:"editable"` // The name of the iam application. Name pulumi.StringOutput `pulumi:"name"` // `organizationId`) The ID of the organization the application is associated with. OrganizationId pulumi.StringOutput `pulumi:"organizationId"` // The tags associated with the application. Tags pulumi.StringArrayOutput `pulumi:"tags"` // The date and time of the last update of the application. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` }
Creates and manages Scaleway IAM Applications. For more information, see [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#applications-83ce5e).
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.NewApplication(ctx, "main", &iam.ApplicationArgs{ Description: pulumi.String("a description"), }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
Applications can be imported using the `{id}`, e.g.
bash
```sh $ pulumi import scaleway:iam/application:Application main 11111111-1111-1111-1111-111111111111 ```
func GetApplication ¶
func GetApplication(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ApplicationState, opts ...pulumi.ResourceOption) (*Application, error)
GetApplication gets an existing Application 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 NewApplication ¶
func NewApplication(ctx *pulumi.Context, name string, args *ApplicationArgs, opts ...pulumi.ResourceOption) (*Application, error)
NewApplication registers a new resource with the given unique name, arguments, and options.
func (*Application) ElementType ¶
func (*Application) ElementType() reflect.Type
func (*Application) ToApplicationOutput ¶
func (i *Application) ToApplicationOutput() ApplicationOutput
func (*Application) ToApplicationOutputWithContext ¶
func (i *Application) ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput
type ApplicationArgs ¶
type ApplicationArgs struct { // The description of the iam application. Description pulumi.StringPtrInput // The name of the iam application. Name pulumi.StringPtrInput // `organizationId`) The ID of the organization the application is associated with. OrganizationId pulumi.StringPtrInput // The tags associated with the application. Tags pulumi.StringArrayInput }
The set of arguments for constructing a Application resource.
func (ApplicationArgs) ElementType ¶
func (ApplicationArgs) ElementType() reflect.Type
type ApplicationArray ¶
type ApplicationArray []ApplicationInput
func (ApplicationArray) ElementType ¶
func (ApplicationArray) ElementType() reflect.Type
func (ApplicationArray) ToApplicationArrayOutput ¶
func (i ApplicationArray) ToApplicationArrayOutput() ApplicationArrayOutput
func (ApplicationArray) ToApplicationArrayOutputWithContext ¶
func (i ApplicationArray) ToApplicationArrayOutputWithContext(ctx context.Context) ApplicationArrayOutput
type ApplicationArrayInput ¶
type ApplicationArrayInput interface { pulumi.Input ToApplicationArrayOutput() ApplicationArrayOutput ToApplicationArrayOutputWithContext(context.Context) ApplicationArrayOutput }
ApplicationArrayInput is an input type that accepts ApplicationArray and ApplicationArrayOutput values. You can construct a concrete instance of `ApplicationArrayInput` via:
ApplicationArray{ ApplicationArgs{...} }
type ApplicationArrayOutput ¶
type ApplicationArrayOutput struct{ *pulumi.OutputState }
func (ApplicationArrayOutput) ElementType ¶
func (ApplicationArrayOutput) ElementType() reflect.Type
func (ApplicationArrayOutput) Index ¶
func (o ApplicationArrayOutput) Index(i pulumi.IntInput) ApplicationOutput
func (ApplicationArrayOutput) ToApplicationArrayOutput ¶
func (o ApplicationArrayOutput) ToApplicationArrayOutput() ApplicationArrayOutput
func (ApplicationArrayOutput) ToApplicationArrayOutputWithContext ¶
func (o ApplicationArrayOutput) ToApplicationArrayOutputWithContext(ctx context.Context) ApplicationArrayOutput
type ApplicationInput ¶
type ApplicationInput interface { pulumi.Input ToApplicationOutput() ApplicationOutput ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput }
type ApplicationMap ¶
type ApplicationMap map[string]ApplicationInput
func (ApplicationMap) ElementType ¶
func (ApplicationMap) ElementType() reflect.Type
func (ApplicationMap) ToApplicationMapOutput ¶
func (i ApplicationMap) ToApplicationMapOutput() ApplicationMapOutput
func (ApplicationMap) ToApplicationMapOutputWithContext ¶
func (i ApplicationMap) ToApplicationMapOutputWithContext(ctx context.Context) ApplicationMapOutput
type ApplicationMapInput ¶
type ApplicationMapInput interface { pulumi.Input ToApplicationMapOutput() ApplicationMapOutput ToApplicationMapOutputWithContext(context.Context) ApplicationMapOutput }
ApplicationMapInput is an input type that accepts ApplicationMap and ApplicationMapOutput values. You can construct a concrete instance of `ApplicationMapInput` via:
ApplicationMap{ "key": ApplicationArgs{...} }
type ApplicationMapOutput ¶
type ApplicationMapOutput struct{ *pulumi.OutputState }
func (ApplicationMapOutput) ElementType ¶
func (ApplicationMapOutput) ElementType() reflect.Type
func (ApplicationMapOutput) MapIndex ¶
func (o ApplicationMapOutput) MapIndex(k pulumi.StringInput) ApplicationOutput
func (ApplicationMapOutput) ToApplicationMapOutput ¶
func (o ApplicationMapOutput) ToApplicationMapOutput() ApplicationMapOutput
func (ApplicationMapOutput) ToApplicationMapOutputWithContext ¶
func (o ApplicationMapOutput) ToApplicationMapOutputWithContext(ctx context.Context) ApplicationMapOutput
type ApplicationOutput ¶
type ApplicationOutput struct{ *pulumi.OutputState }
func (ApplicationOutput) CreatedAt ¶
func (o ApplicationOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the application.
func (ApplicationOutput) Description ¶
func (o ApplicationOutput) Description() pulumi.StringPtrOutput
The description of the iam application.
func (ApplicationOutput) Editable ¶
func (o ApplicationOutput) Editable() pulumi.BoolOutput
Whether the application is editable.
func (ApplicationOutput) ElementType ¶
func (ApplicationOutput) ElementType() reflect.Type
func (ApplicationOutput) Name ¶
func (o ApplicationOutput) Name() pulumi.StringOutput
The name of the iam application.
func (ApplicationOutput) OrganizationId ¶
func (o ApplicationOutput) OrganizationId() pulumi.StringOutput
`organizationId`) The ID of the organization the application is associated with.
func (ApplicationOutput) Tags ¶
func (o ApplicationOutput) Tags() pulumi.StringArrayOutput
The tags associated with the application.
func (ApplicationOutput) ToApplicationOutput ¶
func (o ApplicationOutput) ToApplicationOutput() ApplicationOutput
func (ApplicationOutput) ToApplicationOutputWithContext ¶
func (o ApplicationOutput) ToApplicationOutputWithContext(ctx context.Context) ApplicationOutput
func (ApplicationOutput) UpdatedAt ¶
func (o ApplicationOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the application.
type ApplicationState ¶
type ApplicationState struct { // The date and time of the creation of the application. CreatedAt pulumi.StringPtrInput // The description of the iam application. Description pulumi.StringPtrInput // Whether the application is editable. Editable pulumi.BoolPtrInput // The name of the iam application. Name pulumi.StringPtrInput // `organizationId`) The ID of the organization the application is associated with. OrganizationId pulumi.StringPtrInput // The tags associated with the application. Tags pulumi.StringArrayInput // The date and time of the last update of the application. UpdatedAt pulumi.StringPtrInput }
func (ApplicationState) ElementType ¶
func (ApplicationState) ElementType() reflect.Type
type Group ¶
type Group struct { pulumi.CustomResourceState // The list of IDs of the applications attached to the group. ApplicationIds pulumi.StringArrayOutput `pulumi:"applicationIds"` // The date and time of the creation of the group CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // The description of the IAM group. Description pulumi.StringPtrOutput `pulumi:"description"` // Manage membership externally. This make the resource ignore userIds and application_ids. Should be used when using iam_group_membership ExternalMembership pulumi.BoolPtrOutput `pulumi:"externalMembership"` // The name of the IAM group. Name pulumi.StringOutput `pulumi:"name"` // `organizationId`) The ID of the organization the group is associated with. OrganizationId pulumi.StringOutput `pulumi:"organizationId"` // The tags associated with the group. Tags pulumi.StringArrayOutput `pulumi:"tags"` // The date and time of the last update of the group UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` // The list of IDs of the users attached to the group. UserIds pulumi.StringArrayOutput `pulumi:"userIds"` }
Creates and manages Scaleway IAM Groups. For more information, see [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#groups-f592eb).
## Example Usage
### Basic
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.NewGroup(ctx, "basic", &iam.GroupArgs{ ApplicationIds: pulumi.StringArray{}, Description: pulumi.String("basic description"), UserIds: pulumi.StringArray{}, }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
### With applications
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { app, err := iam.NewApplication(ctx, "app", nil) if err != nil { return err } _, err = iam.NewGroup(ctx, "withApp", &iam.GroupArgs{ ApplicationIds: pulumi.StringArray{ app.ID(), }, UserIds: pulumi.StringArray{}, }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
IAM groups can be imported using the `{id}`, e.g.
bash
```sh $ pulumi import scaleway:iam/group:Group basic 11111111-1111-1111-1111-111111111111 ```
func GetGroup ¶
func GetGroup(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GroupState, opts ...pulumi.ResourceOption) (*Group, error)
GetGroup gets an existing Group 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 NewGroup ¶
func NewGroup(ctx *pulumi.Context, name string, args *GroupArgs, opts ...pulumi.ResourceOption) (*Group, error)
NewGroup registers a new resource with the given unique name, arguments, and options.
func (*Group) ElementType ¶
func (*Group) ToGroupOutput ¶
func (i *Group) ToGroupOutput() GroupOutput
func (*Group) ToGroupOutputWithContext ¶
func (i *Group) ToGroupOutputWithContext(ctx context.Context) GroupOutput
type GroupArgs ¶
type GroupArgs struct { // The list of IDs of the applications attached to the group. ApplicationIds pulumi.StringArrayInput // The description of the IAM group. Description pulumi.StringPtrInput // Manage membership externally. This make the resource ignore userIds and application_ids. Should be used when using iam_group_membership ExternalMembership pulumi.BoolPtrInput // The name of the IAM group. Name pulumi.StringPtrInput // `organizationId`) The ID of the organization the group is associated with. OrganizationId pulumi.StringPtrInput // The tags associated with the group. Tags pulumi.StringArrayInput // The list of IDs of the users attached to the group. UserIds pulumi.StringArrayInput }
The set of arguments for constructing a Group resource.
func (GroupArgs) ElementType ¶
type GroupArray ¶
type GroupArray []GroupInput
func (GroupArray) ElementType ¶
func (GroupArray) ElementType() reflect.Type
func (GroupArray) ToGroupArrayOutput ¶
func (i GroupArray) ToGroupArrayOutput() GroupArrayOutput
func (GroupArray) ToGroupArrayOutputWithContext ¶
func (i GroupArray) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput
type GroupArrayInput ¶
type GroupArrayInput interface { pulumi.Input ToGroupArrayOutput() GroupArrayOutput ToGroupArrayOutputWithContext(context.Context) GroupArrayOutput }
GroupArrayInput is an input type that accepts GroupArray and GroupArrayOutput values. You can construct a concrete instance of `GroupArrayInput` via:
GroupArray{ GroupArgs{...} }
type GroupArrayOutput ¶
type GroupArrayOutput struct{ *pulumi.OutputState }
func (GroupArrayOutput) ElementType ¶
func (GroupArrayOutput) ElementType() reflect.Type
func (GroupArrayOutput) Index ¶
func (o GroupArrayOutput) Index(i pulumi.IntInput) GroupOutput
func (GroupArrayOutput) ToGroupArrayOutput ¶
func (o GroupArrayOutput) ToGroupArrayOutput() GroupArrayOutput
func (GroupArrayOutput) ToGroupArrayOutputWithContext ¶
func (o GroupArrayOutput) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput
type GroupInput ¶
type GroupInput interface { pulumi.Input ToGroupOutput() GroupOutput ToGroupOutputWithContext(ctx context.Context) GroupOutput }
type GroupMap ¶
type GroupMap map[string]GroupInput
func (GroupMap) ElementType ¶
func (GroupMap) ToGroupMapOutput ¶
func (i GroupMap) ToGroupMapOutput() GroupMapOutput
func (GroupMap) ToGroupMapOutputWithContext ¶
func (i GroupMap) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput
type GroupMapInput ¶
type GroupMapInput interface { pulumi.Input ToGroupMapOutput() GroupMapOutput ToGroupMapOutputWithContext(context.Context) GroupMapOutput }
GroupMapInput is an input type that accepts GroupMap and GroupMapOutput values. You can construct a concrete instance of `GroupMapInput` via:
GroupMap{ "key": GroupArgs{...} }
type GroupMapOutput ¶
type GroupMapOutput struct{ *pulumi.OutputState }
func (GroupMapOutput) ElementType ¶
func (GroupMapOutput) ElementType() reflect.Type
func (GroupMapOutput) MapIndex ¶
func (o GroupMapOutput) MapIndex(k pulumi.StringInput) GroupOutput
func (GroupMapOutput) ToGroupMapOutput ¶
func (o GroupMapOutput) ToGroupMapOutput() GroupMapOutput
func (GroupMapOutput) ToGroupMapOutputWithContext ¶
func (o GroupMapOutput) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput
type GroupMembership ¶
type GroupMembership struct { pulumi.CustomResourceState // The ID of the application that will be added to the group. ApplicationId pulumi.StringPtrOutput `pulumi:"applicationId"` // ID of the group to add members to. GroupId pulumi.StringOutput `pulumi:"groupId"` // The ID of the user that will be added to the group // // - > Only one of `applicationId` or `userId` must be specified UserId pulumi.StringPtrOutput `pulumi:"userId"` }
Add members to an IAM group. For more information, see [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#groups-f592eb).
## Example Usage
### Application Membership
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { group, err := iam.NewGroup(ctx, "group", &iam.GroupArgs{ ExternalMembership: pulumi.Bool(true), }) if err != nil { return err } app, err := iam.NewApplication(ctx, "app", nil) if err != nil { return err } _, err = iam.NewGroupMembership(ctx, "member", &iam.GroupMembershipArgs{ GroupId: group.ID(), ApplicationId: app.ID(), }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
IAM group memberships can be imported using two format:
- For user: `{group_id}/user/{user_id}`
- For application: `{group_id}/app/{application_id}`
bash
```sh $ pulumi import scaleway:iam/groupMembership:GroupMembership app 11111111-1111-1111-1111-111111111111/app/11111111-1111-1111-1111-111111111111 ```
func GetGroupMembership ¶
func GetGroupMembership(ctx *pulumi.Context, name string, id pulumi.IDInput, state *GroupMembershipState, opts ...pulumi.ResourceOption) (*GroupMembership, error)
GetGroupMembership gets an existing GroupMembership 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 NewGroupMembership ¶
func NewGroupMembership(ctx *pulumi.Context, name string, args *GroupMembershipArgs, opts ...pulumi.ResourceOption) (*GroupMembership, error)
NewGroupMembership registers a new resource with the given unique name, arguments, and options.
func (*GroupMembership) ElementType ¶
func (*GroupMembership) ElementType() reflect.Type
func (*GroupMembership) ToGroupMembershipOutput ¶
func (i *GroupMembership) ToGroupMembershipOutput() GroupMembershipOutput
func (*GroupMembership) ToGroupMembershipOutputWithContext ¶
func (i *GroupMembership) ToGroupMembershipOutputWithContext(ctx context.Context) GroupMembershipOutput
type GroupMembershipArgs ¶
type GroupMembershipArgs struct { // The ID of the application that will be added to the group. ApplicationId pulumi.StringPtrInput // ID of the group to add members to. GroupId pulumi.StringInput // The ID of the user that will be added to the group // // - > Only one of `applicationId` or `userId` must be specified UserId pulumi.StringPtrInput }
The set of arguments for constructing a GroupMembership resource.
func (GroupMembershipArgs) ElementType ¶
func (GroupMembershipArgs) ElementType() reflect.Type
type GroupMembershipArray ¶
type GroupMembershipArray []GroupMembershipInput
func (GroupMembershipArray) ElementType ¶
func (GroupMembershipArray) ElementType() reflect.Type
func (GroupMembershipArray) ToGroupMembershipArrayOutput ¶
func (i GroupMembershipArray) ToGroupMembershipArrayOutput() GroupMembershipArrayOutput
func (GroupMembershipArray) ToGroupMembershipArrayOutputWithContext ¶
func (i GroupMembershipArray) ToGroupMembershipArrayOutputWithContext(ctx context.Context) GroupMembershipArrayOutput
type GroupMembershipArrayInput ¶
type GroupMembershipArrayInput interface { pulumi.Input ToGroupMembershipArrayOutput() GroupMembershipArrayOutput ToGroupMembershipArrayOutputWithContext(context.Context) GroupMembershipArrayOutput }
GroupMembershipArrayInput is an input type that accepts GroupMembershipArray and GroupMembershipArrayOutput values. You can construct a concrete instance of `GroupMembershipArrayInput` via:
GroupMembershipArray{ GroupMembershipArgs{...} }
type GroupMembershipArrayOutput ¶
type GroupMembershipArrayOutput struct{ *pulumi.OutputState }
func (GroupMembershipArrayOutput) ElementType ¶
func (GroupMembershipArrayOutput) ElementType() reflect.Type
func (GroupMembershipArrayOutput) Index ¶
func (o GroupMembershipArrayOutput) Index(i pulumi.IntInput) GroupMembershipOutput
func (GroupMembershipArrayOutput) ToGroupMembershipArrayOutput ¶
func (o GroupMembershipArrayOutput) ToGroupMembershipArrayOutput() GroupMembershipArrayOutput
func (GroupMembershipArrayOutput) ToGroupMembershipArrayOutputWithContext ¶
func (o GroupMembershipArrayOutput) ToGroupMembershipArrayOutputWithContext(ctx context.Context) GroupMembershipArrayOutput
type GroupMembershipInput ¶
type GroupMembershipInput interface { pulumi.Input ToGroupMembershipOutput() GroupMembershipOutput ToGroupMembershipOutputWithContext(ctx context.Context) GroupMembershipOutput }
type GroupMembershipMap ¶
type GroupMembershipMap map[string]GroupMembershipInput
func (GroupMembershipMap) ElementType ¶
func (GroupMembershipMap) ElementType() reflect.Type
func (GroupMembershipMap) ToGroupMembershipMapOutput ¶
func (i GroupMembershipMap) ToGroupMembershipMapOutput() GroupMembershipMapOutput
func (GroupMembershipMap) ToGroupMembershipMapOutputWithContext ¶
func (i GroupMembershipMap) ToGroupMembershipMapOutputWithContext(ctx context.Context) GroupMembershipMapOutput
type GroupMembershipMapInput ¶
type GroupMembershipMapInput interface { pulumi.Input ToGroupMembershipMapOutput() GroupMembershipMapOutput ToGroupMembershipMapOutputWithContext(context.Context) GroupMembershipMapOutput }
GroupMembershipMapInput is an input type that accepts GroupMembershipMap and GroupMembershipMapOutput values. You can construct a concrete instance of `GroupMembershipMapInput` via:
GroupMembershipMap{ "key": GroupMembershipArgs{...} }
type GroupMembershipMapOutput ¶
type GroupMembershipMapOutput struct{ *pulumi.OutputState }
func (GroupMembershipMapOutput) ElementType ¶
func (GroupMembershipMapOutput) ElementType() reflect.Type
func (GroupMembershipMapOutput) MapIndex ¶
func (o GroupMembershipMapOutput) MapIndex(k pulumi.StringInput) GroupMembershipOutput
func (GroupMembershipMapOutput) ToGroupMembershipMapOutput ¶
func (o GroupMembershipMapOutput) ToGroupMembershipMapOutput() GroupMembershipMapOutput
func (GroupMembershipMapOutput) ToGroupMembershipMapOutputWithContext ¶
func (o GroupMembershipMapOutput) ToGroupMembershipMapOutputWithContext(ctx context.Context) GroupMembershipMapOutput
type GroupMembershipOutput ¶
type GroupMembershipOutput struct{ *pulumi.OutputState }
func (GroupMembershipOutput) ApplicationId ¶
func (o GroupMembershipOutput) ApplicationId() pulumi.StringPtrOutput
The ID of the application that will be added to the group.
func (GroupMembershipOutput) ElementType ¶
func (GroupMembershipOutput) ElementType() reflect.Type
func (GroupMembershipOutput) GroupId ¶
func (o GroupMembershipOutput) GroupId() pulumi.StringOutput
ID of the group to add members to.
func (GroupMembershipOutput) ToGroupMembershipOutput ¶
func (o GroupMembershipOutput) ToGroupMembershipOutput() GroupMembershipOutput
func (GroupMembershipOutput) ToGroupMembershipOutputWithContext ¶
func (o GroupMembershipOutput) ToGroupMembershipOutputWithContext(ctx context.Context) GroupMembershipOutput
func (GroupMembershipOutput) UserId ¶
func (o GroupMembershipOutput) UserId() pulumi.StringPtrOutput
The ID of the user that will be added to the group
- > Only one of `applicationId` or `userId` must be specified
type GroupMembershipState ¶
type GroupMembershipState struct { // The ID of the application that will be added to the group. ApplicationId pulumi.StringPtrInput // ID of the group to add members to. GroupId pulumi.StringPtrInput // The ID of the user that will be added to the group // // - > Only one of `applicationId` or `userId` must be specified UserId pulumi.StringPtrInput }
func (GroupMembershipState) ElementType ¶
func (GroupMembershipState) ElementType() reflect.Type
type GroupOutput ¶
type GroupOutput struct{ *pulumi.OutputState }
func (GroupOutput) ApplicationIds ¶
func (o GroupOutput) ApplicationIds() pulumi.StringArrayOutput
The list of IDs of the applications attached to the group.
func (GroupOutput) CreatedAt ¶
func (o GroupOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the group
func (GroupOutput) Description ¶
func (o GroupOutput) Description() pulumi.StringPtrOutput
The description of the IAM group.
func (GroupOutput) ElementType ¶
func (GroupOutput) ElementType() reflect.Type
func (GroupOutput) ExternalMembership ¶
func (o GroupOutput) ExternalMembership() pulumi.BoolPtrOutput
Manage membership externally. This make the resource ignore userIds and application_ids. Should be used when using iam_group_membership
func (GroupOutput) Name ¶
func (o GroupOutput) Name() pulumi.StringOutput
The name of the IAM group.
func (GroupOutput) OrganizationId ¶
func (o GroupOutput) OrganizationId() pulumi.StringOutput
`organizationId`) The ID of the organization the group is associated with.
func (GroupOutput) Tags ¶
func (o GroupOutput) Tags() pulumi.StringArrayOutput
The tags associated with the group.
func (GroupOutput) ToGroupOutput ¶
func (o GroupOutput) ToGroupOutput() GroupOutput
func (GroupOutput) ToGroupOutputWithContext ¶
func (o GroupOutput) ToGroupOutputWithContext(ctx context.Context) GroupOutput
func (GroupOutput) UpdatedAt ¶
func (o GroupOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the group
func (GroupOutput) UserIds ¶
func (o GroupOutput) UserIds() pulumi.StringArrayOutput
The list of IDs of the users attached to the group.
type GroupState ¶
type GroupState struct { // The list of IDs of the applications attached to the group. ApplicationIds pulumi.StringArrayInput // The date and time of the creation of the group CreatedAt pulumi.StringPtrInput // The description of the IAM group. Description pulumi.StringPtrInput // Manage membership externally. This make the resource ignore userIds and application_ids. Should be used when using iam_group_membership ExternalMembership pulumi.BoolPtrInput // The name of the IAM group. Name pulumi.StringPtrInput // `organizationId`) The ID of the organization the group is associated with. OrganizationId pulumi.StringPtrInput // The tags associated with the group. Tags pulumi.StringArrayInput // The date and time of the last update of the group UpdatedAt pulumi.StringPtrInput // The list of IDs of the users attached to the group. UserIds pulumi.StringArrayInput }
func (GroupState) ElementType ¶
func (GroupState) ElementType() reflect.Type
type LookupApplicationArgs ¶
type LookupApplicationArgs struct { // The ID of the IAM application. // Only one of the `name` and `applicationId` should be specified. ApplicationId *string `pulumi:"applicationId"` // The name of the IAM application. // Only one of the `name` and `applicationId` should be specified. Name *string `pulumi:"name"` // `organizationId`) The ID of the // organization the application is associated with. OrganizationId *string `pulumi:"organizationId"` }
A collection of arguments for invoking getApplication.
type LookupApplicationOutputArgs ¶
type LookupApplicationOutputArgs struct { // The ID of the IAM application. // Only one of the `name` and `applicationId` should be specified. ApplicationId pulumi.StringPtrInput `pulumi:"applicationId"` // The name of the IAM application. // Only one of the `name` and `applicationId` should be specified. Name pulumi.StringPtrInput `pulumi:"name"` // `organizationId`) The ID of the // organization the application is associated with. OrganizationId pulumi.StringPtrInput `pulumi:"organizationId"` }
A collection of arguments for invoking getApplication.
func (LookupApplicationOutputArgs) ElementType ¶
func (LookupApplicationOutputArgs) ElementType() reflect.Type
type LookupApplicationResult ¶
type LookupApplicationResult struct { ApplicationId *string `pulumi:"applicationId"` CreatedAt string `pulumi:"createdAt"` Description string `pulumi:"description"` Editable bool `pulumi:"editable"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Name *string `pulumi:"name"` OrganizationId *string `pulumi:"organizationId"` Tags []string `pulumi:"tags"` UpdatedAt string `pulumi:"updatedAt"` }
A collection of values returned by getApplication.
func LookupApplication ¶
func LookupApplication(ctx *pulumi.Context, args *LookupApplicationArgs, opts ...pulumi.InvokeOption) (*LookupApplicationResult, error)
Gets information about an existing IAM application.
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.LookupApplication(ctx, &iam.LookupApplicationArgs{ Name: pulumi.StringRef("foobar"), }, nil) if err != nil { return err } _, err = iam.LookupApplication(ctx, &iam.LookupApplicationArgs{ ApplicationId: pulumi.StringRef("11111111-1111-1111-1111-111111111111"), }, nil) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
type LookupApplicationResultOutput ¶
type LookupApplicationResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getApplication.
func LookupApplicationOutput ¶
func LookupApplicationOutput(ctx *pulumi.Context, args LookupApplicationOutputArgs, opts ...pulumi.InvokeOption) LookupApplicationResultOutput
func (LookupApplicationResultOutput) ApplicationId ¶
func (o LookupApplicationResultOutput) ApplicationId() pulumi.StringPtrOutput
func (LookupApplicationResultOutput) CreatedAt ¶
func (o LookupApplicationResultOutput) CreatedAt() pulumi.StringOutput
func (LookupApplicationResultOutput) Description ¶
func (o LookupApplicationResultOutput) Description() pulumi.StringOutput
func (LookupApplicationResultOutput) Editable ¶
func (o LookupApplicationResultOutput) Editable() pulumi.BoolOutput
func (LookupApplicationResultOutput) ElementType ¶
func (LookupApplicationResultOutput) ElementType() reflect.Type
func (LookupApplicationResultOutput) Id ¶
func (o LookupApplicationResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupApplicationResultOutput) Name ¶
func (o LookupApplicationResultOutput) Name() pulumi.StringPtrOutput
func (LookupApplicationResultOutput) OrganizationId ¶
func (o LookupApplicationResultOutput) OrganizationId() pulumi.StringPtrOutput
func (LookupApplicationResultOutput) Tags ¶
func (o LookupApplicationResultOutput) Tags() pulumi.StringArrayOutput
func (LookupApplicationResultOutput) ToLookupApplicationResultOutput ¶
func (o LookupApplicationResultOutput) ToLookupApplicationResultOutput() LookupApplicationResultOutput
func (LookupApplicationResultOutput) ToLookupApplicationResultOutputWithContext ¶
func (o LookupApplicationResultOutput) ToLookupApplicationResultOutputWithContext(ctx context.Context) LookupApplicationResultOutput
func (LookupApplicationResultOutput) UpdatedAt ¶
func (o LookupApplicationResultOutput) UpdatedAt() pulumi.StringOutput
type LookupGroupArgs ¶
type LookupGroupArgs struct { // The ID of the IAM group. // Only one of the `name` and `groupId` should be specified. GroupId *string `pulumi:"groupId"` // The name of the IAM group. // Only one of the `name` and `groupId` should be specified. Name *string `pulumi:"name"` // `organizationId`) The ID of the // organization the group is associated with. OrganizationId *string `pulumi:"organizationId"` }
A collection of arguments for invoking getGroup.
type LookupGroupOutputArgs ¶
type LookupGroupOutputArgs struct { // The ID of the IAM group. // Only one of the `name` and `groupId` should be specified. GroupId pulumi.StringPtrInput `pulumi:"groupId"` // The name of the IAM group. // Only one of the `name` and `groupId` should be specified. Name pulumi.StringPtrInput `pulumi:"name"` // `organizationId`) The ID of the // organization the group is associated with. OrganizationId pulumi.StringPtrInput `pulumi:"organizationId"` }
A collection of arguments for invoking getGroup.
func (LookupGroupOutputArgs) ElementType ¶
func (LookupGroupOutputArgs) ElementType() reflect.Type
type LookupGroupResult ¶
type LookupGroupResult struct { ApplicationIds []string `pulumi:"applicationIds"` CreatedAt string `pulumi:"createdAt"` Description string `pulumi:"description"` ExternalMembership bool `pulumi:"externalMembership"` GroupId *string `pulumi:"groupId"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Name *string `pulumi:"name"` OrganizationId *string `pulumi:"organizationId"` Tags []string `pulumi:"tags"` UpdatedAt string `pulumi:"updatedAt"` UserIds []string `pulumi:"userIds"` }
A collection of values returned by getGroup.
func LookupGroup ¶
func LookupGroup(ctx *pulumi.Context, args *LookupGroupArgs, opts ...pulumi.InvokeOption) (*LookupGroupResult, error)
Gets information about an existing IAM group. For more information, please check [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#applications-83ce5e)
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.LookupGroup(ctx, &iam.LookupGroupArgs{ Name: pulumi.StringRef("foobar"), }, nil) if err != nil { return err } _, err = iam.LookupGroup(ctx, &iam.LookupGroupArgs{ GroupId: pulumi.StringRef("11111111-1111-1111-1111-111111111111"), }, nil) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
type LookupGroupResultOutput ¶
type LookupGroupResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getGroup.
func LookupGroupOutput ¶
func LookupGroupOutput(ctx *pulumi.Context, args LookupGroupOutputArgs, opts ...pulumi.InvokeOption) LookupGroupResultOutput
func (LookupGroupResultOutput) ApplicationIds ¶
func (o LookupGroupResultOutput) ApplicationIds() pulumi.StringArrayOutput
func (LookupGroupResultOutput) CreatedAt ¶
func (o LookupGroupResultOutput) CreatedAt() pulumi.StringOutput
func (LookupGroupResultOutput) Description ¶
func (o LookupGroupResultOutput) Description() pulumi.StringOutput
func (LookupGroupResultOutput) ElementType ¶
func (LookupGroupResultOutput) ElementType() reflect.Type
func (LookupGroupResultOutput) ExternalMembership ¶
func (o LookupGroupResultOutput) ExternalMembership() pulumi.BoolOutput
func (LookupGroupResultOutput) GroupId ¶
func (o LookupGroupResultOutput) GroupId() pulumi.StringPtrOutput
func (LookupGroupResultOutput) Id ¶
func (o LookupGroupResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupGroupResultOutput) Name ¶
func (o LookupGroupResultOutput) Name() pulumi.StringPtrOutput
func (LookupGroupResultOutput) OrganizationId ¶
func (o LookupGroupResultOutput) OrganizationId() pulumi.StringPtrOutput
func (LookupGroupResultOutput) Tags ¶
func (o LookupGroupResultOutput) Tags() pulumi.StringArrayOutput
func (LookupGroupResultOutput) ToLookupGroupResultOutput ¶
func (o LookupGroupResultOutput) ToLookupGroupResultOutput() LookupGroupResultOutput
func (LookupGroupResultOutput) ToLookupGroupResultOutputWithContext ¶
func (o LookupGroupResultOutput) ToLookupGroupResultOutputWithContext(ctx context.Context) LookupGroupResultOutput
func (LookupGroupResultOutput) UpdatedAt ¶
func (o LookupGroupResultOutput) UpdatedAt() pulumi.StringOutput
func (LookupGroupResultOutput) UserIds ¶
func (o LookupGroupResultOutput) UserIds() pulumi.StringArrayOutput
type LookupSSHKeyArgs ¶
type LookupSSHKeyArgs struct { // The SSH key name. Only one of `name` and `sshKeyId` should be specified. Name *string `pulumi:"name"` // `projectId`) The ID of the project the SSH // key is associated with. ProjectId *string `pulumi:"projectId"` // The SSH key id. Only one of `name` and `sshKeyId` should be specified. SshKeyId *string `pulumi:"sshKeyId"` }
A collection of arguments for invoking getSSHKey.
type LookupSSHKeyOutputArgs ¶
type LookupSSHKeyOutputArgs struct { // The SSH key name. Only one of `name` and `sshKeyId` should be specified. Name pulumi.StringPtrInput `pulumi:"name"` // `projectId`) The ID of the project the SSH // key is associated with. ProjectId pulumi.StringPtrInput `pulumi:"projectId"` // The SSH key id. Only one of `name` and `sshKeyId` should be specified. SshKeyId pulumi.StringPtrInput `pulumi:"sshKeyId"` }
A collection of arguments for invoking getSSHKey.
func (LookupSSHKeyOutputArgs) ElementType ¶
func (LookupSSHKeyOutputArgs) ElementType() reflect.Type
type LookupSSHKeyResult ¶
type LookupSSHKeyResult struct { // The date and time of the creation of the SSH key. CreatedAt string `pulumi:"createdAt"` // The SSH key status. Disabled bool `pulumi:"disabled"` Fingerprint string `pulumi:"fingerprint"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Name *string `pulumi:"name"` // The ID of the organization the SSH key is associated with. OrganizationId string `pulumi:"organizationId"` ProjectId *string `pulumi:"projectId"` // The SSH public key string PublicKey string `pulumi:"publicKey"` SshKeyId *string `pulumi:"sshKeyId"` // The date and time of the last update of the SSH key. UpdatedAt string `pulumi:"updatedAt"` }
A collection of values returned by getSSHKey.
func LookupSSHKey ¶
func LookupSSHKey(ctx *pulumi.Context, args *LookupSSHKeyArgs, opts ...pulumi.InvokeOption) (*LookupSSHKeyResult, error)
Use this data source to get SSH key information based on its ID or name.
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.LookupSSHKey(ctx, &iam.LookupSSHKeyArgs{ SshKeyId: pulumi.StringRef("11111111-1111-1111-1111-111111111111"), }, nil) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
type LookupSSHKeyResultOutput ¶
type LookupSSHKeyResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getSSHKey.
func LookupSSHKeyOutput ¶
func LookupSSHKeyOutput(ctx *pulumi.Context, args LookupSSHKeyOutputArgs, opts ...pulumi.InvokeOption) LookupSSHKeyResultOutput
func (LookupSSHKeyResultOutput) CreatedAt ¶
func (o LookupSSHKeyResultOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the SSH key.
func (LookupSSHKeyResultOutput) Disabled ¶
func (o LookupSSHKeyResultOutput) Disabled() pulumi.BoolOutput
The SSH key status.
func (LookupSSHKeyResultOutput) ElementType ¶
func (LookupSSHKeyResultOutput) ElementType() reflect.Type
func (LookupSSHKeyResultOutput) Fingerprint ¶
func (o LookupSSHKeyResultOutput) Fingerprint() pulumi.StringOutput
func (LookupSSHKeyResultOutput) Id ¶
func (o LookupSSHKeyResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupSSHKeyResultOutput) Name ¶
func (o LookupSSHKeyResultOutput) Name() pulumi.StringPtrOutput
func (LookupSSHKeyResultOutput) OrganizationId ¶
func (o LookupSSHKeyResultOutput) OrganizationId() pulumi.StringOutput
The ID of the organization the SSH key is associated with.
func (LookupSSHKeyResultOutput) ProjectId ¶
func (o LookupSSHKeyResultOutput) ProjectId() pulumi.StringPtrOutput
func (LookupSSHKeyResultOutput) PublicKey ¶
func (o LookupSSHKeyResultOutput) PublicKey() pulumi.StringOutput
The SSH public key string
func (LookupSSHKeyResultOutput) SshKeyId ¶
func (o LookupSSHKeyResultOutput) SshKeyId() pulumi.StringPtrOutput
func (LookupSSHKeyResultOutput) ToLookupSSHKeyResultOutput ¶
func (o LookupSSHKeyResultOutput) ToLookupSSHKeyResultOutput() LookupSSHKeyResultOutput
func (LookupSSHKeyResultOutput) ToLookupSSHKeyResultOutputWithContext ¶
func (o LookupSSHKeyResultOutput) ToLookupSSHKeyResultOutputWithContext(ctx context.Context) LookupSSHKeyResultOutput
func (LookupSSHKeyResultOutput) UpdatedAt ¶
func (o LookupSSHKeyResultOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the SSH key.
type LookupUserArgs ¶
type LookupUserArgs struct { // The email address of the IAM user. Only one of the `email` and `userId` should be specified. Email *string `pulumi:"email"` // `organizationId`) The ID of the // organization the user is associated with. OrganizationId *string `pulumi:"organizationId"` // The ID of the IAM user. Only one of the `email` and `userId` should be specified. UserId *string `pulumi:"userId"` }
A collection of arguments for invoking getUser.
type LookupUserOutputArgs ¶
type LookupUserOutputArgs struct { // The email address of the IAM user. Only one of the `email` and `userId` should be specified. Email pulumi.StringPtrInput `pulumi:"email"` // `organizationId`) The ID of the // organization the user is associated with. OrganizationId pulumi.StringPtrInput `pulumi:"organizationId"` // The ID of the IAM user. Only one of the `email` and `userId` should be specified. UserId pulumi.StringPtrInput `pulumi:"userId"` }
A collection of arguments for invoking getUser.
func (LookupUserOutputArgs) ElementType ¶
func (LookupUserOutputArgs) ElementType() reflect.Type
type LookupUserResult ¶
type LookupUserResult struct { Email *string `pulumi:"email"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` OrganizationId *string `pulumi:"organizationId"` UserId *string `pulumi:"userId"` }
A collection of values returned by getUser.
func LookupUser ¶
func LookupUser(ctx *pulumi.Context, args *LookupUserArgs, opts ...pulumi.InvokeOption) (*LookupUserResult, error)
Use this data source to get information on an existing IAM user based on its ID or email address. For more information, see [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#users-06bdcf).
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.LookupUser(ctx, &iam.LookupUserArgs{ UserId: pulumi.StringRef("11111111-1111-1111-1111-111111111111"), }, nil) if err != nil { return err } _, err = iam.LookupUser(ctx, &iam.LookupUserArgs{ Email: pulumi.StringRef("foo@bar.com"), }, nil) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
type LookupUserResultOutput ¶
type LookupUserResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getUser.
func LookupUserOutput ¶
func LookupUserOutput(ctx *pulumi.Context, args LookupUserOutputArgs, opts ...pulumi.InvokeOption) LookupUserResultOutput
func (LookupUserResultOutput) ElementType ¶
func (LookupUserResultOutput) ElementType() reflect.Type
func (LookupUserResultOutput) Email ¶
func (o LookupUserResultOutput) Email() pulumi.StringPtrOutput
func (LookupUserResultOutput) Id ¶
func (o LookupUserResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupUserResultOutput) OrganizationId ¶
func (o LookupUserResultOutput) OrganizationId() pulumi.StringPtrOutput
func (LookupUserResultOutput) ToLookupUserResultOutput ¶
func (o LookupUserResultOutput) ToLookupUserResultOutput() LookupUserResultOutput
func (LookupUserResultOutput) ToLookupUserResultOutputWithContext ¶
func (o LookupUserResultOutput) ToLookupUserResultOutputWithContext(ctx context.Context) LookupUserResultOutput
func (LookupUserResultOutput) UserId ¶
func (o LookupUserResultOutput) UserId() pulumi.StringPtrOutput
type Policy ¶
type Policy struct { pulumi.CustomResourceState // ID of the Application the policy will be linked to ApplicationId pulumi.StringPtrOutput `pulumi:"applicationId"` // The date and time of the creation of the policy. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // The description of the iam policy. Description pulumi.StringPtrOutput `pulumi:"description"` // Whether the policy is editable. Editable pulumi.BoolOutput `pulumi:"editable"` // ID of the Group the policy will be linked to GroupId pulumi.StringPtrOutput `pulumi:"groupId"` // The name of the iam policy. Name pulumi.StringOutput `pulumi:"name"` // If the policy doesn't apply to a principal. // // > **Important** Only one of `userId`, `groupId`, `applicationId` and `noPrincipal` may be set. NoPrincipal pulumi.BoolPtrOutput `pulumi:"noPrincipal"` // ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization. OrganizationId pulumi.StringOutput `pulumi:"organizationId"` // List of rules in the policy. Rules PolicyRuleArrayOutput `pulumi:"rules"` // The tags associated with the iam policy. Tags pulumi.StringArrayOutput `pulumi:"tags"` // The date and time of the last update of the policy. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` // ID of the User the policy will be linked to UserId pulumi.StringPtrOutput `pulumi:"userId"` }
Creates and manages Scaleway IAM Policies. For more information, see [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#policies-54b8a7).
> You can find a detailed list of all permission sets available at Scaleway in the permission sets [reference page](https://www.scaleway.com/en/docs/identity-and-access-management/iam/reference-content/permission-sets/).
## Example Usage
### Create a policy for an organization's project
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/account" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _default, err := account.LookupProject(ctx, &account.LookupProjectArgs{ Name: pulumi.StringRef("default"), }, nil) if err != nil { return err } app, err := iam.NewApplication(ctx, "app", nil) if err != nil { return err } _, err = iam.NewPolicy(ctx, "objectReadOnly", &iam.PolicyArgs{ Description: pulumi.String("gives app readonly access to object storage in project"), ApplicationId: app.ID(), Rules: iam.PolicyRuleArray{ &iam.PolicyRuleArgs{ ProjectIds: pulumi.StringArray{ *pulumi.String(_default.Id), }, PermissionSetNames: pulumi.StringArray{ pulumi.String("ObjectStorageReadOnly"), }, }, }, }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
### Create a policy for all current and future projects in an organization
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { app, err := iam.NewApplication(ctx, "app", nil) if err != nil { return err } _, err = iam.NewPolicy(ctx, "objectReadOnly", &iam.PolicyArgs{ Description: pulumi.String("gives app readonly access to object storage in project"), ApplicationId: app.ID(), Rules: iam.PolicyRuleArray{ &iam.PolicyRuleArgs{ OrganizationId: app.OrganizationId, PermissionSetNames: pulumi.StringArray{ pulumi.String("ObjectStorageReadOnly"), }, }, }, }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
Policies can be imported using the `{id}`, e.g.
bash
```sh $ pulumi import scaleway:iam/policy:Policy main 11111111-1111-1111-1111-111111111111 ```
func GetPolicy ¶
func GetPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PolicyState, opts ...pulumi.ResourceOption) (*Policy, error)
GetPolicy gets an existing Policy 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 NewPolicy ¶
func NewPolicy(ctx *pulumi.Context, name string, args *PolicyArgs, opts ...pulumi.ResourceOption) (*Policy, error)
NewPolicy registers a new resource with the given unique name, arguments, and options.
func (*Policy) ElementType ¶
func (*Policy) ToPolicyOutput ¶
func (i *Policy) ToPolicyOutput() PolicyOutput
func (*Policy) ToPolicyOutputWithContext ¶
func (i *Policy) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
type PolicyArgs ¶
type PolicyArgs struct { // ID of the Application the policy will be linked to ApplicationId pulumi.StringPtrInput // The description of the iam policy. Description pulumi.StringPtrInput // ID of the Group the policy will be linked to GroupId pulumi.StringPtrInput // The name of the iam policy. Name pulumi.StringPtrInput // If the policy doesn't apply to a principal. // // > **Important** Only one of `userId`, `groupId`, `applicationId` and `noPrincipal` may be set. NoPrincipal pulumi.BoolPtrInput // ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization. OrganizationId pulumi.StringPtrInput // List of rules in the policy. Rules PolicyRuleArrayInput // The tags associated with the iam policy. Tags pulumi.StringArrayInput // ID of the User the policy will be linked to UserId pulumi.StringPtrInput }
The set of arguments for constructing a Policy resource.
func (PolicyArgs) ElementType ¶
func (PolicyArgs) ElementType() reflect.Type
type PolicyArray ¶
type PolicyArray []PolicyInput
func (PolicyArray) ElementType ¶
func (PolicyArray) ElementType() reflect.Type
func (PolicyArray) ToPolicyArrayOutput ¶
func (i PolicyArray) ToPolicyArrayOutput() PolicyArrayOutput
func (PolicyArray) ToPolicyArrayOutputWithContext ¶
func (i PolicyArray) ToPolicyArrayOutputWithContext(ctx context.Context) PolicyArrayOutput
type PolicyArrayInput ¶
type PolicyArrayInput interface { pulumi.Input ToPolicyArrayOutput() PolicyArrayOutput ToPolicyArrayOutputWithContext(context.Context) PolicyArrayOutput }
PolicyArrayInput is an input type that accepts PolicyArray and PolicyArrayOutput values. You can construct a concrete instance of `PolicyArrayInput` via:
PolicyArray{ PolicyArgs{...} }
type PolicyArrayOutput ¶
type PolicyArrayOutput struct{ *pulumi.OutputState }
func (PolicyArrayOutput) ElementType ¶
func (PolicyArrayOutput) ElementType() reflect.Type
func (PolicyArrayOutput) Index ¶
func (o PolicyArrayOutput) Index(i pulumi.IntInput) PolicyOutput
func (PolicyArrayOutput) ToPolicyArrayOutput ¶
func (o PolicyArrayOutput) ToPolicyArrayOutput() PolicyArrayOutput
func (PolicyArrayOutput) ToPolicyArrayOutputWithContext ¶
func (o PolicyArrayOutput) ToPolicyArrayOutputWithContext(ctx context.Context) PolicyArrayOutput
type PolicyInput ¶
type PolicyInput interface { pulumi.Input ToPolicyOutput() PolicyOutput ToPolicyOutputWithContext(ctx context.Context) PolicyOutput }
type PolicyMap ¶
type PolicyMap map[string]PolicyInput
func (PolicyMap) ElementType ¶
func (PolicyMap) ToPolicyMapOutput ¶
func (i PolicyMap) ToPolicyMapOutput() PolicyMapOutput
func (PolicyMap) ToPolicyMapOutputWithContext ¶
func (i PolicyMap) ToPolicyMapOutputWithContext(ctx context.Context) PolicyMapOutput
type PolicyMapInput ¶
type PolicyMapInput interface { pulumi.Input ToPolicyMapOutput() PolicyMapOutput ToPolicyMapOutputWithContext(context.Context) PolicyMapOutput }
PolicyMapInput is an input type that accepts PolicyMap and PolicyMapOutput values. You can construct a concrete instance of `PolicyMapInput` via:
PolicyMap{ "key": PolicyArgs{...} }
type PolicyMapOutput ¶
type PolicyMapOutput struct{ *pulumi.OutputState }
func (PolicyMapOutput) ElementType ¶
func (PolicyMapOutput) ElementType() reflect.Type
func (PolicyMapOutput) MapIndex ¶
func (o PolicyMapOutput) MapIndex(k pulumi.StringInput) PolicyOutput
func (PolicyMapOutput) ToPolicyMapOutput ¶
func (o PolicyMapOutput) ToPolicyMapOutput() PolicyMapOutput
func (PolicyMapOutput) ToPolicyMapOutputWithContext ¶
func (o PolicyMapOutput) ToPolicyMapOutputWithContext(ctx context.Context) PolicyMapOutput
type PolicyOutput ¶
type PolicyOutput struct{ *pulumi.OutputState }
func (PolicyOutput) ApplicationId ¶
func (o PolicyOutput) ApplicationId() pulumi.StringPtrOutput
ID of the Application the policy will be linked to
func (PolicyOutput) CreatedAt ¶
func (o PolicyOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the policy.
func (PolicyOutput) Description ¶
func (o PolicyOutput) Description() pulumi.StringPtrOutput
The description of the iam policy.
func (PolicyOutput) Editable ¶
func (o PolicyOutput) Editable() pulumi.BoolOutput
Whether the policy is editable.
func (PolicyOutput) ElementType ¶
func (PolicyOutput) ElementType() reflect.Type
func (PolicyOutput) GroupId ¶
func (o PolicyOutput) GroupId() pulumi.StringPtrOutput
ID of the Group the policy will be linked to
func (PolicyOutput) Name ¶
func (o PolicyOutput) Name() pulumi.StringOutput
The name of the iam policy.
func (PolicyOutput) NoPrincipal ¶
func (o PolicyOutput) NoPrincipal() pulumi.BoolPtrOutput
If the policy doesn't apply to a principal.
> **Important** Only one of `userId`, `groupId`, `applicationId` and `noPrincipal` may be set.
func (PolicyOutput) OrganizationId ¶
func (o PolicyOutput) OrganizationId() pulumi.StringOutput
ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization.
func (PolicyOutput) Rules ¶
func (o PolicyOutput) Rules() PolicyRuleArrayOutput
List of rules in the policy.
func (PolicyOutput) Tags ¶
func (o PolicyOutput) Tags() pulumi.StringArrayOutput
The tags associated with the iam policy.
func (PolicyOutput) ToPolicyOutput ¶
func (o PolicyOutput) ToPolicyOutput() PolicyOutput
func (PolicyOutput) ToPolicyOutputWithContext ¶
func (o PolicyOutput) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
func (PolicyOutput) UpdatedAt ¶
func (o PolicyOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the policy.
func (PolicyOutput) UserId ¶
func (o PolicyOutput) UserId() pulumi.StringPtrOutput
ID of the User the policy will be linked to
type PolicyRule ¶
type PolicyRule struct { // ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization. OrganizationId *string `pulumi:"organizationId"` // Names of permission sets bound to the rule. // // **_TIP:_** You can use the Scaleway CLI to list the permissions details. e.g: PermissionSetNames []string `pulumi:"permissionSetNames"` // List of project IDs scoped to the rule. // // > **Important** One of `organizationId` or `projectIds` must be set per rule. ProjectIds []string `pulumi:"projectIds"` }
type PolicyRuleArgs ¶
type PolicyRuleArgs struct { // ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization. OrganizationId pulumi.StringPtrInput `pulumi:"organizationId"` // Names of permission sets bound to the rule. // // **_TIP:_** You can use the Scaleway CLI to list the permissions details. e.g: PermissionSetNames pulumi.StringArrayInput `pulumi:"permissionSetNames"` // List of project IDs scoped to the rule. // // > **Important** One of `organizationId` or `projectIds` must be set per rule. ProjectIds pulumi.StringArrayInput `pulumi:"projectIds"` }
func (PolicyRuleArgs) ElementType ¶
func (PolicyRuleArgs) ElementType() reflect.Type
func (PolicyRuleArgs) ToPolicyRuleOutput ¶
func (i PolicyRuleArgs) ToPolicyRuleOutput() PolicyRuleOutput
func (PolicyRuleArgs) ToPolicyRuleOutputWithContext ¶
func (i PolicyRuleArgs) ToPolicyRuleOutputWithContext(ctx context.Context) PolicyRuleOutput
type PolicyRuleArray ¶
type PolicyRuleArray []PolicyRuleInput
func (PolicyRuleArray) ElementType ¶
func (PolicyRuleArray) ElementType() reflect.Type
func (PolicyRuleArray) ToPolicyRuleArrayOutput ¶
func (i PolicyRuleArray) ToPolicyRuleArrayOutput() PolicyRuleArrayOutput
func (PolicyRuleArray) ToPolicyRuleArrayOutputWithContext ¶
func (i PolicyRuleArray) ToPolicyRuleArrayOutputWithContext(ctx context.Context) PolicyRuleArrayOutput
type PolicyRuleArrayInput ¶
type PolicyRuleArrayInput interface { pulumi.Input ToPolicyRuleArrayOutput() PolicyRuleArrayOutput ToPolicyRuleArrayOutputWithContext(context.Context) PolicyRuleArrayOutput }
PolicyRuleArrayInput is an input type that accepts PolicyRuleArray and PolicyRuleArrayOutput values. You can construct a concrete instance of `PolicyRuleArrayInput` via:
PolicyRuleArray{ PolicyRuleArgs{...} }
type PolicyRuleArrayOutput ¶
type PolicyRuleArrayOutput struct{ *pulumi.OutputState }
func (PolicyRuleArrayOutput) ElementType ¶
func (PolicyRuleArrayOutput) ElementType() reflect.Type
func (PolicyRuleArrayOutput) Index ¶
func (o PolicyRuleArrayOutput) Index(i pulumi.IntInput) PolicyRuleOutput
func (PolicyRuleArrayOutput) ToPolicyRuleArrayOutput ¶
func (o PolicyRuleArrayOutput) ToPolicyRuleArrayOutput() PolicyRuleArrayOutput
func (PolicyRuleArrayOutput) ToPolicyRuleArrayOutputWithContext ¶
func (o PolicyRuleArrayOutput) ToPolicyRuleArrayOutputWithContext(ctx context.Context) PolicyRuleArrayOutput
type PolicyRuleInput ¶
type PolicyRuleInput interface { pulumi.Input ToPolicyRuleOutput() PolicyRuleOutput ToPolicyRuleOutputWithContext(context.Context) PolicyRuleOutput }
PolicyRuleInput is an input type that accepts PolicyRuleArgs and PolicyRuleOutput values. You can construct a concrete instance of `PolicyRuleInput` via:
PolicyRuleArgs{...}
type PolicyRuleOutput ¶
type PolicyRuleOutput struct{ *pulumi.OutputState }
func (PolicyRuleOutput) ElementType ¶
func (PolicyRuleOutput) ElementType() reflect.Type
func (PolicyRuleOutput) OrganizationId ¶
func (o PolicyRuleOutput) OrganizationId() pulumi.StringPtrOutput
ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization.
func (PolicyRuleOutput) PermissionSetNames ¶
func (o PolicyRuleOutput) PermissionSetNames() pulumi.StringArrayOutput
Names of permission sets bound to the rule.
**_TIP:_** You can use the Scaleway CLI to list the permissions details. e.g:
func (PolicyRuleOutput) ProjectIds ¶
func (o PolicyRuleOutput) ProjectIds() pulumi.StringArrayOutput
List of project IDs scoped to the rule.
> **Important** One of `organizationId` or `projectIds` must be set per rule.
func (PolicyRuleOutput) ToPolicyRuleOutput ¶
func (o PolicyRuleOutput) ToPolicyRuleOutput() PolicyRuleOutput
func (PolicyRuleOutput) ToPolicyRuleOutputWithContext ¶
func (o PolicyRuleOutput) ToPolicyRuleOutputWithContext(ctx context.Context) PolicyRuleOutput
type PolicyState ¶
type PolicyState struct { // ID of the Application the policy will be linked to ApplicationId pulumi.StringPtrInput // The date and time of the creation of the policy. CreatedAt pulumi.StringPtrInput // The description of the iam policy. Description pulumi.StringPtrInput // Whether the policy is editable. Editable pulumi.BoolPtrInput // ID of the Group the policy will be linked to GroupId pulumi.StringPtrInput // The name of the iam policy. Name pulumi.StringPtrInput // If the policy doesn't apply to a principal. // // > **Important** Only one of `userId`, `groupId`, `applicationId` and `noPrincipal` may be set. NoPrincipal pulumi.BoolPtrInput // ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization. OrganizationId pulumi.StringPtrInput // List of rules in the policy. Rules PolicyRuleArrayInput // The tags associated with the iam policy. Tags pulumi.StringArrayInput // The date and time of the last update of the policy. UpdatedAt pulumi.StringPtrInput // ID of the User the policy will be linked to UserId pulumi.StringPtrInput }
func (PolicyState) ElementType ¶
func (PolicyState) ElementType() reflect.Type
type SSHKey ¶
type SSHKey struct { pulumi.CustomResourceState // The date and time of the creation of the SSH key. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // The SSH key status. Disabled pulumi.BoolPtrOutput `pulumi:"disabled"` // The fingerprint of the iam SSH key. Fingerprint pulumi.StringOutput `pulumi:"fingerprint"` // The name of the SSH key. Name pulumi.StringOutput `pulumi:"name"` // The ID of the organization the SSH key is associated with. OrganizationId pulumi.StringOutput `pulumi:"organizationId"` // `projectId`) The ID of the project the SSH key is // associated with. ProjectId pulumi.StringOutput `pulumi:"projectId"` // The public SSH key to be added. PublicKey pulumi.StringOutput `pulumi:"publicKey"` // The date and time of the last update of the SSH key. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` }
Creates and manages Scaleway IAM SSH Keys. For more information, see [the documentation](https://developers.scaleway.com/en/products/iam/api/v1alpha1/#ssh-keys-d8ccd4).
## Example Usage
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.NewSSHKey(ctx, "main", &iam.SSHKeyArgs{ PublicKey: pulumi.String("<YOUR-PUBLIC-SSH-KEY>"), }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
SSH keys can be imported using the `id`, e.g.
bash
```sh $ pulumi import scaleway:iam/sSHKey:SSHKey main 11111111-1111-1111-1111-111111111111 ```
func GetSSHKey ¶
func GetSSHKey(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SSHKeyState, opts ...pulumi.ResourceOption) (*SSHKey, error)
GetSSHKey gets an existing SSHKey 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 NewSSHKey ¶
func NewSSHKey(ctx *pulumi.Context, name string, args *SSHKeyArgs, opts ...pulumi.ResourceOption) (*SSHKey, error)
NewSSHKey registers a new resource with the given unique name, arguments, and options.
func (*SSHKey) ElementType ¶
func (*SSHKey) ToSSHKeyOutput ¶
func (i *SSHKey) ToSSHKeyOutput() SSHKeyOutput
func (*SSHKey) ToSSHKeyOutputWithContext ¶
func (i *SSHKey) ToSSHKeyOutputWithContext(ctx context.Context) SSHKeyOutput
type SSHKeyArgs ¶
type SSHKeyArgs struct { // The SSH key status. Disabled pulumi.BoolPtrInput // The name of the SSH key. Name pulumi.StringPtrInput // `projectId`) The ID of the project the SSH key is // associated with. ProjectId pulumi.StringPtrInput // The public SSH key to be added. PublicKey pulumi.StringInput }
The set of arguments for constructing a SSHKey resource.
func (SSHKeyArgs) ElementType ¶
func (SSHKeyArgs) ElementType() reflect.Type
type SSHKeyArray ¶
type SSHKeyArray []SSHKeyInput
func (SSHKeyArray) ElementType ¶
func (SSHKeyArray) ElementType() reflect.Type
func (SSHKeyArray) ToSSHKeyArrayOutput ¶
func (i SSHKeyArray) ToSSHKeyArrayOutput() SSHKeyArrayOutput
func (SSHKeyArray) ToSSHKeyArrayOutputWithContext ¶
func (i SSHKeyArray) ToSSHKeyArrayOutputWithContext(ctx context.Context) SSHKeyArrayOutput
type SSHKeyArrayInput ¶
type SSHKeyArrayInput interface { pulumi.Input ToSSHKeyArrayOutput() SSHKeyArrayOutput ToSSHKeyArrayOutputWithContext(context.Context) SSHKeyArrayOutput }
SSHKeyArrayInput is an input type that accepts SSHKeyArray and SSHKeyArrayOutput values. You can construct a concrete instance of `SSHKeyArrayInput` via:
SSHKeyArray{ SSHKeyArgs{...} }
type SSHKeyArrayOutput ¶
type SSHKeyArrayOutput struct{ *pulumi.OutputState }
func (SSHKeyArrayOutput) ElementType ¶
func (SSHKeyArrayOutput) ElementType() reflect.Type
func (SSHKeyArrayOutput) Index ¶
func (o SSHKeyArrayOutput) Index(i pulumi.IntInput) SSHKeyOutput
func (SSHKeyArrayOutput) ToSSHKeyArrayOutput ¶
func (o SSHKeyArrayOutput) ToSSHKeyArrayOutput() SSHKeyArrayOutput
func (SSHKeyArrayOutput) ToSSHKeyArrayOutputWithContext ¶
func (o SSHKeyArrayOutput) ToSSHKeyArrayOutputWithContext(ctx context.Context) SSHKeyArrayOutput
type SSHKeyInput ¶
type SSHKeyInput interface { pulumi.Input ToSSHKeyOutput() SSHKeyOutput ToSSHKeyOutputWithContext(ctx context.Context) SSHKeyOutput }
type SSHKeyMap ¶
type SSHKeyMap map[string]SSHKeyInput
func (SSHKeyMap) ElementType ¶
func (SSHKeyMap) ToSSHKeyMapOutput ¶
func (i SSHKeyMap) ToSSHKeyMapOutput() SSHKeyMapOutput
func (SSHKeyMap) ToSSHKeyMapOutputWithContext ¶
func (i SSHKeyMap) ToSSHKeyMapOutputWithContext(ctx context.Context) SSHKeyMapOutput
type SSHKeyMapInput ¶
type SSHKeyMapInput interface { pulumi.Input ToSSHKeyMapOutput() SSHKeyMapOutput ToSSHKeyMapOutputWithContext(context.Context) SSHKeyMapOutput }
SSHKeyMapInput is an input type that accepts SSHKeyMap and SSHKeyMapOutput values. You can construct a concrete instance of `SSHKeyMapInput` via:
SSHKeyMap{ "key": SSHKeyArgs{...} }
type SSHKeyMapOutput ¶
type SSHKeyMapOutput struct{ *pulumi.OutputState }
func (SSHKeyMapOutput) ElementType ¶
func (SSHKeyMapOutput) ElementType() reflect.Type
func (SSHKeyMapOutput) MapIndex ¶
func (o SSHKeyMapOutput) MapIndex(k pulumi.StringInput) SSHKeyOutput
func (SSHKeyMapOutput) ToSSHKeyMapOutput ¶
func (o SSHKeyMapOutput) ToSSHKeyMapOutput() SSHKeyMapOutput
func (SSHKeyMapOutput) ToSSHKeyMapOutputWithContext ¶
func (o SSHKeyMapOutput) ToSSHKeyMapOutputWithContext(ctx context.Context) SSHKeyMapOutput
type SSHKeyOutput ¶
type SSHKeyOutput struct{ *pulumi.OutputState }
func (SSHKeyOutput) CreatedAt ¶
func (o SSHKeyOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the SSH key.
func (SSHKeyOutput) Disabled ¶
func (o SSHKeyOutput) Disabled() pulumi.BoolPtrOutput
The SSH key status.
func (SSHKeyOutput) ElementType ¶
func (SSHKeyOutput) ElementType() reflect.Type
func (SSHKeyOutput) Fingerprint ¶
func (o SSHKeyOutput) Fingerprint() pulumi.StringOutput
The fingerprint of the iam SSH key.
func (SSHKeyOutput) Name ¶
func (o SSHKeyOutput) Name() pulumi.StringOutput
The name of the SSH key.
func (SSHKeyOutput) OrganizationId ¶
func (o SSHKeyOutput) OrganizationId() pulumi.StringOutput
The ID of the organization the SSH key is associated with.
func (SSHKeyOutput) ProjectId ¶
func (o SSHKeyOutput) ProjectId() pulumi.StringOutput
`projectId`) The ID of the project the SSH key is associated with.
func (SSHKeyOutput) PublicKey ¶
func (o SSHKeyOutput) PublicKey() pulumi.StringOutput
The public SSH key to be added.
func (SSHKeyOutput) ToSSHKeyOutput ¶
func (o SSHKeyOutput) ToSSHKeyOutput() SSHKeyOutput
func (SSHKeyOutput) ToSSHKeyOutputWithContext ¶
func (o SSHKeyOutput) ToSSHKeyOutputWithContext(ctx context.Context) SSHKeyOutput
func (SSHKeyOutput) UpdatedAt ¶
func (o SSHKeyOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the SSH key.
type SSHKeyState ¶
type SSHKeyState struct { // The date and time of the creation of the SSH key. CreatedAt pulumi.StringPtrInput // The SSH key status. Disabled pulumi.BoolPtrInput // The fingerprint of the iam SSH key. Fingerprint pulumi.StringPtrInput // The name of the SSH key. Name pulumi.StringPtrInput // The ID of the organization the SSH key is associated with. OrganizationId pulumi.StringPtrInput // `projectId`) The ID of the project the SSH key is // associated with. ProjectId pulumi.StringPtrInput // The public SSH key to be added. PublicKey pulumi.StringPtrInput // The date and time of the last update of the SSH key. UpdatedAt pulumi.StringPtrInput }
func (SSHKeyState) ElementType ¶
func (SSHKeyState) ElementType() reflect.Type
type User ¶
type User struct { pulumi.CustomResourceState // The ID of the account root user associated with the user. AccountRootUserId pulumi.StringOutput `pulumi:"accountRootUserId"` // The date and time of the creation of the iam user. CreatedAt pulumi.StringOutput `pulumi:"createdAt"` // Whether the iam user is deletable. Deletable pulumi.BoolOutput `pulumi:"deletable"` // The email of the IAM user. Email pulumi.StringOutput `pulumi:"email"` // The date of the last login. LastLoginAt pulumi.StringOutput `pulumi:"lastLoginAt"` // Whether the MFA is enabled. Mfa pulumi.BoolOutput `pulumi:"mfa"` // `organizationId`) The ID of the organization the user is associated with. OrganizationId pulumi.StringOutput `pulumi:"organizationId"` // The status of user invitation. Check the possible values in the [api doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user). Status pulumi.StringOutput `pulumi:"status"` // The type of user. Check the possible values in the [api doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user). Type pulumi.StringOutput `pulumi:"type"` // The date and time of the last update of the iam user. UpdatedAt pulumi.StringOutput `pulumi:"updatedAt"` }
Creates and manages Scaleway IAM Users. For more information, see [the documentation](https://www.scaleway.com/en/developers/api/iam/#path-users-list-users-of-an-organization).
## Example Usage
### Basic
<!--Start PulumiCodeChooser --> ```go package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/raeumlich/pulumi-scaleway/sdk/go/scaleway/iam"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := iam.NewUser(ctx, "basic", &iam.UserArgs{ Email: pulumi.String("test@test.com"), }) if err != nil { return err } return nil }) }
``` <!--End PulumiCodeChooser -->
## Import
IAM users can be imported using the `{id}`, e.g.
bash
```sh $ pulumi import scaleway:iam/user:User basic 11111111-1111-1111-1111-111111111111 ```
func GetUser ¶
func GetUser(ctx *pulumi.Context, name string, id pulumi.IDInput, state *UserState, opts ...pulumi.ResourceOption) (*User, error)
GetUser gets an existing User 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 NewUser ¶
func NewUser(ctx *pulumi.Context, name string, args *UserArgs, opts ...pulumi.ResourceOption) (*User, error)
NewUser registers a new resource with the given unique name, arguments, and options.
func (*User) ElementType ¶
func (*User) ToUserOutput ¶
func (i *User) ToUserOutput() UserOutput
func (*User) ToUserOutputWithContext ¶
func (i *User) ToUserOutputWithContext(ctx context.Context) UserOutput
type UserArgs ¶
type UserArgs struct { // The email of the IAM user. Email pulumi.StringInput // `organizationId`) The ID of the organization the user is associated with. OrganizationId pulumi.StringPtrInput }
The set of arguments for constructing a User resource.
func (UserArgs) ElementType ¶
type UserArray ¶
type UserArray []UserInput
func (UserArray) ElementType ¶
func (UserArray) ToUserArrayOutput ¶
func (i UserArray) ToUserArrayOutput() UserArrayOutput
func (UserArray) ToUserArrayOutputWithContext ¶
func (i UserArray) ToUserArrayOutputWithContext(ctx context.Context) UserArrayOutput
type UserArrayInput ¶
type UserArrayInput interface { pulumi.Input ToUserArrayOutput() UserArrayOutput ToUserArrayOutputWithContext(context.Context) UserArrayOutput }
UserArrayInput is an input type that accepts UserArray and UserArrayOutput values. You can construct a concrete instance of `UserArrayInput` via:
UserArray{ UserArgs{...} }
type UserArrayOutput ¶
type UserArrayOutput struct{ *pulumi.OutputState }
func (UserArrayOutput) ElementType ¶
func (UserArrayOutput) ElementType() reflect.Type
func (UserArrayOutput) Index ¶
func (o UserArrayOutput) Index(i pulumi.IntInput) UserOutput
func (UserArrayOutput) ToUserArrayOutput ¶
func (o UserArrayOutput) ToUserArrayOutput() UserArrayOutput
func (UserArrayOutput) ToUserArrayOutputWithContext ¶
func (o UserArrayOutput) ToUserArrayOutputWithContext(ctx context.Context) UserArrayOutput
type UserInput ¶
type UserInput interface { pulumi.Input ToUserOutput() UserOutput ToUserOutputWithContext(ctx context.Context) UserOutput }
type UserMap ¶
func (UserMap) ElementType ¶
func (UserMap) ToUserMapOutput ¶
func (i UserMap) ToUserMapOutput() UserMapOutput
func (UserMap) ToUserMapOutputWithContext ¶
func (i UserMap) ToUserMapOutputWithContext(ctx context.Context) UserMapOutput
type UserMapInput ¶
type UserMapInput interface { pulumi.Input ToUserMapOutput() UserMapOutput ToUserMapOutputWithContext(context.Context) UserMapOutput }
UserMapInput is an input type that accepts UserMap and UserMapOutput values. You can construct a concrete instance of `UserMapInput` via:
UserMap{ "key": UserArgs{...} }
type UserMapOutput ¶
type UserMapOutput struct{ *pulumi.OutputState }
func (UserMapOutput) ElementType ¶
func (UserMapOutput) ElementType() reflect.Type
func (UserMapOutput) MapIndex ¶
func (o UserMapOutput) MapIndex(k pulumi.StringInput) UserOutput
func (UserMapOutput) ToUserMapOutput ¶
func (o UserMapOutput) ToUserMapOutput() UserMapOutput
func (UserMapOutput) ToUserMapOutputWithContext ¶
func (o UserMapOutput) ToUserMapOutputWithContext(ctx context.Context) UserMapOutput
type UserOutput ¶
type UserOutput struct{ *pulumi.OutputState }
func (UserOutput) AccountRootUserId ¶
func (o UserOutput) AccountRootUserId() pulumi.StringOutput
The ID of the account root user associated with the user.
func (UserOutput) CreatedAt ¶
func (o UserOutput) CreatedAt() pulumi.StringOutput
The date and time of the creation of the iam user.
func (UserOutput) Deletable ¶
func (o UserOutput) Deletable() pulumi.BoolOutput
Whether the iam user is deletable.
func (UserOutput) ElementType ¶
func (UserOutput) ElementType() reflect.Type
func (UserOutput) Email ¶
func (o UserOutput) Email() pulumi.StringOutput
The email of the IAM user.
func (UserOutput) LastLoginAt ¶
func (o UserOutput) LastLoginAt() pulumi.StringOutput
The date of the last login.
func (UserOutput) OrganizationId ¶
func (o UserOutput) OrganizationId() pulumi.StringOutput
`organizationId`) The ID of the organization the user is associated with.
func (UserOutput) Status ¶
func (o UserOutput) Status() pulumi.StringOutput
The status of user invitation. Check the possible values in the [api doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
func (UserOutput) ToUserOutput ¶
func (o UserOutput) ToUserOutput() UserOutput
func (UserOutput) ToUserOutputWithContext ¶
func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput
func (UserOutput) Type ¶
func (o UserOutput) Type() pulumi.StringOutput
The type of user. Check the possible values in the [api doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user).
func (UserOutput) UpdatedAt ¶
func (o UserOutput) UpdatedAt() pulumi.StringOutput
The date and time of the last update of the iam user.
type UserState ¶
type UserState struct { // The ID of the account root user associated with the user. AccountRootUserId pulumi.StringPtrInput // The date and time of the creation of the iam user. CreatedAt pulumi.StringPtrInput // Whether the iam user is deletable. Deletable pulumi.BoolPtrInput // The email of the IAM user. Email pulumi.StringPtrInput // The date of the last login. LastLoginAt pulumi.StringPtrInput // Whether the MFA is enabled. Mfa pulumi.BoolPtrInput // `organizationId`) The ID of the organization the user is associated with. OrganizationId pulumi.StringPtrInput // The status of user invitation. Check the possible values in the [api doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user). Status pulumi.StringPtrInput // The type of user. Check the possible values in the [api doc](https://www.scaleway.com/en/developers/api/iam/#path-users-get-a-given-user). Type pulumi.StringPtrInput // The date and time of the last update of the iam user. UpdatedAt pulumi.StringPtrInput }