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

Posted on 2008-11-13
Last Modified: 2013-12-24
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 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

Question by:CarlosScheidecker
    LVL 9

    Expert Comment

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

    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.
    LVL 1

    Author Comment

    Yes, I did it before posting the question here.

    Got no answers from them yet.

    LVL 1

    Accepted Solution

    No solution to this. Resorted to LDAP to fix the issue.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    IT, Stop Being Called Into Every Meeting

    Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

    Suggested Solutions

    Entering time in Microsoft Access can be difficult. An input mask often bothers users more than helping them and won't catch all typing errors. This article shows how to create a textbox for 24-hour time input with full validation politely catching …
    SQL Command Tool comes with APEX under SQL Workshop. It helps us to make changes on the database directly using a graphical user interface. This helps us writing any SQL/ PLSQL queries and execute it on the database and we can create any database ob…
    Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…
    Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

    779 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    21 Experts available now in Live!

    Get 1:1 Help Now