Class: Google::Apis::ServiceusageV1::AuthorizationRule

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/serviceusage_v1/classes.rb,
generated/google/apis/serviceusage_v1/representations.rb,
generated/google/apis/serviceusage_v1/representations.rb

Overview

Authorization rule for API services. It specifies the permission(s) required for an API element for the overall API request to succeed. It is typically used to mark request message fields that contain the name of the resource and indicates the permissions that will be checked on that resource. For example: package google.storage.v1; message CopyObjectRequest string source = 1 [ (google.api.authz).permissions = "storage.objects.get"]; string destination = 2 [ (google.api.authz).permissions = "storage.objects.create,storage.objects.update"];

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ AuthorizationRule

Returns a new instance of AuthorizationRule



375
376
377
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 375

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#permissionsString

The required permissions. The acceptable values vary depend on the authorization system used. For Google APIs, it should be a comma-separated Google IAM permission values. When multiple permissions are listed, the semantics is not defined by the system. Additional documentation must be provided manually. Corresponds to the JSON property permissions

Returns:

  • (String)


367
368
369
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 367

def permissions
  @permissions
end

#selectorString

Selects the API elements to which this rule applies. Refer to selector for syntax details. Corresponds to the JSON property selector

Returns:

  • (String)


373
374
375
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 373

def selector
  @selector
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



380
381
382
383
# File 'generated/google/apis/serviceusage_v1/classes.rb', line 380

def update!(**args)
  @permissions = args[:permissions] if args.key?(:permissions)
  @selector = args[:selector] if args.key?(:selector)
end