/usr/share/doc/libjcifs-java-doc/examples/GetLocalGroupMemberSidsFromURL.java is in libjcifs-java-doc 1.3.16-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import java.util.*;
import jcifs.smb.*;
public class GetLocalGroupMemberSidsFromURL {
public static void main( String[] argv ) throws Exception {
if (argv.length < 1) {
System.err.println("usage: GetLocalGroupMemberSidsFromURL <smburl>");
System.exit(1);
}
SmbFile file = new SmbFile(argv[0]);
String server = file.getServer();
NtlmPasswordAuthentication auth = (NtlmPasswordAuthentication)file.getPrincipal();
ACE[] security = file.getSecurity(true);
SID serverSid = SID.getServerSid(server, auth);
for (int ai = 0; ai < security.length; ai++) {
ACE ace = security[ai];
SID sid = ace.getSID();
if (sid.getType() == SID.SID_TYPE_ALIAS && serverSid.equals(sid.getDomainSid())) {
System.out.println(sid.toString() + " (" + sid.toDisplayString() + ") members:");
SID[] mems = sid.getGroupMemberSids(server, auth, SID.SID_FLAG_RESOLVE_SIDS);
for (int mi = 0; mi < mems.length; mi++) {
SID mem = mems[mi];
System.out.println(" " + mem.getType() + " " + mem.toDisplayString());
}
}
}
}
}
|