Class: Google::Apis::CloudsearchV1::ItemAcl

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

Overview

Access control list information for the item. For more information see https://developers.google.com/cloud-search/docs/guides/index-your-data#acls

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ItemAcl

Returns a new instance of ItemAcl.



1852
1853
1854
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1852

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

Instance Attribute Details

#acl_inheritance_typeString

Sets the type of access rules to apply when an item inherits its ACL from a parent. This should always be set in tandem with the inheritAclFrom field. Also, when the inheritAclFrom field is set, this field should be set to a valid AclInheritanceType. Corresponds to the JSON property aclInheritanceType

Returns:

  • (String)


1807
1808
1809
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1807

def acl_inheritance_type
  @acl_inheritance_type
end

#denied_readersArray<Google::Apis::CloudsearchV1::Principal>

List of principals who are explicitly denied access to the item in search results. While principals are denied access by default, use denied readers to handle exceptions and override the list allowed readers. The maximum number of elements is 100. Corresponds to the JSON property deniedReaders



1815
1816
1817
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1815

def denied_readers
  @denied_readers
end

#inherit_acl_fromString

Name of the item to inherit the Access Permission List (ACL) from. Note: ACL inheritance only provides access permissions to child items and does not define structural relationships, nor does it provide convenient ways to delete large groups of items. Deleting an ACL parent from the index only alters the access permissions of child items that reference the parent in the inheritAclFrom field. The item is still in the index, but may not visible in search results. By contrast, deletion of a container item also deletes all items that reference the container via the containerName field. The maximum length for this field is 1536 characters. Corresponds to the JSON property inheritAclFrom

Returns:

  • (String)


1832
1833
1834
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1832

def inherit_acl_from
  @inherit_acl_from
end

#ownersArray<Google::Apis::CloudsearchV1::Principal>

Optional. List of owners for the item. This field has no bearing on document access permissions. It does, however, offer a slight ranking boosts items where the querying user is an owner. The maximum number of elements is 5. Corresponds to the JSON property owners



1840
1841
1842
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1840

def owners
  @owners
end

#readersArray<Google::Apis::CloudsearchV1::Principal>

List of principals who are allowed to see the item in search results. Optional if inheriting permissions from another item or if the item is not intended to be visible, such as virtual containers. The maximum number of elements is 1000. Corresponds to the JSON property readers



1850
1851
1852
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1850

def readers
  @readers
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1857
1858
1859
1860
1861
1862
1863
# File 'generated/google/apis/cloudsearch_v1/classes.rb', line 1857

def update!(**args)
  @acl_inheritance_type = args[:acl_inheritance_type] if args.key?(:acl_inheritance_type)
  @denied_readers = args[:denied_readers] if args.key?(:denied_readers)
  @inherit_acl_from = args[:inherit_acl_from] if args.key?(:inherit_acl_from)
  @owners = args[:owners] if args.key?(:owners)
  @readers = args[:readers] if args.key?(:readers)
end