Class: Google::Apis::BigqueryV2::Dataset::Access
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryV2::Dataset::Access
- 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
-
#dataset ⇒ Google::Apis::BigqueryV2::DatasetAccessEntry
[Pick one] A grant authorizing all resources of a particular type in a particular dataset access to this dataset.
-
#domain ⇒ String
[Pick one] A domain to grant access to.
-
#group_by_email ⇒ String
[Pick one] An email address of a Google Group to grant access to.
-
#iam_member ⇒ String
[Pick one] Some other type of member that appears in the IAM Policy but isn't a user, group, domain, or special group.
-
#role ⇒ String
[Required] An IAM role ID that should be granted to the user, group, or domain specified in this access entry.
-
#routine ⇒ Google::Apis::BigqueryV2::RoutineReference
[Pick one] A routine from a different dataset to grant access to.
-
#special_group ⇒ String
[Pick one] A special group to grant access to.
-
#user_by_email ⇒ String
[Pick one] An email address of a user to grant access to.
-
#view ⇒ Google::Apis::BigqueryV2::TableReference
[Pick one] A view from a different dataset to grant access to.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Access
constructor
A new instance of Access.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Access
Returns a new instance of Access.
1766 1767 1768 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1766 def initialize(**args) update!(**args) end |
Instance Attribute Details
#dataset ⇒ Google::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
1702 1703 1704 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1702 def dataset @dataset end |
#domain ⇒ String
[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
1709 1710 1711 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1709 def domain @domain end |
#group_by_email ⇒ String
[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
1715 1716 1717 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1715 def group_by_email @group_by_email end |
#iam_member ⇒ String
[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
1721 1722 1723 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1721 def iam_member @iam_member end |
#role ⇒ String
[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
1731 1732 1733 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1731 def role @role end |
#routine ⇒ Google::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
1740 1741 1742 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1740 def routine @routine end |
#special_group ⇒ String
[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
1749 1750 1751 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1749 def special_group @special_group end |
#user_by_email ⇒ String
[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
1755 1756 1757 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1755 def user_by_email @user_by_email end |
#view ⇒ Google::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
1764 1765 1766 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1764 def view @view end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 1771 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 |