簡體   English   中英

JAVA_LDAP:從組中刪除用戶

[英]JAVA_LDAP: Removing user from group

我正在嘗試使用Java代碼從LDAP組中刪除用戶。 盡管它看起來很簡單,但是它會用memberuniquemember屬性拋出錯誤。

    public String removeGroupMembership(InitialDirContext ctx, String sGroup, String sMember){
    String status = "";
    System.out.println("entered removeGroupMembership:"+sGroup);
    System.out.println("The memeber to be added is: "+sMember);
    ModificationItem mods[] = new ModificationItem[1];
    mods[0]= new ModificationItem(InitialDirContext.REMOVE_ATTRIBUTE, new BasicAttribute("member", sMember));
      try {
        ctx.modifyAttributes(sGroup,mods);
        System.out.println("Group Modified");

錯誤-1.成員-

javax.naming.directory.SchemaViolationException:[LDAP:錯誤代碼65-無法在強制性或可選屬性列表中找到成員。 com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3166)處的剩余名稱 'cn = ........'在com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java: 3081)在com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2888)在com.sun.jndi.ldap.LdapCtx.c_modifyAttributes(LdapCtx.java:1475)在com.sun.jndi.toolkit.ctx com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes(PartialCompositeDirContext.java:192)處的.ComponentDirContext.p_modifyAttributes(ComponentDirContext.java:277)在com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes(PartialCompositeDirContext.java:192) :181),位於test.bulk.RemoveGroupFromUser.removeGroupMembership(RemoveGroupFromUser.java:69)處,位於javax.naming.directory.InitialDirContext.modifyAttributes(InitialDirContext.java:167),位於test.bulk.RemoveGroupFromUser.java(RemoveGroupFromUser.java:32)

  1. 對於uniqueMember-

javax.naming.directory.NoSuchAttributeException:[LDAP:錯誤代碼16-屬性uniquemember的一個或多個值不存在]; com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3156)處的剩余名稱 'cn = ........'com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java: 3081)在com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2888)在com.sun.jndi.ldap.LdapCtx.c_modifyAttributes(LdapCtx.java:1475)在com.sun.jndi.toolkit.ctx com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes(PartialCompositeDirContext.java:192)處的.ComponentDirContext.p_modifyAttributes(ComponentDirContext.java:277)在com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes(PartialCompositeDirContext.java:192) :181),位於test.bulk.RemoveGroupFromUser.removeGroupMembership(RemoveGroupFromUser.java:69)處,位於javax.naming.directory.InitialDirContext.modifyAttributes(InitialDirContext.java:167),位於test.bulk.RemoveGroupFromUser.java(RemoveGroupFromUser.java:32)

  1. 確保組條目具有“唯一成員”或“成員”屬性。
  2. 確保您傳遞了要刪除的成員的完整DN。 例如:cn = userMember,ou = xy,dc = xyx,dc = xzx
  3. 確保您被授權(具有管理員權限)刪除/更新目錄條目。 例如。 僅限於SunOne LDAP cn = Directory Manager有權創建/刪除/更新條目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM