Config dCache OpenID Connect

From Public PIC Wiki
Revision as of 13:23, 27 July 2020 by Eplanas (talk | contribs) (Created page with "En aquest apartat indicarem els paràmetres i canvis que cal definir per a permetre l'utilització de l'oidc a dCache. Posem com a exemple l'entorn de dev. Per a realitzar la...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

En aquest apartat indicarem els paràmetres i canvis que cal definir per a permetre l'utilització de l'oidc a dCache. Posem com a exemple l'entorn de dev.

Per a realitzar la configuració s'ha seguit la presentació que es va fer en un mini-workshop sobre dCache i OIDC, concretament el document dCache_OIDC_setup.pdf

Canvis a gPlazma.conf

Autenticació: Afegir la línia

auth   optional    oidc

Maping: afegir els fitxers multimap.

map optional multimap gplazma.multimap.file=/etc/dcache/multimap-id-to-group+gid.conf
map optional multimap gplazma.multimap.file=/etc/dcache/multimap-id-to-username.conf
map sufficient multimap gplazma.multimap.file=/etc/dcache/multimap-username-to-uid+gid.conf
map sufficient multimap gplazma.multimap.file=/etc/dcache/multimap-groupname-to-username+uid.conf

NOTA: En la presentació del mini workshop dèien d'esborrar el grid-vorolemap, però nosaltres no l'hem esborrat i així segueixen funcionant els mapejos anteriors.

Creació fitxers mapeig

multimap-id-to-group+gid.conf

fqan:/escape     group:escape     gid:50023
oidcgrp:/escape  group:escape     gid:50023
fqan:/dteam      group:dteam      gid:46003
oidcgrp:/dteam   group:dteam      gid:46003

multimap-id-to-username.conf

"dn:/DC=org/DC=terena/DC=tcs/C=ES/O=Port dInformacio Cientifica/CN=Elena Planas eplanas@pic.es"      username:dteam001
#oidc:<oidc toquen?>       username:dteam001
oidc:73e5b674-c15f-4fdd-b0d8-e14efdb6c4b1  username:dteam001

multimap-username-to-uid+gid.conf

username:eplanas   uid:63196   gid:50041,true gid:57064 gid:57063
username:eplanas@pic.es  uid:31601 gid:46003,true

multimap-groupname-to-username+uid.conf

group:escape   username:escape001   uid:53001
group:atlas    username:atlas001    uid:31051
group:deam     username:dteam001    uid:31601

storage-authzdb

Cal garantir que estigui autoritzat l'usuari per llegir i escriure.

authorize escape001  read-write 53001 50023 / / /

Fitxers de layout

gPlazma

Cal configurar el plugin oidc

############################################
# Domain: gplazma-dccore01-devDomain
[gplazma-${host.name}Domain]
dcache.java.memory.heap=256m
# Cell: gplazma
[gplazma-${host.name}Domain/gplazma]
gplazma.authzdb.uid=uid,login,group,user
gplazma.oidc.provider!escape=https://iam-escape.cloud.cnaf.infn.it/
gplazma.roles.admin-gid=90000
## End gplazma-dccore01-devDomain
############################################

Webdav door

############################################
# Domain: webdav-dteam-https-dcdoor01-devDomain
[webdav-dteam-https-${host.name}Domain]
dcache.java.memory.heap=512m
webdav.mover.queue=webdav
webdav.net.port=8448
# Cell: webdav
[webdav-dteam-https-${host.name}Domain/webdav]
webdav.authn.protocol=https
#webdav.authz.anonymous-operations=READONLY
webdav.authz.allowed-paths=/pnfs/pic.es/data/
webdav.authz.readonly=false
webdav.cell.name=WebDAV-DTEAM-${host.name}
webdav.root=/pnfs/pic.es/data/
## End webdav-dteam-https-dcdoor01-devDomain
############################################

Frontend

Si volem utilitzar oidc amb el dCacheView. En aquest cas caldrà registra el servei com un client a l'IAM d'ESCAPE

############################################
# Domain: frontend-dccore05-devDomain
[frontend-${host.name}Domain]
dcache.java.memory.heap=512m
# Cell: frontend
[frontend-${host.name}Domain/frontend]
frontend.authn.accept-client-cert=false
frontend.authn.basic=true
frontend.authn.protocol=https
frontend.authz.anonymous-operations=READONLY
frontend.authz.unlimited-operation-visibility=true
frontend.static!dcache-view.org-name=pic.es
frontend.static!dcache-view.oidc-authz-endpoint-list=https://iamescape.cloud.cnaf.infn.it/authorize
#frontend.static!dcache-view.oidc-client-id-list=
frontend.static!dcache-view.oidc-provider-name-list=escape
## End frontend-dccore05-devDomain
############################################