Class: Google::Apis::BigqueryV2::Dataset::Access

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Access

Returns a new instance of Access.



1561
1562
1563
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1561

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

Instance Attribute Details

#datasetGoogle::Apis::BigqueryV2::DatasetAccessEntry

[Pick one] A grant authorizing all resources of a particular type in a particular dataset access to this dataset. Only views are supported for now. The role field is not required when this field is set. If that dataset is deleted and re-created, its access needs to be granted again via an update operation. Corresponds to the JSON property dataset



1497
1498
1499
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1497

def dataset
  @dataset
end

#domainString

[Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com". Maps to IAM policy member "domain:DOMAIN". Corresponds to the JSON property domain

Returns:

  • (String)


1504
1505
1506
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1504

def domain
  @domain
end

#group_by_emailString

[Pick one] An email address of a Google Group to grant access to. Maps to IAM policy member "group:GROUP". Corresponds to the JSON property groupByEmail

Returns:

  • (String)


1510
1511
1512
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1510

def group_by_email
  @group_by_email
end

#iam_memberString

[Pick one] Some other type of member that appears in the IAM Policy but isn't a user, group, domain, or special group. Corresponds to the JSON property iamMember

Returns:

  • (String)


1516
1517
1518
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1516

def iam_member
  @iam_member
end

#roleString

[Required] An IAM role ID that should be granted to the user, group, or domain specified in this access entry. The following legacy mappings will be applied: OWNER roles/bigquery.dataOwner WRITER roles/bigquery.dataEditor READER roles/bigquery.dataViewer This field will accept any of the above formats, but will return only the legacy format. For example, if you set this field to " roles/bigquery.dataOwner", it will be returned back as "OWNER". Corresponds to the JSON property role

Returns:

  • (String)


1526
1527
1528
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1526

def role
  @role
end

#routineGoogle::Apis::BigqueryV2::RoutineReference

[Pick one] A routine from a different dataset to grant access to. Queries executed against that routine will have read access to views/tables/routines in this dataset. Only UDF is supported for now. The role field is not required when this field is set. If that routine is updated by any user, access to the routine needs to be granted again via an update operation. Corresponds to the JSON property routine



1535
1536
1537
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1535

def routine
  @routine
end

#special_groupString

[Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users. Maps to similarly- named IAM members. Corresponds to the JSON property specialGroup

Returns:

  • (String)


1544
1545
1546
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1544

def special_group
  @special_group
end

#user_by_emailString

[Pick one] An email address of a user to grant access to. For example: fred@ example.com. Maps to IAM policy member "user:EMAIL" or "serviceAccount:EMAIL". Corresponds to the JSON property userByEmail

Returns:

  • (String)


1550
1551
1552
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1550

def user_by_email
  @user_by_email
end

#viewGoogle::Apis::BigqueryV2::TableReference

[Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation. Corresponds to the JSON property view



1559
1560
1561
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1559

def view
  @view
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1566

def update!(**args)
  @dataset = args[:dataset] if args.key?(:dataset)
  @domain = args[:domain] if args.key?(:domain)
  @group_by_email = args[:group_by_email] if args.key?(:group_by_email)
  @iam_member = args[:iam_member] if args.key?(:iam_member)
  @role = args[:role] if args.key?(:role)
  @routine = args[:routine] if args.key?(:routine)
  @special_group = args[:special_group] if args.key?(:special_group)
  @user_by_email = args[:user_by_email] if args.key?(:user_by_email)
  @view = args[:view] if args.key?(:view)
end