GSI is distinct from TLS in that it supports optional X.509 delegation as part of the handshake. Whether or not delegation takes place is controlled by the client. The globus-url-copy command is the client. By default, it delegates its credential to the server and there does not appear to be any (documented) way to disable this delegation.
At least for dCache (and likely other GridFTP servers, too), the delegated credential is just thrown away. Delegation is useless for GridFTP.
Beyond being pointless, delegation is actually problematic for a number of reasons:
- It creates unnecessary load on the server, which must "generate" large prime numbers when the client requests delegation.
- Delegation is a potential security risk, so should only be done if needed
- The extra communication between the client and server also slows down the handshake process, making the protocol seem slower.
My suggestion would be to modify globus-url-copy so that either:
- it never delegates,
- or expose/document how the delegation decision may be controlled, and update
globus-url-copy so it does not delegate by default.
GSI is distinct from TLS in that it supports optional X.509 delegation as part of the handshake. Whether or not delegation takes place is controlled by the client. The
globus-url-copycommand is the client. By default, it delegates its credential to the server and there does not appear to be any (documented) way to disable this delegation.At least for dCache (and likely other GridFTP servers, too), the delegated credential is just thrown away. Delegation is useless for GridFTP.
Beyond being pointless, delegation is actually problematic for a number of reasons:
My suggestion would be to modify
globus-url-copyso that either:globus-url-copyso it does not delegate by default.