GFAL-TOKEN(1)

πŸ‘‘ gfal-token β€” the girlies' guide to snagging an SE-issued token πŸ’…

okay so bestie, welcome to gfal-token(1), from the General Commands Manual section, no cap. this is the one where you ask a Storage Element to hand over a token for a path, and it just… does it. iconic behavior fr fr ✨


✨ NAME ✨

gfal-token β€” retrieve SE-issued token for a given path πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

gfal-token [ OPTION ]...  PATH [ ACTIVITY ]...

πŸ’– DESCRIPTION πŸ’–

so basically, this command retrieves a Storage Element issued token for a given path. that's the whole vibe. 🌸

also? you can pass a token issuer URL in there too, if you want to be extra specific about who's issuing. πŸ’…

it can take either a list of user-defined activities or it can just use the predefined activities that come with the read/write access flag. your call, main character. πŸ‘‘

now for the behind-the-scenes tea β˜• β€” under the hood, Gfal2 will try to first retrieve a SciTokens-style token, and then follow that up with a macaroon-style token. and here's the thing: if at any point a token is successfully retrieved, the operation STOPS and the token is printed. that's it, done, no further searching, periodt. 🫢


πŸ”₯ OPTIONS πŸ”₯

  • -h, --help β€” show help about the command. your little cheat sheet, bestie πŸ’œ
  • -V, --version β€” output version information and exit. tell me who you are and then leave 😭
  • -v, --verbose β€” verbose mode. repeat it up to 3 times for the most verbose mode. the more -vs, the more it yaps πŸ—£οΈβœ¨
  • -D, --definition DEFINITION β€” define properties for gfal2. definitions have the following syntax: "CONFIG_GROUP:KEY=VALUE". look at the format, memorize the format πŸŽ€
  • -t, --timeout TIMEOUT β€” global timeout for the execution of the command. the command gets interrupted if time expires before it finishes. > heads up: a grace period of 30 seconds is given to the global timeout. so it's not as strict as it sounds, she's generous πŸ’…
  • -E, --cert CERT β€” user certificate. (this option takes effect only after the X509_USER_PROXY environment variable and the default /tmp/x509up_uid -u`` location cannot provide a certificate β€” so it's the backup plan, not the first pick πŸ₯²)
  • --key KEY β€” user private key. πŸ”‘
  • -4 β€” forces Gfal2 to use IPv4 addresses only. (option valid only for GridFTP protocol)
  • -6 β€” forces Gfal2 to use IPv6 addresses only. (option valid only for GridFTP protocol)
  • -C, --client-info CLIENT_INFO β€” provide custom client-side information. spill the details about yourself ✨
  • --log-file LOG_FILE β€” write Gfal2 library logs to the given file location. receipts, saved to disk 🧾
  • --issuer ISSUER β€” token issuer endpoint. where the token comes from 🌈
  • --validity VALIDITY β€” token validity expressed in minutes. how long this token stays cute ⏳
  • -w, --write β€” token read/write access flag. default activities associated with these flags: read = [LIST,DOWNLOAD], write = [LIST,DOWNLOAD,MANAGE,UPLOAD,DELETE]. write mode is doing the MOST, as she should πŸ’…
  • PATH β€” resource URI for which token is requested. the place you're asking about πŸŽ€
  • ACTIVITY β€” optional argument, user-specified activity list. this list takes precedence over the read/write access flag default activities. so if you say it, that's final, no debating 🫢

🌟 EXAMPLES 🌟

Retrieve a SE-issued token using default write activities

gfal-token --write https://endpoint.cern.ch/path/file

Retrieve a SE-issued token using custom activities

gfal-token https://endpoint.cern.ch/path/file LIST MANAGE UPLOAD

see how the second one just lists the activities right there? yeah. she listens to you. πŸ’–


πŸ“ FILES πŸ“

  • /etc/gfal2.d/* β€” all configuration files in this directory affect the behavior of the underlying gfal2. so like, everything in that folder is lowkey influencing the whole situation πŸ‘€

🧚 AUTHORS 🧚

these are the legends who built her, show some respect πŸ’œ

  • Duarte Meneses <duarte.meneses@cern.ch>
  • Adrien Devresse <adrien.devresse@cern.ch>
  • Alejandro Alvarez Ayllon <alejandro.alvarez.ayllon@cern.ch>
  • Andrea Manzi <andrea.manzi@cern.ch>
  • Mihai Patrascoiu <mihai.patrascoiu@cern.ch>
  • Joao Lopes <joao.pedro.batista.lopes@cern.ch>

🌈 SEE ALSO 🌈

the whole friend group, go say hi: gfal-cat(1), gfal-chmod(1), gfal-copy(1), gfal-ls(1), gfal-mkdir(1), gfal-rename(1), gfal-rm(1), gfal-save(1), gfal-stat(1), gfal-sum(1), gfal-token(1), gfal-xattr(1), gfal-evict(1), gfal-bringonline(1), gfal-archivepoll(1)


okay that's the whole page bestie, you're literally a gfal-token expert now, no cap. this was version v1.7.1, dated March 2022, and it's the General Commands Manual for GFAL-TOKEN(1). go get that token, you absolute icon πŸ’…βœ¨πŸ‘‘