Las acciones de privilegio definen las operaciones que un usuario de base de datos o un rol personalizado pueden realizar en los procesadores de flujos dentro de un espacio de trabajo de Stream Processing. Asigne solo las acciones de privilegio que un usuario necesite a ese usuario o a un rol personalizado.
Todas las acciones de privilegio se aplican a todo el espacio de trabajo de Stream Processing. No puedes limitarlas a procesadores individuales con nombre dentro de un espacio de trabajo de Stream Processing. Todas las acciones son válidas solo en instancias de Atlas Stream Processing.
Un usuario con el rol atlasAdmin o readWriteAnyDatabase puede realizar todas las acciones de Stream Processing. Un usuario con el rol readAnyDatabase puede realizar el subconjunto de solo lectura. Para obtener más información, consulte Resumen de roles integrados.
Si un usuario carece del privilegio necesario para una acción, el comando devuelve MongoServerError[Unauthorized]: not authorized: missing privilege for action <privilege-action> on resource <resource>.
Para crear un rol personalizado con acciones de privilegio específicas de Atlas Stream Processing, consulte Agregar roles personalizados.
Resumen de roles integrados
En la siguiente tabla se muestran los roles integrados que incluyen acciones de privilegio de Stream Processing de Atlas.
Rol de funcionalidad incorporada | Acciones de privilegio incluidas |
|---|---|
Todas las acciones de privilegio de Atlas Stream Processing | |
| |
Todas las acciones de privilegio de Atlas Stream Processing |
Acciones de Atlas Stream Processing
createStreamProcessorAutoriza el método
sp.createStreamProcessor(), que define un nuevo procesador de transmisión con nombre con su pipeline y opciones.Asigne esta acción para permitir a los usuarios crear procesadores de transmisión con nombre antes de iniciarlos.
Nota
Atlas Stream Processing valida el formato de nivel en el momento de la creación. Atlas Stream Processing aplica el tamaño máximo de nivel cuando inicia el procesador, no cuando lo crea.
dropStreamProcessorAutoriza el método
sp.processor.drop(), que elimina permanentemente un procesador de Stream con nombre.Asigne esta acción para permitir a los usuarios borrar Stream Processing. Un usuario con esta acción puede borrar cualquier procesador en el espacio de trabajo de Stream Processing. Ningún mecanismo restringe esta acción a procesadores con nombre específicos.
getStreamProcessorAutoriza el comando
getStreamProcessor, que recupera el estado y la configuración de un procesador de transmisión con nombre. Los resultados incluyen el nombre, el estado, el pipeline, el mensaje de error y la hora del último cambio de estado.Asigne esta acción para permitir a los usuarios inspeccionar el estado de un procesador de transmisión específico.
listStreamConnectionsAutoriza el método
sp.listConnections(), que enumera todas las conexiones en el registro de conexiones del espacio de trabajo de Stream Processing. Según el tipo de conexión, los resultados pueden incluir el nombre de la conexión, el tipo, el nombre del clúster, el ID del proyecto, la región, los servidores de arranque y los campos de la cuenta de almacenamiento.Asigna esta acción para permitir a los usuarios ver las fuentes de datos y los receptores disponibles para los procesadores de Stream Processing en el espacio de trabajo de Stream Processing.
listStreamProcessorsAutoriza el método
sp.listStreamProcessors(), que enumera todos los procesadores de streaming en un espacio de trabajo de Stream Processing. Los resultados pueden incluir nombre, ID, última hora de modificación, estado, nivel, mensaje de error, recuento de trabajadores, pipeline, fila de letra muerta y última hora de cambio de estado. Puede pasar un filtro para reducir los resultados.Asigne esta acción para permitir a los usuarios descubrir todos los procesadores de Stream Processing en un espacio de trabajo de Stream Processing. Los drivers y las herramientas también requieren esta acción para rellenar las listas de procesadores. El comando devuelve todos los procesadores en el espacio de trabajo de Stream Processing. Ningún mecanismo restringe la visibilidad a procesadores específicos con nombre.
modifyStreamProcessorAutoriza el método
sp.processor.modify(), que modifica un procesador de transmisión existente.Asigne esta acción para permitir a los usuarios actualizar la configuración de un procesador de transmisión sin borrarlo y volver a crearlo.
processStreamProcessorAutoriza el comando
processStreamProcessor, que ejecuta un pipeline de procesamiento de transmisión en modo de una sola vez sin crear un procesador con nombre.Asigne esta acción para permitir a los usuarios ejecutar un pipeline en modo de una sola moda.
Nota
Para ejecutar el método mongosh
sp.process(), asigne también la acción de privilegiosampleStreamProcessor.sp.process()utiliza el mecanismo de muestra internamente y requiere ambos privilegios.
sampleStreamProcessorAutoriza el método
sp.processor.sample()y los comandos subyacentesstartSampleStreamProcessorygetMoreSampleStreamProcessor. UtilicestartSampleStreamProcessorpara iniciar una sesión de muestreo en un procesador de transmisión con nombre en ejecución. UtilicegetMoreSampleStreamProcessorpara recuperar el siguiente lote de resultados. El tamaño de lote por defecto es 5 cuandobatchSizees 0 o se omite.Asigne esta acción para permitir a los usuarios previsualizar la salida en vivo de un procesador de transmisión en ejecución o paginar a través de los resultados de la muestra. La sesión de muestreo se adjunta a la salida en vivo del procesador. El procesador produce resultados solo mientras se ejecuta.
startStreamProcessorAutoriza el método
sp.processor.start(), que inicia o reanuda un procesador de transmisión con nombre.Asigne esta acción para permitir a los usuarios iniciar o reanudar un Stream Processing con nombre.
stopStreamProcessorAutoriza el método
sp.processor.stop(), que detiene un procesador de transmisión con nombre en ejecución.Asigne esta acción para permitir que los usuarios pausen o detengan un procesador de flujos en ejecución.
streamProcessorStatsAutoriza el método
sp.processor.stats(), que utiliza el comandogetStreamProcessorStatspara recuperar métricas operativas para un procesador de Stream Processing. Atlas Stream Processing omite el documento de estadísticas cuando no hay métricas disponibles. Paseverbose: truepara más detalles. El modo detallado no requiere un privilegio independiente.Asigne esta acción para permitir a los usuarios supervisar el rendimiento, las tasas de error o las métricas operativas de un procesador de transmisión.