Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nfs server fails with stacktrace on craete with krb5 #36

Closed
kofemann opened this issue Jun 22, 2016 · 0 comments
Closed

nfs server fails with stacktrace on craete with krb5 #36

kofemann opened this issue Jun 22, 2016 · 0 comments

Comments

@kofemann
Copy link
Member

kofemann commented Jun 22, 2016

When mounting with krb5 and user mapping returns NOBODY as a result of missing mapping, then
a create request will fail with following stacktrace:

22 Jun 2016 13:04:02 (NFS-dcache-lab000) [] Unhandled exception:
java.util.NoSuchElementException: Subject has no UID
    at org.dcache.auth.Subjects.getUid(Subjects.java:164) ~[dcache-common-2.17.0-SNAPSHOT.jar:2.17.0-SNAPSHOT]
    at org.dcache.chimera.nfsv41.door.ChimeraVfs.create(ChimeraVfs.java:132) ~[dcache-nfs-2.17.0-SNAPSHOT.jar:2.17.0-SNAPSHOT]
    at org.dcache.nfs.vfs.VfsCache.create(VfsCache.java:156) ~[nfs4j-core-0.12.2.jar:0.12.2]
    at org.dcache.nfs.vfs.PseudoFs.create(PseudoFs.java:155) ~[nfs4j-core-0.12.2.jar:0.12.2]
    at org.dcache.nfs.v4.OperationOPEN.process(OperationOPEN.java:158) ~[nfs4j-core-0.12.2.jar:0.12.2]
    at org.dcache.chimera.nfsv41.door.proxy.ProxyIoMdsOpFactory$1.lambda$process$0(ProxyIoMdsOpFactory.java:53) ~[dcache-nfs-2.17.0-SNAPSHOT.jar:2.17.0-SNAPSHOT]
    at org.dcache.chimera.nfsv41.door.proxy.ProxyIoMdsOpFactory$1$$Lambda$72/1766112330.run(Unknown Source) ~[na:na]
    at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_31]
    at javax.security.auth.Subject.doAs(Subject.java:360) ~[na:1.8.0_31]
    at org.dcache.chimera.nfsv41.door.proxy.ProxyIoMdsOpFactory$1.process(ProxyIoMdsOpFactory.java:50) ~[dcache-nfs-2.17.0-SNAPSHOT.jar:2.17.0-SNAPSHOT]
    at org.dcache.nfs.v4.NFSServerV41.NFSPROC4_COMPOUND_4(NFSServerV41.java:152) ~[nfs4j-core-0.12.2.jar:0.12.2]
    at org.dcache.nfs.v4.xdr.nfs4_prot_NFS4_PROGRAM_ServerStub.dispatchOncRpcCall(nfs4_prot_NFS4_PROGRAM_ServerStub.java:48) [nfs4j-core-0.12.2.jar:0.12.2]
    at org.dcache.xdr.RpcDispatcher$1.run(RpcDispatcher.java:82) [oncrpc4j-core-2.5.3.jar:na]
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591) [grizzly-framework-2.3.24.jar:2.3.24]
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571) [grizzly-framework-2.3.24.jar:2.3.24]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_31]
kofemann added a commit to kofemann/nfs4j that referenced this issue Jun 22, 2016
Motivation:
when a user mapped to subject nobody (typically in krb5 environment for
users without token), then we will get NoSuchElementException assubject
NOBODY has no corresponding uid and gids.

Modification:
turn subject NOBODY into regular subject with uid and git of user 'nobody'.

Result:
no NoSuchElementException any more

Fixes: dCache#36
Acked-by: Paul Millar
Target: master, 0.12, 0.11
(cherry picked from commit d2836d7)
Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
kofemann added a commit to kofemann/nfs4j that referenced this issue Jun 22, 2016
Motivation:
when a user mapped to subject nobody (typically in krb5 environment for
users without token), then we will get NoSuchElementException assubject
NOBODY has no corresponding uid and gids.

Modification:
turn subject NOBODY into regular subject with uid and git of user 'nobody'.

Result:
no NoSuchElementException any more

Fixes: dCache#36
Acked-by: Paul Millar
Target: master, 0.12, 0.11
(cherry picked from commit d2836d7)
Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant