Link to home
Start Free TrialLog in
Avatar of CarlosScheidecker
CarlosScheidecker

asked on

Problems with JCIFs library, no one seems to know about it.

Is it possible to use JCIFS to return all users from a Domain as well as all groups from that domain?

I have been studying the source code for jcifs 1.3.0 and found a class SID.java. Inside, there are few interesting methods such as getGroupMemberSids.

I have been playing with the code but I did not make much progress. Any comments, suggestions, howtos, pointers, etc are greatly appreciated. Thanks.
try {
    UniAddress myDomain = getPrimaryDomain(ip);
    NTLMAuth = new NtlmPasswordAuthentication(domainName,userName,password);
    SmbSession.logon(myDomain, NTLMAuth);
    // after loging in, here's how to get the SID for the Domain
    jcifs.smb.SID mySid = jcifs.smb.SID.getServerSid(hostName, NTLMAuth);
  // this returns something like 
  // Sid Domain SID: S-1-5-21-796745780-2711697408-451074171
  // trying to resolve SIDs this way DOES NOT work
  SID[] sids = new SID[10];
    sids[0] = mySid; // assigns domain SID???
    
    jcifs.smb.SID.resolveSids(hostName, NTLMAuth, sids);
    
    for (int i = 0; i < sids.length; i++ ) {
            System.out.println("Sids["+i+"] Type: " +sids[i].getType());
    }
 
    // Second attempt, fails as well
 
    String sidDomainId = ""+mySid.getDomainSid();
 
    SID domsid = new SID(sidDomainId);
    int rid = 1120;
    int count = 150;
    
    SID[] sids = new SID[count];
    for (int i = 0; i < sids.length; i++) { 
            sids[i] = new SID(domsid, rid++);
    }
    SID.resolveSids("ts0", null, sids);
    for (int i = 0; i < sids.length; i++) {
            System.out.println("My SIDs "+sids[i].toString());
    }
 
  
  } catch (SmbException smbe) {
          System.out.println("Failed to Authenticate: "+smbe.getMessage()+" NTStatus: "+smbe.getNtStatus());
  } catch (Exception e) {
          System.out.println("Failed to Authenticate: "+e.getMessage());
  }

Open in new window

Avatar of brunoguimaraes
brunoguimaraes
Flag of Brazil image

Have you tried joining the JCIFS mailing list and asking this question there?

https://lists.samba.org/listinfo/jcifs

Apparently no one here know much about it.

I've worked with it in the past, but only for user authentication, so my knowledge is close to zero.
Avatar of CarlosScheidecker
CarlosScheidecker

ASKER

Yes, I did it before posting the question here.

Got no answers from them yet.

Thanks.
ASKER CERTIFIED SOLUTION
Avatar of CarlosScheidecker
CarlosScheidecker

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial