Opcionalmente, al iniciar una nueva instancia alojada por el cliente de Looker, puedes aprovisionar automáticamente la instancia con una clave de licencia, una URL de host y una cuenta de usuario inicial.
Aprovisionar automáticamente una instancia nueva con un usuario de correo electrónico
Al iniciarse por primera vez, Looker analiza el directorio looker
, donde se encuentra el archivo JAR, para buscar un archivo con el nombre provision.yml
. El formato de este archivo es el siguiente:
license_key: "1234-5678-ABCD-EFGH-IJKL"
host_url: "https://looker.mycompany.com"
user:
first_name: "Ariel"
last_name: "Q"
email: "arielq@altostrat.com"
password: "password123"
Si la instancia de Looker es nueva y aún no se ha configurado, se aprovisionará con la clave de licencia proporcionada y una cuenta de usuario con la información indicada.
Si Looker ya se ha aprovisionado, los valores de la clave de licencia y la URL de host sustituirán a los que se hayan definido en la instancia. La información del usuario se ignorará. Este enfoque es útil para actualizar una instancia de staging de Looker con una copia reciente de la base de datos interna de una instancia de producción, al tiempo que se mantiene una clave de licencia y una URL independientes para el servidor de staging.
Aprovisionar automáticamente una instancia nueva con un usuario de la API
Al iniciar una nueva instancia de Looker, puedes aprovisionar un usuario de la API inicial de forma programática. Puedes aprovisionar un usuario de la API o un usuario de correo electrónico, pero Looker no admite el aprovisionamiento de un usuario de la API y un usuario de correo electrónico al mismo tiempo.
Generar credenciales de API
Para aprovisionar un usuario de la API, genera un ID de cliente y un secreto de cliente que Looker leerá y guardará en la base de datos. Estos son los requisitos de estas credenciales:
- El ID de cliente debe tener 20 caracteres.
- El secreto de cliente debe tener 24 caracteres.
- Ambas cadenas deben poder incluirse en el cuerpo de una solicitud
POST
. Por este motivo, le recomendamos que utilice solo caracteres alfanuméricos para el ID de cliente y el secreto de cliente.
Por ejemplo, Looker usa el siguiente código para generar estas credenciales de forma programática:
require 'securerandom'
TOKEN_SYMBOLS = "bcdfghjkmnpqrstvwxyzBCDFGHJKMNPQRSTVWXYZ23456789".freeze
def generate_token(size)
Array.new(size).map { TOKEN_SYMBOLS[SecureRandom.random_number(TOKEN_SYMBOLS.size)] }.join
end
Este código evita los caracteres ambiguos para que las cadenas sean menos propensas a errores.
También puedes usar el comando openssl
para generar cadenas adecuadas:
openssl rand -hex 10
El número que aparece al final del comando openssl
es el número de bytes de la cadena, por lo que debes usar 10
para el ID de cliente y 12
para el secreto de cliente.
Aprovisionar el usuario de la API
Para aprovisionar un usuario de la API al inicio, asegúrate de tener un archivo provision.yml
que incluya tu clave de licencia y la URL del host en el directorio looker
. Por ejemplo:
license_key: "1234-5678-ABCD-EFGH-IJKL"
host_url: "https://looker.mycompany.com"
Crea un archivo llamado api-provision.yml
con los permisos 0600
en el directorio looker
que incluya la información del usuario de la API. Por ejemplo:
user:
first_name: "Ariel"
last_name: "Q"
client_id: "M9hZb8vRh9bSZzdPxw42"
client_secret: "NMnqBVbHqPsPzTvbZk6xZfV3"
Te recomendamos que almacenes estas credenciales en un gestor de secretos fuera de este archivo, ya que se eliminará al inicio una vez que la instancia de Looker haya procesado y creado el usuario en la base de datos.
Al iniciarse, si la instancia no tiene usuarios, Looker crea un usuario de la API de administrador de Looker con estas credenciales y elimina el archivo api-provision.yml
del disco.
Una vez que hayas iniciado sesión como el nuevo usuario, debes crear al menos otro usuario administrador, ya que Looker eliminará automáticamente al usuario de la API aprovisionado.
Eliminación automática de credenciales aprovisionadas
El usuario de la API aprovisionado solo se debe usar para aprovisionar una instancia nueva. No se debe mantener en tu instancia indefinidamente.
Looker elimina automáticamente el usuario de la API aprovisionado cuando se cumple una de las siguientes condiciones:
- Un usuario administrador distinto del usuario de la API aprovisionado ha iniciado sesión en la instancia.
- Han pasado 50 minutos desde que el usuario de la API aprovisionado inició sesión por primera vez.
Por lo tanto, es importante que cree al menos un usuario administrador adicional inmediatamente después de iniciar sesión por primera vez como usuario aprovisionado.