1. Packages
  2. Yandex
  3. API Docs
  4. getIamRole
Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi

yandex.getIamRole

Start a Neo task
Explain and create a yandex.getIamRole resource
yandex logo
Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi

    Generates an [IAM] role document that may be referenced by and applied to other Yandex.Cloud Platform resources, such as the yandex.ResourcemanagerFolder resource. For more information, see the official documentation.

    import * as pulumi from "@pulumi/pulumi";
    import * as yandex from "@pulumi/yandex";
    
    const admin = pulumi.output(yandex.getIamRole({
        binding: [{
            members: ["userAccount:user_id_1"],
            role: "admin",
        }],
    }));
    
    import pulumi
    import pulumi_yandex as yandex
    
    admin = yandex.get_iam_role(binding=[{
        "members": ["userAccount:user_id_1"],
        "role": "admin",
    }])
    
    using Pulumi;
    using Yandex = Pulumi.Yandex;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var admin = Output.Create(Yandex.GetIamRole.InvokeAsync(new Yandex.GetIamRoleArgs
            {
                Binding = 
                {
                    
                    {
                        { "members", 
                        {
                            "userAccount:user_id_1",
                        } },
                        { "role", "admin" },
                    },
                },
            }));
        }
    
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-yandex/sdk/go/yandex"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := yandex.GetIamRole(ctx, &GetIamRoleArgs{
    			Binding: []map[string]interface{}{
    				map[string]interface{}{
    					"members": []string{
    						"userAccount:user_id_1",
    					},
    					"role": "admin",
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    This data source is used to define [IAM] roles in order to apply them to other resources. Currently, defining a role through a data source and referencing that role from another resource is the only way to apply an IAM role to a resource.

    Using getIamRole

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getIamRole(args: GetIamRoleArgs, opts?: InvokeOptions): Promise<GetIamRoleResult>
    function getIamRoleOutput(args: GetIamRoleOutputArgs, opts?: InvokeOptions): Output<GetIamRoleResult>
    def get_iam_role(description: Optional[str] = None,
                     role_id: Optional[str] = None,
                     opts: Optional[InvokeOptions] = None) -> GetIamRoleResult
    def get_iam_role_output(description: Optional[pulumi.Input[str]] = None,
                     role_id: Optional[pulumi.Input[str]] = None,
                     opts: Optional[InvokeOptions] = None) -> Output[GetIamRoleResult]
    func GetIamRole(ctx *Context, args *GetIamRoleArgs, opts ...InvokeOption) (*GetIamRoleResult, error)
    func GetIamRoleOutput(ctx *Context, args *GetIamRoleOutputArgs, opts ...InvokeOption) GetIamRoleResultOutput

    > Note: This function is named GetIamRole in the Go SDK.

    public static class GetIamRole 
    {
        public static Task<GetIamRoleResult> InvokeAsync(GetIamRoleArgs args, InvokeOptions? opts = null)
        public static Output<GetIamRoleResult> Invoke(GetIamRoleInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetIamRoleResult> getIamRole(GetIamRoleArgs args, InvokeOptions options)
    public static Output<GetIamRoleResult> getIamRole(GetIamRoleArgs args, InvokeOptions options)
    
    fn::invoke:
      function: yandex:index/getIamRole:getIamRole
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Description string
    RoleId string
    Description string
    RoleId string
    description String
    roleId String
    description string
    roleId string
    description String
    roleId String

    getIamRole Result

    The following output properties are available:

    Id string
    The provider-assigned unique ID for this managed resource.
    RoleId string
    Description string
    Id string
    The provider-assigned unique ID for this managed resource.
    RoleId string
    Description string
    id String
    The provider-assigned unique ID for this managed resource.
    roleId String
    description String
    id string
    The provider-assigned unique ID for this managed resource.
    roleId string
    description string
    id str
    The provider-assigned unique ID for this managed resource.
    role_id str
    description str
    id String
    The provider-assigned unique ID for this managed resource.
    roleId String
    description String

    Package Details

    Repository
    Yandex pulumi/pulumi-yandex
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the yandex Terraform Provider.
    yandex logo
    Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi
      Meet Neo: Your AI Platform Teammate