Todos los productos
Search
Centro de documentos

Object Storage Service:Gestión de permisos de acceso a archivos (SDK de Ruby)

Última actualización: Oct 09, 2026

Además de las listas de control de acceso (ACL) de bucket, Object Storage Service (OSS) ofrece ACL de objeto. Configure la ACL de un objeto al cargarlo o modifíquela después de la carga.

ACL de objetos

Un objeto cuenta con cuatro permisos de lectura y escritura:

Nota

La ACL de un objeto tiene prioridad sobre la ACL del bucket donde se almacena. Por ejemplo, si la ACL de un objeto en un bucket privado se establece como public-read, todos los usuarios, incluidos los anónimos, pueden leer el objeto.

Tipo de permiso

Descripción

Valor del permiso

Heredado del bucket

Si no configura la ACL de un objeto, este adopta la misma ACL que el bucket donde se almacena.

Aliyun::OSS::ACL::DEFAULT

Privado

Solo el propietario del objeto puede ejecutar operaciones de lectura y escritura. Los demás usuarios no tienen acceso al objeto.

Aliyun::OSS::ACL::PRIVATE

Lectura pública

Únicamente el propietario del objeto puede ejecutar operaciones de escritura. Los demás usuarios, incluidos los anónimos, solo pueden leer el objeto.

Aviso

Esta configuración puede provocar accesos no autorizados y costos inesperados. Tenga precaución al usar esta ACL.

Aliyun::OSS::ACL::PUBLIC_READ

Lectura y escritura públicas

Todos los usuarios, incluidos los anónimos, pueden ejecutar operaciones de lectura y escritura en el objeto.

Aviso

Esta ACL permite que cualquier usuario acceda al objeto y escriba datos en él por internet, lo cual puede generar accesos no autorizados, costos inesperados o cargas de contenido prohibido. No establezca la ACL del objeto como lectura y escritura públicas a menos que sea estrictamente necesario.

Aliyun::OSS::ACL::PUBLIC_READ_WRITE

Ejemplos

A continuación se muestra un ejemplo de código para configurar y obtener la ACL de un objeto:

require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
  # The China (Hangzhou) region is used as an example. Replace the endpoint with the one for your region.
  endpoint: 'https://oss-cn-hangzhou.aliyuncs.com',
  # Obtain access credentials from environment variables. Before you run this sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are set.
  access_key_id: ENV['OSS_ACCESS_KEY_ID'],
  access_key_secret: ENV['OSS_ACCESS_KEY_SECRET']
)
# Specify the bucket name. For example, examplebucket.
bucket = client.get_bucket('examplebucket')
# Specify the full path of the object. The full path cannot contain the bucket name. For example, exampledir/example.txt.
# Get the ACL of the object that is set during the upload.
acl = bucket.get_object_acl('exampledir/example.txt')
puts acl
# Modify the ACL of the object.
bucket.set_object_acl('exampledir/example.txt', Aliyun::OSS::ACL::PUBLIC_READ)
acl = bucket.get_object_acl('exampledir/example.txt')
puts acl                

Referencias

  • Para más información sobre la operación de API que permite configurar la ACL de un objeto, consulte PutObjectACL.

  • Para más detalles acerca de la operación de API que permite consultar la ACL de un objeto, consulte GetObjectACL.