User Tools

Site Tools


Sidebar

cn:ccr:aai:howto:protoaai:protoserv3

Inserire Utenti e Gruppi in protoAAI <infnUUID>

Per inserire le entry e' sufficiente collegarsi tramite protocollo SSH al nodo protoserv.infn.it sulla porta 57847.

L'autenticazione può avvenire in due modi:

  • SSH Publickey: e' necessario che inviate ad aai-support at infn.it la vostra chiave pubblica ssh in modo da autorizzarla.
  • Kerberos5 GSSAPI: se avete un principal Kerberos correttamente registrato in AAI e siete membri di un servizio di calcolo o della ccr.

Per autenticarsi con SSH pubkey

ssh -i key_file ...

Per autenticarsi con K5 (dopo aver preso il TGT)

ssh -K ...

L'utente SSH dipende dal tipologia di dati che si vogliono gestire.

Gestione Utenti

Anche se per tradizione si è sempre utilizzato il Codice Fiscale come chiave univoca per identificare le identità digitali, la sempre maggiore presenza di identità digitali relativi a stranieri ed i vincoli imposti dal GDPR e dal garante della privacy (minimizzazione dei dati richiesti) ci hanno imposto l'utilizzo di una chiave primaria differente.

Grazie al nuovo sistema per la registrazione delle Identità Digitali, la chiave univoca da utilizzare è il valore dell'attributo infnUUID assegnato all'identità digitale (che quindi deve essere definita precedentemente).

Il valore di infnUUID può essere visualizzato sia usando l'interfaccia grafica GODiVA-GUI sia attraverso una semplice qyery LDAP non autenticata. In questo caso è ovviamente necessario conoscere il valore di un altro attributo univoco, come l'indirizzo e-mail utilizzato in fase di registrazione dell'anagrafica.

Supponendo di voler trovare il valore di infnUUID di Pinco Pallino il cui indirizzo e-mail è Pinco.Pallino@mail.io, la query LDAP sarebbe

/usr/bin/ldapsearch  -o ldif-wrap=no -ZZ -x  -LLL -h ds.infn.it  -b ou=people,dc=infn,dc=it 'mailAlternateAddress=Pinco.Pallino@mail.io' dn 2>/dev/null | cut -d " " -f 2 | cut -d "=" -f 2 | cut -d "," -f 1

Una volta che si è ottenuto il valore di infnUUID basterà collegarsi via SSH come utente extuserserv al nodo protoserv.infn.it. Il comando da eseguire e' quindi:

ssh -p 57847 { -i key_file | -K } extuserserv@protoserv.infn.it

Una volta aperta la connessione, con il comando precedentemente indicato, il server aspetta i comandi uno per linea.

E' possibile eseguire un inserimento singolo scrivendo i comandi come ulteriori parametri nella linea di ssh.

Comandi

ComandoDescrizioneSintassi
TRYADD Mostra la entry che verrebbe inserita con ADD, senza inserirla realmente TRYADD dnsDomain:userName:infnUUID:Nome:Cognome:[kerberosPrincipal@REALM]:primaryEmailAddress[:mailAlternateAddress[…]]
ADD Esegue l'inserimento ADD dnsDomain:userName:infnUUID:Nome:Cognome:[kerberosPrincipal@REALM]:primaryEmailAddress[:mailAlternateAddress[…]]
MOD Modifica la entry relativa alla userName sostituendo i valori degli attributi con i nuovi MOD dnsDomain:userName:infnUUID:Nome:Cognome:[kerberosPrincipal@REALM]:primaryEmailAddress[:mailAlternateAddress[…]]
FIXUID Allinea la username del ramo locale a quella del ramo nazionale FIXUID dnsDomain:userName
ROLLBACKFIXUID Annulla l'allineamento della username del ramo locale a quella del ramo nazionale ROLLBACKFIXUID dnsDomain:userName
DEL Elimina la entry relativa alla userName DEL dnsDomain:userName
SHO Mostra la entry relativa alla userName presente in AAI SHO dnsDomain:userName (puo' contenere wildcard)

NOTA: Nel caso in cui non sia disponibile un Principal Kerberos omettere il contenuto di tale campo, usando quindi due separatori consecutivi.

NOTA: Per i comandi TRYADD, ADD e MOD verra' controllata l'univocita' della username e la coerenza dell'associazione username-infnUUID a livello nazionale. Per questo si consiglia di effettuare il TRYADD prima di aggiungere le identita' nei propri DataBase.

NOTA: Solo nel Comando SHO è possibile, come dominio, usare la chiave "all", in questo modo la ricerca sarà effettuata su tutto l'albero delle sedi.

Posix data

I comandi ADDPOSIX e DELPOSIX permettono di aggiungere le informazioni posix nelle entry degli utenti.

ComandoDescrizioneSintassi
ADDPOSIX Aggiunge dati posix ad un utente esistente ADDPOSIX dnsdomain:userName:password:uidNumber:gidNumber:gecos:homeDirectory:loginShell
DELPOSIX Rimuove solo i dati posix di un utente DELPOSIX dnsdomain:userName

ATTENZIONE: Per non inserire la password in ldap, per chi ha Kerberos, usare la stringa KRBPW nel campo password.

Esempi

Inserimento di una singola entry - da inserire in un eventuale script di creazione utente:

# ssh -p 57847 userserv@protoserv.infn.it 'ADD lnf.infn.it:dmaselli:MSLDLAXXXXXXXXXX:Dael:Maselli:dmaselli@LNF.INFN.IT:Dael.Maselli@lnf.infn.it:dmaselli@lnf.infn.it:maselli@lnf.infn.it'
# ssh -p 57847 userserv@protoserv.infn.it 'ADDPOSIX lnf.infn.it:dmaselli:KRBPW:5748:3101:Dael Maselli,#14/6,:/afs/lnf/user/d/dmaselli:/bin/tcsh'

Inserimento di piu' entry in interattivo

# ssh -p 57847 userserv@protoserv.infn.it
> ADD lnf.infn.it:dlenci:XXXXXXXXXXXXXXX:Davide:Lenci::Davide.Lenci:dlenci
Line 1: OK - Entry added
> ADD lnf.infn.it:dmaselli:MSLDLAXXXXXXXXXX:Dael:Maselli:dmaselli:Dael.Maselli:dmaselli:maselli
Line 2: OK - Entry added
> ADDPOSIX lnf.infn.it:dmaselli:KRBPW:5748:3101:Dael Maselli,#14/6,:/afs/lnf/user/d/dmaselli:/bin/tcsh
3 actions requested. 3 done. Bye!

Inserimento di piu' entry da file

# ssh -p 57847 userserv@protoserv.infn.it < file
...........
11 actions requested. 11 done. Bye!

Gruppi

Per la gestione dei gruppi collegarsi come utente groupserv. Il comando da eseguire e' quindi:

ssh -p 57847 [-i rsa_private_key_file] groupserv@protoserv.infn.it

Una volta aperta la connessione, con il comando precedentemente indicato, il server aspetta i comandi uno per linea.

E' possibile eseguire un inserimento singolo scrivendo i comandi come ulteriori parametri nella linea di ssh.

Comandi

ComandoDescrizioneSintassi
ADDGROUP Esegue l'inserimento di un gruppo ADDGROUP dnsDomain:groupName:gidNumber
MODGROUP Modifica la entry relativa a groupName sostituendo il gidNumber MODGROUP dnsDomain:groupName:gidNumber
ADDUSER Aggiunge un utente a un gruppo ADDUSER dnsDomain:groupName:userName
DELUSER Rimuove un utente da un gruppo DELUSER dnsDomain:groupName:userName
DELGROUP Elimina la entry relativa a groupName DELGROUP dnsDomain:groupName:gidNumber
SHO Mostra la entry relativa a groupName SHO dnsDomain:groupName (puo' contenere wildcard)

Netgroup

Per la gestione dei netgroup collegarsi come utente netgroupserv. Il comando da eseguire e' quindi:

ssh -p 57847 [-i rsa_private_key_file] netgroupserv@protoserv.infn.it

Una volta aperta la connessione, con il comando precedentemente indicato, il server aspetta i comandi uno per linea.

E' possibile eseguire un inserimento singolo scrivendo i comandi come ulteriori parametri nella linea di ssh.

Comandi

ComandoDescrizioneSintassi
ADDNETGROUP Esegue l'inserimento di un gruppo ADDNETGROUP dnsDomain:netGroupName
ADDELEMENT Aggiunge una tripletta o un altro netgroup a un netgroup ADDELEMENT dnsDomain:netGroupName:ELEMENT
DELELEMENT Rimuove una tripletta o un altro netgroup da un netgroup DELELEMENT dnsDomain:netGroupName:ELEMENT
DELNETGROUP Elimina la entry relativa a netGroupName DELNETGROUP dnsDomain:netGroupName
SHO Mostra la entry relativa a netGroupName SHO dnsDomain:netGroupName (puo' contenere wildcard)
cn/ccr/aai/howto/protoaai/protoserv3.txt · Last modified: 2020/11/12 12:16 by enrico@infn.it