Impostazioni amministratore - Attributi utente

Gli attributi utente offrono un'esperienza personalizzata per ogni utente di Looker. Un amministratore di Looker definisce un attributo utente e poi applica un valore dell'attributo a un gruppo di utenti o a singoli utenti.

Gli amministratori possono anche definire gli attributi utente per i quali sono gli utenti stessi a fornire i valori, ad esempio password o dati di contatto. In vari punti di Looker è possibile fare riferimento agli attributi utente per offrire un'esperienza personalizzata a ciascun utente.

Looker include automaticamente alcuni attributi utente, ad esempio email, first_name, landing_page, last_name, full_name, ID, timezone (se configurato), locale e number_format.

Visualizzazione degli attributi utente

Per visualizzare l'elenco degli attributi utente, vai alla pagina Attributi utente nella sezione Utenti del menu Amministrazione.

La tabella degli attributi utente fornisce il nome, l'etichetta e il tipo di ciascun attributo utente (per ulteriori informazioni, consulta la sezione seguente). Inoltre, la tabella fornisce un pulsante per le azioni che puoi intraprendere per l'attributo utente. Per alcuni attributi viene visualizzato "Predefinito di sistema" anziché un pulsante per le azioni, il che significa che Looker li crea automaticamente per ogni utente. Gli attributi utente predefiniti di sistema sono riservati da Looker per uso interno e non possono essere modificati.

Creazione di attributi utente

Per definire un attributo utente, fai clic sul pulsante Crea attributo utente nella pagina Attributi utente della sezione Utenti del menu Amministrazione. Ogni attributo utente ha le seguenti impostazioni:

  • Nome: il nome dell'attributo utente, da utilizzare in ambienti basati su testo come LookML (i nomi possono contenere solo lettere minuscole, numeri e trattini bassi).
  • Etichetta: la versione del nome facile da usare. Per impostazione predefinita, sarà il nome dell'attributo, con i trattini bassi sostituiti da spazi e ogni parola in maiuscolo. Tuttavia, l'etichetta può essere modificata in base alle esigenze.
  • Tipo di dati: questa impostazione viene utilizzata per verificare che agli utenti vengano assegnati valori validi per questo attributo utente. Il tipo di dati dell'attributo utente può essere uno dei seguenti:

    • Stringa: seleziona questa opzione per creare un attributo utente che corrisponda esattamente a un valore di stringa, ad esempio un nome utente. Per utilizzare più valori di stringa o un'espressione di filtro di Looker nel valore dell'attributo utente, seleziona l'opzione Filtro stringa (avanzato). Se vuoi che l'attributo utente venga trattato come una stringa letterale, assicurati di includere virgolette singole ' nella sintassi, come in questo esempio: '{{ _user_attributes['name_of_attribute'] }}'
    • Numero: seleziona questa opzione per specificare un singolo numero, ad esempio il numero di un dipendente. Per utilizzare un intervallo di numeri o un'espressione di filtro di Looker, utilizza invece il Filtro numeri (avanzato).
    • Data/ora: seleziona questa opzione per specificare una singola data o ora, ad esempio la data di nascita dell'utente. Per utilizzare un intervallo di date o un'espressione di filtro di Looker, utilizza invece il Filtro data/ora (avanzato).
    • URL relativo: seleziona questa opzione per specificare un URL relativo, ad esempio /browse/boards/2, che rimandi a contenuti specifici come una bacheca, una cartella o un file Markdown (ad esempio un file README o un documento in un progetto) nella tua istanza di Looker. L'attributo utente landing_page, ad esempio, ha un tipo di dati URL relativo e può essere utilizzato per specificare una home page specifica per un utente o un gruppo.
    • Filtro stringa (avanzato): seleziona questa opzione per consentire più valori di stringa o un'espressione di filtro di Looker nell'attributo utente. Consulta la pagina della documentazione Espressioni di filtro per un elenco di espressioni di filtro che puoi utilizzare per le stringhe.
    • Filtro numeri (avanzato): seleziona questa opzione per consentire un intervallo di valori numerici o un'espressione di filtro di Looker nell'attributo utente. Consulta la pagina della documentazione Espressioni di filtro per un elenco di espressioni di filtro che puoi utilizzare per i numeri.
    • Filtro data/ora (avanzato): seleziona questa opzione per consentire un intervallo di date o un'espressione di filtro di Looker nell'attributo utente. Consulta la pagina della documentazione Espressioni di filtro per un elenco di espressioni di filtro che puoi utilizzare per data e ora.

    Utilizza i tipi di dati Filtro stringa (avanzato), Filtro numeri (avanzato) e Filtro data/ora (avanzato) per inserire valori utilizzando le espressioni di filtro di Looker, che restituiranno un intervallo di valori per un attributo utente.

  • Accesso utente: puoi scegliere il livello di visibilità e modifica degli utenti per un attributo utente:

    • Nessuna: non verrà visualizzata nelle pagine degli account degli utenti.
    • Visualizza: verrà visualizzato nelle pagine degli account degli utenti, ma non sarà modificabile.
    • Modifica: viene visualizzata nelle pagine degli account degli utenti e può essere impostata dall'utente.
  • Nascondi valori: anche se gli attributi utente sono visibili agli utenti, se imposti questa opzione su , i valori degli attributi utente vengono mascherati, il che è utile per le password o altre informazioni sensibili. Se imposti questo valore su , viene mascherato anche il valore dell'attributo utente nei menu a discesa degli attributi utente nella pagina Impostazioni connessione. Una volta impostato su , questo valore non può più essere modificato in No. Quando imposti Nascondi valori su , devi anche specificare una lista consentita di domini consentiti come destinazione per l'attributo utente.

  • Lista consentita di domini: quando nascondi i valori di un nuovo attributo utente, devi specificare anche una lista consentita di domini composta dagli URL a cui può essere inviato l'attributo, ad esempio i nomi host per le connessioni al database e gli URL per le integrazioni HTTPS Git del progetto. Puoi utilizzare il carattere jolly (*) per attivare la pubblicazione su più pagine dello stesso sito. Dopo aver specificato una lista consentita di domini, l'attributo utente può essere inviato solo alle destinazioni che hai elencato.

    Dopo aver specificato la lista consentita del dominio per questo attributo utente, se all'attributo utente sono stati assegnati valori, per un utente, per un gruppo o impostando un valore predefinito, non puoi modificare la lista consentita per rendere gli URL meno restrittivi. Puoi solo rendere gli URL più restrittivi o rimuoverli dalla lista consentita. Ad esempio, se la lista consentita di domini include una voce my_domain/route/*, non puoi modificarla in un secondo momento in my_domain/*. Se devi rendere la lista consentita meno restrittiva, elimina tutti i valori esistenti assegnati all'attributo utente, inclusi i valori predefiniti.

  • Imposta un valore predefinito: seleziona questa casella di controllo per impostare un valore predefinito nel caso in cui non venga assegnato un valore a un utente.

Dopo aver definito un attributo utente, puoi assegnare valori a singoli utenti o a gruppi di utenti facendo clic sulle schede Valori utente e Valori gruppo nella pagina.

Assegnare valori a singoli utenti

Dopo aver definito un attributo utente, puoi assegnarne un valore a un singolo utente:

  1. Fai clic sulla scheda Valori utente nella pagina Attributi utente della sezione Utenti del menu Amministrazione.
  2. Scegli l'utente a cui assegnare un valore nel menu a discesa. Viene visualizzata una tabella di valori applicabili all'utente.
  3. Fai clic sul pulsante Imposta valore per utente.
  4. Inserisci il nuovo valore nel campo Nuovo valore.
  5. Fai clic su Salva.

Quando un valore viene assegnato a un singolo utente, sempre ha la precedenza su tutti i valori assegnati ai gruppi dell'utente. La scheda Valori utente mostra quando a un attributo utente è stato assegnato un valore personalizzato che sostituisce un valore di gruppo. Accanto ai valori sostituiti verrà visualizzato il testo "Sostituiti" e questi valori non verranno presi in considerazione. Il testo "Valore corrente" viene visualizzato accanto al valore dell'attributo utente attivo.

Per assegnare più valori a un attributo utente, utilizza il tipo di dati Filtro stringa (avanzato) e inserisci più valori separati da virgole. Assicurati che non ci siano spazi tra i valori. Ad esempio, potresti inserire la stringa: Executive, Management, Contributors.

Per assegnare a un amministratore di Looker o a un altro utente tutti i valori possibili, utilizza un valore jolly nell'attributo utente:

  • Per concedere a un amministratore o a un altro utente l'accesso a tutti i valori di un campo di stringa, imposta il tipo di dati dell'attributo utente su Filtro stringa (avanzato) e utilizza un valore %, NULL.

  • Per concedere a un amministratore o a un altro utente l'accesso a tutti i valori di un campo numerico, imposta il tipo di dati dell'attributo utente su Filtro numeri (avanzato) e utilizza un valore <0, >=0, NULL.

Assegnare valori ai gruppi di utenti

Puoi assegnare un valore per un attributo utente a un gruppo di utenti. Nella pagina Attributi utente del riquadro Amministrazione, seleziona Modifica a destra dell'attributo che vuoi impostare. Poi segui questi passaggi:

  1. Fai clic sulla scheda Valori gruppo.
  2. Fai clic sul pulsante + Aggiungi gruppo.
  3. Scegli il gruppo a cui assegnare un valore nel menu a discesa.
  4. Inserisci il valore che il gruppo deve avere nel campo Valore.
  5. Fai clic su Salva.

Quando un valore viene assegnato a più gruppi, devi decidere quale gruppo deve avere la precedenza, nel caso in cui un utente appartenga a più gruppi. Per farlo, trascina i gruppi nell'ordine in cui devono essere applicati. Ogni gruppo ha la precedenza sui gruppi elencati sotto.

Ad esempio, potresti avere i gruppi Team dirigente e Team di gestione. Gli amministratori sono anche gestori, quindi fanno parte di entrambi i gruppi. Se trascini il gruppo Gruppo dirigente nella parte superiore dell'elenco, ai relativi membri verrà assegnato il valore Dirigente anziché Gestore.

Se un utente ha impostato un valore personalizzato per un attributo utente, il valore impostato dall'utente sostituisce qualsiasi valore assegnato a un gruppo a cui l'utente appartiene.

Dove possono essere utilizzati gli attributi utente?

Gli attributi utente hanno le seguenti funzioni:

Connessioni al database

A host, porta, database, nome utente, password e schema di una connessione è possibile assegnare il valore di un attributo utente. Il campo dell'host di connessione non accetta un attributo utente con un livello di Accesso utente impostato su Modificabile.

Questi attributi utente rendono la connessione specifica per l'utente che esegue una query. È possibile fare riferimento agli attributi utente anche nel campo Parametri JDBC aggiuntivi, che personalizza la stringa di connessione JDBC. Quando un utente esegue una query utilizzando la connessione, vengono applicati i valori degli attributi utente assegnati all'utente, consentendo di personalizzare la connessione in base all'utente.

Configurazione

Qualsiasi connessione può essere configurata per utilizzare gli attributi utente dalla pagina Connessioni nella sezione Amministrazione di Looker. Per informazioni sulla pagina Connessioni, consulta la pagina della documentazione Impostazioni amministratore - Connessioni. Per creare una nuova connessione, fai clic su Aggiungi connessione. Per configurare una connessione esistente, fai clic su Modifica accanto alla connessione.

Se un input può essere impostato su un attributo utente, accanto all&#Looker viene visualizzato il pulsante Attributo utente.

Fai clic sul pulsante Attributo utente per visualizzare un menu a discesa che ti consente di scegliere l'attributo utente desiderato. L'elenco mostra il nome dell'attributo utente con il valore dell'attributo utente dell'utente corrente tra parentesi.

Per fare riferimento a un attributo utente nel campo Parametri JDBC aggiuntivi, utilizza la stessa sintassi del linguaggio Liquid per la creazione dei modelli disponibile in LookML. Gli attributi utente vengono resi disponibili tramite la variabile Liquid _user_attributes. Ad esempio, per fare riferimento a un attributo utente denominato my_jdbc_param_attribute, utilizza la seguente sintassi:

my_jdbc_param={{ _user_attributes['name_of_attribute'] }}

Caso d'uso: applicazione di autorizzazioni a livello di database in Looker

Se il tuo database ha account diversi con varie limitazioni di accesso, puoi utilizzare le autorizzazioni del database in Looker. Parametrizza il nome utente e la password di una connessione in modo che ogni utente si connetta con le credenziali appropriate per il proprio livello di accesso al database. Sebbene ciò garantisca che gli utenti non vedano i dati a cui non dovrebbero avere accesso, non influisce sulle esplorazioni, sulle dimensioni e sulle misure che vengono mostrate in Looker.

Ad esempio, se un utente è configurato per connettersi al database con un account che gli impedisce di vedere una colonna credit_card_number nella tabella user, qualsiasi dimensione che utilizza questa colonna del database viene comunque visualizzata in Looker. Riceve un errore dal database se tenta di eseguire una query che include la dimensione.

Caso d'uso: utilizzo di un modello per più database identici

Supponiamo che tu abbia più database con lo stesso schema esatto, ad esempio quando i dati di ciascun cliente sono isolati in un proprio database per misure di sicurezza dei dati (come la conformità all'HIPAA). Oppure potresti volere che i tuoi sviluppatori LookML eseguano query su una copia di sviluppo di un database di produzione.

Se questi database si trovano sullo stesso server di database, non è necessario configurare connessioni e modelli separati. Imposta invece il database di una connessione su un attributo utente e ogni utente verrà indirizzato al database specificato nel relativo valore per l'attributo utente Database Name.

Azioni sui dati

Le azioni sui dati possono essere configurate per includere determinati attributi utente con il relativo payload JSON. Utilizzalo per inviare informazioni specifiche dell'utente insieme ai dati, ad esempio le credenziali per eseguire un'operazione su un determinato servizio.

Configurazione

Per includere un attributo utente in un'azione sui dati, aggiungi un blocco user_attribute_param alla definizione action. Ogni blocco accetta due parametri:

  • user_attribute: il nome dell'attributo utente
  • name: il nome da utilizzare nel payload JSON

Questo esempio utilizza due attributi utente, salesforce_username e salesforce_password, per memorizzare le credenziali Salesforce di ciascun utente in Looker. Quando un utente esegue l'azione Aggiorna nei dati di Salesforce, Looker invia le credenziali di Salesforce con il payload JSON, che il server di ricezione può utilizzare per l'autenticazione su Salesforce.

dimension: stage_name {
  type: string
  sql: ${TABLE}.stage_name;;
  action: {
    label: "Update in Salesforce"
    url: "https://example.com/my_salesforce_url"
    user_attribute_param: {
      user_attribute: salesforce_username
      name: "username"
    }
    user_attribute_param: {
      user_attribute: salesforce_password
      name: "password"
    }
    form_param: {
      name: "new_stage_name"
      type: string
      required: yes
    }
  }
}

Azioni personalizzate in un hub di azioni

Puoi configurare un'azione personalizzata per includere attributi utente che impediscono agli utenti di inviare o pianificare i contenuti di Looker nella destinazione dell'azione se non è definito un valore per l'attributo utente.

Configurazione

Il parametro params in un'azione personalizzata rappresenta i campi del modulo che un amministratore di Looker deve configurare nella pagina di attivazione dell'azione dall'elenco Azioni nel riquadro Amministrazione. Nel parametro params del file di azioni, includi:

  params = [{
    description: "A description of the param.",
    label: "A label for the param.",
    name: "action_param_name",
    user_attribute_name: "user_attribute_name",
    required: true,
    sensitive: true,
  }]

dove user_attribute_name è l'attributo utente definito nel campo Nome della pagina Attributi utente nella sezione Utenti del riquadro Amministrazione, required: true indica che un utente deve avere un valore non nullo e valido definito per l'attributo utente per visualizzare l'azione durante l'invio dei dati e sensitive: true indica che il valore dell'attributo utente è criptato e non viene mai visualizzato nell'interfaccia utente di Looker una volta inserito. Puoi specificare più sottoparametri dell'attributo utente.

Un amministratore di Looker deve configurare i campi del modulo dell'azione con l'attributo utente:

  1. Fai clic sul pulsante Attiva o Impostazioni accanto all'azione nella pagina Azioni del riquadro Amministrazione.
  2. Fai clic sull'icona dell'attributo utente per il campo appropriato e seleziona l'attributo utente desiderato.

Consulta la sezione Aggiunta di attributi utente alle azioni personalizzate della pagina della documentazione Condivisione di dati tramite un hub delle azioni.

Filtri

I filtri in Esplorazioni, Look e dashboard possono essere impostati su un attributo utente per personalizzare la query in base all'utente che la esegue.

Ad esempio, puoi creare un attributo utente denominato salesforce_username e configurare ogni utente di Looker in modo che il relativo valore sia il nome utente di Salesforce. A questo punto, puoi impostare un filtro in una dashboard per l'attributo utente salesforce_username e ogni utente vedrà la dashboard filtrata in base al proprio nome utente Salesforce.

Configurazione

Nella sezione FILTRI di un'esplorazione, di un look o di una dashboard:

  1. Seleziona l'opzione corrisponde a un attributo utente nel filtro desiderato.

    La casella di selezione a destra si aggiorna automaticamente con un elenco di attributi utente dello stesso tipo del campo del filtro, ad esempio numero, stringa (testo), data e così via. Looker mostra il valore per ogni attributo utente tra parentesi.

  2. Seleziona l'attributo utente che ti interessa.

Sintassi del filtro avanzato

Se vuoi fare qualcosa di più complesso di un semplice controllo di uguaglianza per il filtro, seleziona corrispondenze (avanzate) e fai riferimento all'attributo utente utilizzando una variabile Liquid:

{{ _user_attributes['name_of_attribute'] }}

Ad esempio, supponiamo che tu debba applicare un prefisso sf_ al valore dell'attributo utente salesforce_username perché è così che i valori vengono archiviati nel database. Per aggiungere il prefisso al valore dell'attributo utente, utilizza la sintassi della variabile Liquid _user_attributes:


sf_{{_user_attributes['salesforce_username']}}

Puoi utilizzare lo stesso pattern per inserire gli attributi utente nei filtri della dashboard e nei filtri degli elementi della dashboard di LookML.

Dashboard e Look pianificati

I filtri della dashboard e dei look possono essere impostati in base alla pianificazione, inclusa la possibilità di utilizzare un attributo utente. In questo modo puoi personalizzare i risultati dell'importazione dei dati per ciascun destinatario email. Puoi personalizzare le pubblicazioni dei contenuti inviate come pubblicazioni una tantum e ricorrenti.

Ad esempio, puoi creare un attributo utente denominato salesforce_username e impostare il valore sul nome utente Salesforce di ciascun utente. Imposta un filtro su una pianificazione di una dashboard o di un Look per l'attributo utente salesforce_username in modo che ogni destinatario riceva la dashboard filtrata in base al proprio nome utente Salesforce.

Prerequisiti

Solo gli utenti di Looker hanno valori degli attributi utente impostati, pertanto ogni destinatario del caricamento dei dati deve disporre di un account Looker. Gli attributi utente vengono applicati eseguendo la dashboard o il Look una volta per ciascun destinatario.

Configurazione

Apri lo scheduler per il look o la dashboard:

  1. Nella sezione Filtri, seleziona l'opzione Corrisponde a un attributo utente per il filtro desiderato.

    La casella di selezione a destra si aggiorna automaticamente con un elenco di attributi utente dello stesso tipo del filtro. Il tuo valore per ogni attributo utente viene visualizzato tra parentesi.

  2. Seleziona l'attributo utente che ti interessa.

  3. Seleziona la casella di controllo Esegui pianificazione come destinatario accanto al campo Opzioni email.

Filtri di accesso

Puoi limitare i dati a cui un utente può accedere con i filtri di accesso, che forniscono sicurezza a livello di riga. Sebbene sia possibile utilizzare il parametro access_grant, i filtri di accesso sono più facilmente implementabili e gestibili con gli attributi utente.

I filtri di accesso offrono un modo sicuro per applicare restrizioni ai dati specifiche per utente. La definizione di uno o più filtri di accesso per un'esplorazione LookML garantisce che i dati restituiti da un'esplorazione vengano filtrati in base all'utente che esegue la query. Pertanto, i filtri di accesso forniscono un ulteriore livello di limitazione, garantendo che l'utente possa vedere solo sottoinsiemi specifici di dati da una connessione al database.

Configurazione

  1. Crea un attributo utente:
    • Configura Accesso utente su Nessuno (opzione consigliata) o Visualizza. Un attributo utente configurato per essere modificabile dagli utenti non può essere utilizzato per un filtro di accesso.
    • Assegna i valori degli attributi utente a gruppi o singoli utenti.
  2. Nella definizione di LookML per l'esplorazione in cui vuoi il filtro di accesso, aggiungi un blocco access_filter con i seguenti parametri:
    • field: il nome del campo LookML su cui applicare il filtro
    • user_attribute: il nome dell'attributo utente che memorizza il valore da utilizzare per filtrare i dati
  3. Esegui una query sull'esplorazione.
  4. Controlla la clausola WHERE del codice SQL della query per verificare che i dati vengano filtrati in base al valore dell'attributo utente.

Questo codice LookML garantisce che le query sugli ordini vengano filtrate in base al brand, con il brand specifico basato sul valore assegnato dall'utente per un attributo utente denominato company:

explore: orders {
  view_name: orders
  access_filter: {
    field: products.brand_name
    user_attribute: company
  }
  join: products {
    foreign_key: orders.product_id
  }
}

Connessione ai provider Git

Per i progetti LookML, puoi configurare l'autenticazione Git tramite HTTPS. I progetti che utilizzano l'autenticazione Git HTTPS hanno la possibilità di sfruttare gli attributi utente per accedere agli account Git dei singoli sviluppatori quando eseguono operazioni Git per lo sviluppatore.

Gli attributi utente per le password degli account Git devono essere nascosti. Quando crei l'attributo password, seleziona sotto l'opzione Nascondi valori e inserisci l'URL del provider Git nel campo Lista consentita del dominio.

Controllo dell'accesso con le concessioni di accesso

Puoi creare concessioni di accesso che limitano l'accesso a un'esplorazione, un join, una visualizzazione o un campo LookML utilizzando i valori dell'attributo utente, il parametro access_grant e il parametro required_access_grants.

Le autorizzazioni di accesso funzionano nel seguente modo:

  1. Definisci una concessione di accesso utilizzando il parametro access_grant. Nell'ambito della definizione, associ la concessione dell'accesso a un attributo utente. Specifica anche quali valori dell'attributo utente forniscono l'accesso alla concessione di accesso.
  2. Successivamente, utilizza il parametro required_access_grants a livello di Esplorazione, join, visualizzazione o campo per limitare la struttura solo agli utenti che hanno accesso a tutte le concessioni di accesso elencate.

Ad esempio, puoi utilizzare una concessione di accesso per limitare l'accesso alla dimensione salary soltanto agli utenti che possiedono il valore payroll nell'attributo utente department.

Per ulteriori informazioni su come definire le concessioni di accesso, consulta la pagina della documentazione del parametro access_grant.

Variabili Liquid

LookML consente l'utilizzo di diverse variabili Liquid, che possono essere utili per tipi più complessi di output personalizzato. Ora i valori degli attributi di un utente possono essere inclusi in Liquid. L'espressione Liquid deve utilizzare la sintassi appropriata al dialetto del database.

Puoi vedere degli esempi nella sezione Connessione di questa pagina di documentazione e nella pagina Best practice Utilizzo degli attributi utente per l'iniezione di nomi di tabelle e schemi dinamici.

Limiti dei dati di Google BigQuery

Se utilizzi Google BigQuery come database, Google ti addebita ogni query in base alle sue dimensioni. Per evitare che gli utenti eseguano accidentalmente una query troppo costosa, puoi applicare un attributo utente all'impostazione Gigabyte di fatturazione massima nella connessione BigQuery. I valori specificati nell'attributo utente devono corrispondere al numero di gigabyte che un utente è autorizzato a estrarre in una singola query.

Dashboard incorporate

Puoi limitare i dati visualizzati in look e dashboard incorporati basando i valori dei filtri sui valori degli attributi utente. Per ulteriori informazioni, consulta il post della scheda Community Creare una dashboard incorporata di prova del concetto (basata su Looker) .

Localizzazione

Gli attributi utente locale e number_format possono impostare l'aspetto di dati, visualizzazioni e parti dell'interfaccia utente di Looker per utenti o gruppi di utenti specifici. Per ulteriori informazioni, consulta la pagina della documentazione relativa alla localizzazione di Looker.

Test degli attributi utente e dei filtri di accesso

Puoi testare gli effetti degli attributi utente con la funzione sudo di Looker. Gli amministratori (o gli utenti con le autorizzazioni see_users e sudo) possono eseguire sudo come un altro utente per vedere la sua esperienza di Looker.

Quando sei in modalità di sviluppo, le modifiche non sono visibili agli altri utenti finché non le implementi in produzione. Se non hai implementato le modifiche in modo che siano visibili agli altri utenti, non le vedrai quando esegui sudo come utente diverso.