Splunk - Portée du lookup
Alasta 7 Novembre 2019 splunk cli splunk security admin
Description : Nous allons voir la portée d'un lookup.
         
  
Contexte :
Nous allons comment restreinte l’accès à un lookup à l’App qui le porte.
Mise en place de l’environnement :
Il faut d’abord créer une Apps via la GUI, ici elle s’appelle testlookup.
On va préparer un jeu de données pour le test :
| makeresults count=10 
| eval plop="AAAAA", toto="TITI" 
| outputlookup mylk.csvOn vérifie que le lookup est bien créé sur disque :
cd $HOME_SPLUNK/etc
cat apps/testlookup/lookups/mylk.csv 
"_time",plop,toto
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITI
1573155613,AAAAA,TITIOn teste l’affichage du lookup via la commande :
| inputlookup mylk.csvRésultat dans notre App de test :

Résultat dans notre App Search:

Mise en place des modifications pour restreindre la portée :
Voyons la configuration par défaut qui autorise cela :
cat apps/testlookup/metadata/default.meta 
# Application-level permissions
[]
access = read : [ * ], write : [ admin, power ]
### EVENT TYPES
[eventtypes]
export = system
### PROPS
[props]
export = system
### TRANSFORMS
[transforms]
export = system
### LOOKUPS
[lookups]
export = system    <==== ICI
### VIEWSTATES: even normal users should be able to create shared viewstates
[viewstates]
access = read : [ * ], write : [ * ]
export = systemPlutôt que de modifier le default.meta, nous allons modifier le local.meta.
On passera le export à none ce qui aura comme effet de limiter la portée du lookup à l’aap.
cat apps/testlookup/metadata/local.meta 
[app/ui]
version = 7.3.1.1
modtime = 1573155243.045214000
[app/launcher]
version = 7.3.1.1
modtime = 1573155243.047991000
### LOOKUPS
[lookups]
export = none   <=== ICIIl faut normalement relancer Splunkd via un restart du service ou un refresh debug (http[s]://[splunkweb hostname]:[splunkweb port]/debug/refresh).
Résultat dans notre App de test :

Résultat dans notre App Search:

Note :
On peut aussi limiter l’accès à l’App en modifiant l’attribut access dans le stanza [].
Annexes :
Doc Officielle sur les ACL de l’App.
Doc Officielle - Set permissions for objects in a Splunk app.