9. Trabajo con Roles, Administración de la cuenta y verificación de uso de la cuenta
En esta sección, exploraremos aspectos del modelo de seguridad de control de acceso de Snowflake, como la creación de un rol y la concesión de permisos específicos. También exploraremos otros usos de la función ACCOUNTADMIN (Administrador de cuentas), que se presentó brevemente anteriormente en el laboratorio.
Continuando con la historia del laboratorio, supongamos que un DBA junior se ha unido a Citi Bike y queremos crear un nuevo rol para él con menos privilegios que el rol predeterminado definido por el sistema de SYSADMIN.
Control de acceso basado en roles Snowflake ofrece un control de acceso muy potente y granular que dicta los objetos y la funcionalidad a los que puede acceder un usuario, así como el nivel de acceso que tiene. Para obtener más detalles, consulte la documentación de Snowflake.
Crear un nuevo rol y agregar un usuario
En la hoja de trabajo CITIBIKE_ZERO_TO_SNOWFLAKE, cambie a la función ACCOUNTADMIN para crear una nueva función. ACCOUNTADMIN encapsula los roles definidos por el sistema SYSADMIN y SECURITYADMIN. Es el rol de nivel superior en la cuenta y debe otorgarse solo a un número limitado de usuarios.
En la hoja de trabajo CITIBIKE_ZERO_TO_SNOWFLAKE, ejecute el siguiente comando:
use role accountadmin;
Observe que, en la parte superior derecha de la hoja de trabajo, el contexto ha cambiado a ACCOUNTADMIN:
Antes de que se pueda usar un rol para el control de acceso, se le debe asignar al menos un usuario. Así que vamos a crear un nuevo rol llamado JUNIOR_DBA y asignarlo a su usuario de Snowfalke. Para completar esta tarea, necesita saber su nombre de usuario, que es el nombre que usó para iniciar sesión en la interfaz de usuario.
Use los siguientes comandos para crear el rol y asignarlo a usted. Antes de ejecutar el comando GRANT ROLE, reemplace YOUR_USERNAME_VA_HERE con su nombre de usuario:
create role junior_dba;
grant role junior_dba to user YOUR_USERNAME_GOES HERE;
Si intenta realizar esta operación mientras tiene un rol como SYSADMIN, fallará debido a privilegios insuficientes. Por defecto (y diseño), el rol SYSADMIN no puede crear nuevos roles o usuarios.
Cambie el contexto de su hoja de trabajo al nuevo rol JUNIOR_DBA:
use role junior_dba;
En la parte superior derecha de la hoja de trabajo, observe que el contexto ha cambiado para reflejar el rol JUNIOR_DBA.
Además, en el panel del navegador de objetos de base de datos de la izquierda, ya no aparecen las bases de datos CITIBIKE y WEATHER. Esto se debe a que el rol JUNIOR_DBA no tiene privilegios para acceder a ellos.
Vuelva al rol ACCOUNTADMIN y otorgue a JUNIOR_DBA el privilegio USAGE requerido para ver y usar las bases de datos CITIBIKE y WEATHER:
use role accountadmin;
grant usage on database citibike to role junior_dba;
grant usage on database weather to role junior_dba;
Cambie al rol JUNIOR_DBA:
use role junior_dba;
Observe que las bases de datos CITIBIKE y WEATHER ahora aparecen en el panel del navegador de objetos de la base de datos a la izquierda. Si no aparecen, intente hacer clic en... en el panel y luego haga clic en Actualizar.
Ver la interfaz de usuario del administrador de la cuenta
Cambiemos nuestra función de control de acceso nuevamente a ACCOUNTADMIN para ver otras áreas de la interfaz de usuario accesibles solo para esta función. Sin embargo, para realizar esta tarea, use la interfaz de usuario en lugar de la hoja de trabajo.
Primero, haga clic en el ícono de Inicio en la esquina superior izquierda de la hoja de trabajo. Luego, en la esquina superior izquierda de la interfaz de usuario, haga clic en su nombre para mostrar el menú de preferencias del usuario. En el menú, vaya a Cambiar rol y seleccione ACCOUNTADMIN.
Funciones en la preferencia del usuario frente a la hoja de trabajo ¿Por qué usamos el menú de preferencias del usuario para cambiar la función en lugar de la hoja de trabajo? La sesión de la interfaz de usuario y cada hoja de trabajo tienen sus propias funciones independientes. El rol de sesión de IU controla los elementos que puede ver y a los que puede acceder en la IU, mientras que el rol de hoja de trabajo controla solo los objetos y acciones a los que puede acceder dentro del rol.
Tenga en cuenta que una vez que cambia la sesión de IU al rol ACCOUNTADMIN, hay nuevas pestañas disponibles en Cuenta.
USO
La pestaña Uso muestra lo siguiente, cada uno con su propia página:
- Organización: crédito utilizado en todas las cuentas de su organización.
- Consumo: Créditos consumidos por los DataWarehouses virtuales en la cuenta corriente.
- Almacenamiento: Cantidad promedio de datos almacenados en todas las bases de datos, etapas internas y Snowflake Failsafe en la cuenta actual durante el último mes.
- Transferencias: cantidad promedio de datos transferidos fuera de la región (para la cuenta corriente) a otras regiones durante el último mes.
Los filtros en la esquina superior derecha de cada página se pueden usar para desglosar el uso/consumo/etc. visualizaciones por diferentes medidas.
SEGURIDAD
La pestaña Seguridad contiene políticas de red creadas para la cuenta de Snowflake. Se pueden crear nuevas políticas de red seleccionando "+ Política de red" en la parte superior derecha de la página.
CONSUMO
La pestaña Facturación contiene el método de pago de la cuenta:
- Si es un cliente con contrato de Snowflake, la pestaña muestra el nombre asociado con la información de su contrato.
- Si es un cliente de Snowflake a pedido, la pestaña muestra la tarjeta de crédito utilizada para pagar mes a mes, si se ingresó una. Si no hay una tarjeta de crédito registrada, puede agregar una para continuar usando Snowflake cuando finalice su prueba.
Para la siguiente sección, permanezca en el rol ACCOUNTADMIN para la sesión de IU.
CONTACTA CON NOSOTROS
Si deseas que uno de nuestros expertos se contacte para brindarte una mayor información personalizada de nuestras soluciones y servicios, déjanos tus datos: