Otorgue a un usuario de RAM los permisos necesarios para usar Microservices Engine (MSE) Task Scheduling XXL-JOB Edition. El acceso a XXL-JOB requiere dos autorizaciones independientes: permisos de programación de tareas, que se otorgan mediante una directiva personalizada, y permisos de solo lectura de CloudMonitor, que se otorgan mediante una directiva del sistema.
Si utiliza un usuario de Resource Access Management (RAM), debe configurar tanto los permisos de programación de tareas como los permisos de solo lectura de CloudMonitor.
Requisitos previos
Un usuario de RAM que requiera acceso a XXL-JOB.
El ID de la instancia de XXL-JOB que desea autorizar, a menos que otorgue permisos sobre todas las instancias.
Otorgar permisos de programación de tareas
Otorgue permisos de programación de tareas de XXL-JOB mediante una directiva personalizada que combine una declaración a nivel de cuenta y una declaración a nivel de instancia.
Elegir una directiva
La siguiente tabla asigna cada caso de uso al ejemplo de directiva correspondiente.
|
Caso de uso |
Alcance del recurso |
Acciones otorgadas |
Incluye acciones de eliminación |
|
Gestionar instancias, aplicaciones y tareas en una instancia |
Una instancia: |
Todas las acciones: |
Sí |
|
Consultar instancias, aplicaciones y tareas en una instancia |
Una instancia: |
Acciones de solo lectura: |
No |
|
Consultar instancias, aplicaciones y tareas en todas las instancias |
Todas las instancias: |
Acciones de solo lectura: |
No |
La directiva de lectura y escritura otorga schedulerx3:*, lo cual incluye las acciones de eliminación DeleteCluster, DeleteApp y DeleteJobs. Como práctica recomendada, otorgue el alcance más restringido que necesite el usuario de RAM: prefiera una directiva de solo lectura en lugar de una de lectura y escritura, y prefiera una sola instancia en lugar de todas las instancias. Para otorgar un subconjunto de acciones en lugar de un comodín, especifique nombres de acciones individuales de las tablas en XXL-JOB API actions.
Ejemplos de directivas
Otorgue a un usuario de RAM permisos de lectura y escritura en una instancia:
{
"Statement": [
{
"Action": "schedulerx3:ListClusters",
"Resource": "acs:schedulerx3:*:*:*",
"Effect": "Allow"
},
{
"Action": "schedulerx3:*",
"Resource": "acs:schedulerx3:*:*:cluster/xxljob-0pp1j8om80a",
"Effect": "Allow"
}
],
"Version": "1"
}
Otorgue a un usuario de RAM permisos de solo lectura en una instancia:
{
"Statement": [
{
"Action": "schedulerx3:ListClusters",
"Resource": "acs:schedulerx3:*:*:*",
"Effect": "Allow"
},
{
"Action": [
"schedulerx3:List*",
"schedulerx3:Get*"
],
"Resource": "acs:schedulerx3:*:*:cluster/xxljob-0pp1j8om80a",
"Effect": "Allow"
}
],
"Version": "1"
}
Otorgue a un usuario de RAM permisos de solo lectura en todas las instancias de XXL-JOB:
{
"Statement": [
{
"Action": "schedulerx3:ListClusters",
"Resource": "acs:schedulerx3:*:*:*",
"Effect": "Allow"
},
{
"Action": [
"schedulerx3:List*",
"schedulerx3:Get*"
],
"Resource": "acs:schedulerx3:*:*:cluster/*",
"Effect": "Allow"
}
],
"Version": "1"
}
Otorgar permisos de solo lectura de CloudMonitor
XXL-JOB está integrado con CloudMonitor de forma predeterminada. Otorgue a su usuario de RAM la directiva del sistema para acceso de solo lectura a CloudMonitor. De lo contrario, el usuario de RAM no podrá consultar el panel de estadísticas de programación en Basic Information.
En la página Grant Permission, establezca Resource Scope en Account Level. En la sección Permission Policy, busque "CloudMonitor" y seleccione la directiva del sistema AliyunCloudMonitorReadOnlyAccess.
Para comprobar la autorización, inicie sesión como el usuario de RAM y confirme que el panel de estadísticas de programación se muestra en Basic Information.
Acciones de la API de XXL-JOB
Las siguientes tablas enumeran las acciones de la API de XXL-JOB que puede otorgar en una directiva personalizada, agrupadas por el alcance de autorización que admite cada acción. En ambas tablas, Read-only indica si la acción solo lee datos. Yes significa que la acción es de solo lectura y está cubierta por los comodines schedulerx3:List* y schedulerx3:Get* utilizados en los ejemplos de directivas de solo lectura.
Acciones que solo admiten autorización a nivel de cuenta
La siguiente acción solo admite autorización a nivel de cuenta y no se puede filtrar mediante permisos a nivel de instancia. Otórguela en la ruta de recurso a nivel de cuenta acs:schedulerx3:*:*:*.
|
Acción |
Descripción |
Solo lectura |
|
ListClusters |
Consulta la lista de clústeres. |
Sí |
Acciones que admiten autorización a nivel de instancia y a nivel de acción
Las siguientes acciones admiten autorización a nivel de instancia y permisos de RAM a nivel de acción.
|
Categoría |
Acción |
Descripción |
Solo lectura |
|
Consulta |
ListAppNames |
Consulta la lista de nombres de aplicaciones. |
Sí |
|
Consulta |
ListApps |
Consulta la lista de aplicaciones. |
Sí |
|
Consulta |
ListCalendarNames |
Consulta la lista de nombres de calendarios personalizados. |
Sí |
|
Consulta |
ListExecutors |
Consulta la lista de ejecutores. |
Sí |
|
Consulta |
ListJobs |
Consulta la lista de tareas. |
Sí |
|
Consulta |
ListJobExecutions |
Consulta la lista de ejecuciones de tareas. |
Sí |
|
Consulta |
ListScheduleTimes |
Consulta las próximas cinco horas programadas. |
Sí |
|
Creación |
CreateCluster |
Crea un clúster. |
No |
|
Creación |
CreateApp |
Crea una aplicación de XXL-JOB. |
No |
|
Creación |
CreateJob |
Crea una tarea de XXL-JOB. |
No |
|
Actualización |
UpdateCluster |
Actualiza un clúster. |
No |
|
Actualización |
UpdateApp |
Actualiza una aplicación de XXL-JOB. |
No |
|
Actualización |
UpdateJob |
Actualiza una tarea de XXL-JOB. |
No |
|
Eliminación |
DeleteCluster |
Elimina un clúster. |
No |
|
Eliminación |
DeleteApp |
Elimina una aplicación. |
No |
|
Eliminación |
DeleteJobs |
Elimina varias tareas. |
No |
|
Operación de O&M |
OperateDesignateExecutors |
Designa ejecutores para una tarea. |
No |
|
Operación de O&M |
OperateDisableJobs |
Deshabilita varias tareas. |
No |
|
Operación de O&M |
OperateEnableJobs |
Habilita varias tareas. |
No |
|
Operación de O&M |
OperateExecuteJob |
Ejecuta una tarea una vez. |
No |
|
Operación de O&M |
OperateRerunJob |
Vuelve a ejecutar las ejecuciones de tareas de un periodo de tiempo especificado. |
No |
|
Operación de O&M |
OperateRetryJobExecution |
Reintenta ejecuciones de tareas con errores. |
No |
|
Operación de O&M |
OperateStopJobExecution |
Detiene ejecuciones de tareas en curso. |
No |