Class IAM (2.13.0)

[IAM (Identity and Access Management)](https://cloud.google.com/pubsub/access_control) allows you to set permissions on invidual resources and offers a wider range of roles: editor, owner, publisher, subscriber, and viewer. This gives you greater flexibility and allows you to set more fine-grained access control.

For example: * Grant access on a per-topic or per-subscription basis, rather than for the whole Cloud project. * Grant access with limited capabilities, such as to only publish messages to a topic, or to only to consume messages from a subscription, but not to delete the topic or subscription.

*The IAM access control features described in this document are Beta, including the API methods to get and set IAM policies, and to test IAM permissions. Cloud Pub/Sub's use of IAM features is not covered by any SLA or deprecation policy, and may be subject to backward-incompatible changes.*

Package

@google-cloud/pubsub!

Constructors

(constructor)(pubsub, id)

  constructor 
 ( 
 pubsub 
 : 
  
 PubSub 
 , 
  
 id 
 : 
  
 string 
 ); 
 

Constructs a new instance of the IAM class

Parameters
Name Description
pubsub PubSub
id string

Properties

id

  id 
 : 
  
 string 
 ; 
 
Property Value
Type Description
string

pubsub

  pubsub 
 : 
  
 PubSub 
 ; 
 
Property Value
Type Description
PubSub

request

  request 
 : 
  
 typeof 
  
 PubSub 
 . 
 prototype 
 . 
 request 
 ; 
 
Property Value
Type Description
typeof PubSub#request

Methods

getPolicy(gaxOpts)

  getPolicy 
 ( 
 gaxOpts 
 ?: 
  
 CallOptions 
 ) 
 : 
  
 Promise<GetPolicyResponse> 
 ; 
 
Parameter
Name Description
gaxOpts CallOptions
Returns
Type Description
Promise < GetPolicyResponse >

getPolicy(callback)

  getPolicy 
 ( 
 callback 
 : 
  
 GetPolicyCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameter
Name Description
callback GetPolicyCallback
Returns
Type Description
void

getPolicy(gaxOpts, callback)

  getPolicy 
 ( 
 gaxOpts 
 : 
  
 CallOptions 
 , 
  
 callback 
 : 
  
 GetPolicyCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
gaxOpts CallOptions
callback GetPolicyCallback
Returns
Type Description
void

setPolicy(policy, gaxOpts)

  setPolicy 
 ( 
 policy 
 : 
  
 Policy 
 , 
  
 gaxOpts 
 ?: 
  
 CallOptions 
 ) 
 : 
  
 Promise<SetPolicyResponse> 
 ; 
 
Parameters
Name Description
policy Policy
gaxOpts CallOptions
Returns
Type Description
Promise < SetPolicyResponse >

setPolicy(policy, gaxOpts, callback)

  setPolicy 
 ( 
 policy 
 : 
  
 Policy 
 , 
  
 gaxOpts 
 : 
  
 CallOptions 
 , 
  
 callback 
 : 
  
 SetPolicyCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
policy Policy
gaxOpts CallOptions
callback SetPolicyCallback
Returns
Type Description
void

setPolicy(policy, callback)

  setPolicy 
 ( 
 policy 
 : 
  
 Policy 
 , 
  
 callback 
 : 
  
 SetPolicyCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
policy Policy
callback SetPolicyCallback
Returns
Type Description
void

testPermissions(permissions, gaxOpts)

  testPermissions 
 ( 
 permissions 
 : 
  
 string 
  
 | 
  
 string 
 [], 
  
 gaxOpts 
 ?: 
  
 CallOptions 
 ) 
 : 
  
 Promise<TestIamPermissionsResponse> 
 ; 
 
Parameters
Name Description
permissions string | string[]
gaxOpts CallOptions
Returns
Type Description
Promise < TestIamPermissionsResponse >

testPermissions(permissions, gaxOpts, callback)

  testPermissions 
 ( 
 permissions 
 : 
  
 string 
  
 | 
  
 string 
 [], 
  
 gaxOpts 
 : 
  
 CallOptions 
 , 
  
 callback 
 : 
  
 TestIamPermissionsCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
permissions string | string[]
gaxOpts CallOptions
callback TestIamPermissionsCallback
Returns
Type Description
void

testPermissions(permissions, callback)

  testPermissions 
 ( 
 permissions 
 : 
  
 string 
  
 | 
  
 string 
 [], 
  
 callback 
 : 
  
 TestIamPermissionsCallback 
 ) 
 : 
  
 void 
 ; 
 
Parameters
Name Description
permissions string | string[]
callback TestIamPermissionsCallback
Returns
Type Description
void
Design a Mobile Site
View Site in Mobile | Classic
Share by: