REST Resource: roleAssignments

Recurso: RoleAssignment

Define la asignación de un rol.

Representación JSON
{
  "roleAssignmentId": string,
  "roleId": string,
  "kind": string,
  "etag": string,
  "assignedTo": string,
  "assigneeType": enum (AssigneeType),
  "scopeType": string,
  "orgUnitId": string,
  "condition": string,
  "expirationDetails": {
    object (ExpirationDetails)
  }
}
Campos
roleAssignmentId

string (int64 format)

Es el ID de esta roleAssignment.

roleId

string (int64 format)

Es el ID del rol que se asigna.

kind

string

Tipo de recurso de la API. Siempre es admin#directory#roleAssignment.

etag

string

Es la ETag del recurso.

assignedTo

string

Es el ID único de la entidad a la que se asigna este rol, ya sea el userId de un usuario, el groupId de un grupo o el uniqueId de una cuenta de servicio, como se define en Identity and Access Management (IAM).

assigneeType

enum (AssigneeType)

Solo salida. Es el tipo de cesionario (USER o GROUP).

scopeType

string

Es el alcance en el que se asigna este rol.

Los valores aceptables son:

  • CUSTOMER
  • ORG_UNIT
orgUnitId

string

Si el rol está restringido a una unidad organizacional, contiene el ID de la unidad organizacional a la que se restringe el ejercicio de este rol.

condition

string

Es opcional. Es la condición asociada a esta asignación de rol.

Nota: La función está disponible para clientes de Enterprise Standard, Enterprise Plus, Google Workspace for Education Plus y Cloud Identity Premium.

Una RoleAssignment con el campo condition establecido solo entrará en vigencia cuando el recurso al que se accede cumpla con la condición. Si condition está vacío, el rol (roleId) se aplica al actor (assignedTo) en el alcance (scopeType) de forma incondicional.

Actualmente, se admiten las siguientes condiciones:

  • Para que el RoleAssignment solo se aplique a los Grupos de seguridad: api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group'

  • Para que el RoleAssignment no se aplique a los Grupos de seguridad: !api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.security']) && resource.type == 'cloudidentity.googleapis.com/Group'

Actualmente, las cadenas de condición deben ser textuales y solo funcionan con los siguientes roles de administrador precompilados:

  • Editor de grupos
  • Lector de grupos

La condición sigue la sintaxis de la condición de Cloud IAM.

  • Para que el RoleAssignment no se aplique a los Grupos bloqueados: !api.getAttribute('cloudidentity.googleapis.com/groups.labels', []).hasAny(['groups.locked']) && resource.type == 'cloudidentity.googleapis.com/Group'

Esta condición también se puede usar junto con una condición relacionada con la seguridad.

expirationDetails

object (ExpirationDetails)

Es opcional. Son los detalles sobre el vencimiento de esta asignación de rol.

AssigneeType

Es el tipo de identidad al que se asigna un rol.

Enums
USER Un usuario individual dentro del dominio.
GROUP Un grupo dentro del dominio.

ExpirationDetails

Son los detalles sobre el vencimiento de esta asignación de rol. Se usa para revocar el acceso automáticamente cuando se alcanza el límite de tiempo.

Representación JSON
{

  "expireTime": string
}
Campos

Campo de unión expiration.

expiration puede ser una de las siguientes opciones:

expireTime

string (Timestamp format)

Es la marca de tiempo específica del momento en que vence la asignación de rol.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Métodos

delete

Borra una asignación de rol.

get

Recupera una asignación de rol.

insert

Crea una asignación de rol.

list

Recupera una lista paginada de todas las roleAssignments.