https://github.com/opensciencegrid/xrootd-multiuser
A filesystem plugin to allow Xrootd write as a different Unix user
https://github.com/opensciencegrid/xrootd-multiuser
Last synced: 3 days ago
JSON representation
A filesystem plugin to allow Xrootd write as a different Unix user
- Host: GitHub
- URL: https://github.com/opensciencegrid/xrootd-multiuser
- Owner: opensciencegrid
- License: apache-2.0
- Created: 2017-09-19T00:53:58.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-11-06T17:51:05.000Z (about 1 year ago)
- Last Synced: 2024-11-06T18:38:51.163Z (about 1 year ago)
- Language: C++
- Size: 150 KB
- Stars: 2
- Watchers: 11
- Forks: 12
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Multi-user OSS and CKS (checksum) plugin for Xrootd
================================
A filesystem plugin to allow Xrootd to interact with underlying POSIX filesystems as
different Unix users.
This plugin will change the thread's filesystem UID to match Xrootd's user name, meaning a user with a login session
mapped to user name `atlas` will read and write to the filesystem as the UID associated with the Unix user `atlas`.
Without this plugin, Xrootd will always read and write as the Unix user `xrootd`.
Configuration
-------------
To configure the multi-user plugin, add the following line to the Xrootd configuration file (XRootD 5.0+):
```
ofs.osslib ++ libXrdMultiuser.so
```
To enable the checksum (only on XRootD 5.2+):
```
ofs.ckslib * libXrdMultiuser.so
```
Startup
-------
The Xrootd process must be started with the privileged Linux capabilities in order to successfully
read and write as different users (i.e., execute the `setfsuid` and `setfsgid` calls). To support this, we have a
separate systemd unit called `xrootd-privileged@.service`.
To start the configuration in `/etc/xrootd/xrootd-clustered.cfg` with the multiuser plugin enabled, execute:
```
systemctl start xrootd-privileged@clustered
```