Movatterモバイル変換


[0]ホーム

URL:


iam

packagemodule
v1.5.3Latest Latest
Warning

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

Go to latest
Published: Oct 8, 2025 License:Apache-2.0Imports:8Imported by:418

Details

Repository

github.com/googleapis/google-cloud-go

Links

README

IAM API

Go Reference

Go Client Library for IAM API.

Install

go get cloud.google.com/go/iam

Stability

The stability of this module is indicated by SemVer.

However, av1+ module may have breaking changes in two scenarios:

  • Packages withalpha orbeta in the import path
  • The GoDoc has an explicit stability disclaimer (for example, for an experimental feature).

Go Version Support

See theGo Versions Supportedsection in the root directory's README.

Authorization

See theAuthorizationsection in the root directory's README.

Contributing

Contributions are welcome. Please, see theCONTRIBUTINGdocument for details.

Please note that this project is released with a Contributor Code of Conduct.By participating in this project you agree to abide by its terms. SeeContributor Code of Conductfor more information.

Documentation

Overview

Package iam supports the resource-specific operations of Google CloudIAM (Identity and Access Management) for the Google Cloud Libraries.Seehttps://cloud.google.com/iam for more about IAM.

Users of the Google Cloud Libraries will typically not use this packagedirectly. Instead they will begin with some resource that supports IAM, likea pubsub topic, and call its IAM method to get a Handle for that resource.

Index

Constants

View Source
const (// AllUsers is a special member that denotes all users, even unauthenticated ones.AllUsers = "allUsers"// AllAuthenticatedUsers is a special member that denotes all authenticated users.AllAuthenticatedUsers = "allAuthenticatedUsers")

Variables

This section is empty.

Functions

This section is empty.

Types

typeHandle

type Handle struct {// contains filtered or unexported fields}

A Handle provides IAM operations for a resource.

funcInternalNewHandle

func InternalNewHandle(conngrpc.ClientConnInterface, resourcestring) *Handle

InternalNewHandle is for use by the Google Cloud Libraries only.

InternalNewHandle returns a Handle for resource.The conn parameter refers to a server that must support the IAMPolicy service.

funcInternalNewHandleClient

func InternalNewHandleClient(c client, resourcestring) *Handle

InternalNewHandleClient is for use by the Google Cloud Libraries only.

InternalNewHandleClient returns a Handle for resource using the givenclient implementation.

funcInternalNewHandleGRPCClient

func InternalNewHandleGRPCClient(cpb.IAMPolicyClient, resourcestring) *Handle

InternalNewHandleGRPCClient is for use by the Google Cloud Libraries only.

InternalNewHandleClient returns a Handle for resource using the givengrpc service that implements IAM as a mixin

func (*Handle)Policy

func (h *Handle) Policy(ctxcontext.Context) (*Policy,error)

Policy retrieves the IAM policy for the resource.

func (*Handle)SetPolicy

func (h *Handle) SetPolicy(ctxcontext.Context, policy *Policy)error

SetPolicy replaces the resource's current policy with the supplied Policy.

If policy was created from a prior call to Get, then the modification willonly succeed if the policy has not changed since the Get.

func (*Handle)TestPermissions

func (h *Handle) TestPermissions(ctxcontext.Context, permissions []string) ([]string,error)

TestPermissions returns the subset of permissions that the caller has on the resource.

func (*Handle)V3

func (h *Handle) V3() *Handle3

V3 returns a Handle3, which is like Handle except it setsrequestedPolicyVersion to 3 when retrieving a policy and policy.version to 3when storing a policy.

typeHandle3

type Handle3 struct {// contains filtered or unexported fields}

A Handle3 provides IAM operations for a resource. It is similar to a Handle, but provides access to newer IAM features (e.g., conditions).

func (*Handle3)Policy

func (h *Handle3) Policy(ctxcontext.Context) (*Policy3,error)

Policy retrieves the IAM policy for the resource.

requestedPolicyVersion is always set to 3.

func (*Handle3)SetPolicy

func (h *Handle3) SetPolicy(ctxcontext.Context, policy *Policy3)error

SetPolicy replaces the resource's current policy with the supplied Policy.

If policy was created from a prior call to Get, then the modification willonly succeed if the policy has not changed since the Get.

func (*Handle3)TestPermissions

func (h *Handle3) TestPermissions(ctxcontext.Context, permissions []string) ([]string,error)

TestPermissions returns the subset of permissions that the caller has on the resource.

typePolicy

type Policy struct {// This field is exported for use by the Google Cloud Libraries only.// It may become unexported in a future release.InternalProto *pb.Policy}

A Policy is a list of Bindings representing rolesgranted to members.

The zero Policy is a valid policy with no bindings.

func (*Policy)Add

func (p *Policy) Add(memberstring, rRoleName)

Add adds member member to role r if it is not already present.A new binding is created if there is no binding for the role.

func (*Policy)HasRole

func (p *Policy) HasRole(memberstring, rRoleName)bool

HasRole reports whether member has role r.

func (*Policy)Members

func (p *Policy) Members(rRoleName) []string

Members returns the list of members with the supplied role.The return value should not be modified. Use Add and Removeto modify the members of a role.

func (*Policy)Remove

func (p *Policy) Remove(memberstring, rRoleName)

Remove removes member from role r if it is present.

func (*Policy)Roles

func (p *Policy) Roles() []RoleName

Roles returns the names of all the roles that appear in the Policy.

typePolicy3

type Policy3 struct {Bindings []*pb.Binding// contains filtered or unexported fields}

A Policy3 is a list of Bindings representing roles granted to members.

The zero Policy3 is a valid policy with no bindings.

It is similar to a Policy, except a Policy3 provides direct access to thelist of Bindings.

The policy version is always set to 3.

typeRoleName

type RoleNamestring

A RoleName is a name representing a collection of permissions.

const (OwnerRoleName = "roles/owner"EditorRoleName = "roles/editor"ViewerRoleName = "roles/viewer")

Common role names.

Source Files

View all Source files

Directories

PathSynopsis
admin
apiv1
Package admin is an auto-generated package for the Identity and Access Management (IAM) API.
Package admin is an auto-generated package for the Identity and Access Management (IAM) API.
Package iam is an auto-generated package for the IAM Meta API.
Package iam is an auto-generated package for the IAM Meta API.
Package iam is an auto-generated package for the Identity and Access Management (IAM) API.
Package iam is an auto-generated package for the Identity and Access Management (IAM) API.
Package iam is an auto-generated package for the Identity and Access Management (IAM) API.
Package iam is an auto-generated package for the Identity and Access Management (IAM) API.
Package iam is an auto-generated package for the Identity and Access Management (IAM) API.
Package iam is an auto-generated package for the Identity and Access Management (IAM) API.
credentials
apiv1
Package credentials is an auto-generated package for the IAM Service Account Credentials API.
Package credentials is an auto-generated package for the IAM Service Account Credentials API.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f orF : Jump to
y orY : Canonical URL
go.dev uses cookies from Google to deliver and enhance the quality of its services and to analyze traffic.Learn more.

[8]ページ先頭

©2009-2026 Movatter.jp