﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Java-随笔分类-LDAP</title><link>http://www.blogjava.net/rapin/category/45508.html</link><description>LML</description><language>zh-cn</language><lastBuildDate>Tue, 06 Jul 2010 08:59:53 GMT</lastBuildDate><pubDate>Tue, 06 Jul 2010 08:59:53 GMT</pubDate><ttl>60</ttl><item><title>IBM TDS 权限问题 LDAP: error code 50</title><link>http://www.blogjava.net/rapin/archive/2010/07/06/325379.html</link><dc:creator>rapin</dc:creator><author>rapin</author><pubDate>Tue, 06 Jul 2010 08:57:00 GMT</pubDate><guid>http://www.blogjava.net/rapin/archive/2010/07/06/325379.html</guid><wfw:comment>http://www.blogjava.net/rapin/comments/325379.html</wfw:comment><comments>http://www.blogjava.net/rapin/archive/2010/07/06/325379.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rapin/comments/commentRss/325379.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rapin/services/trackbacks/325379.html</trackback:ping><description><![CDATA[LDAP服务器：IBM <font class="font1">Tivoli Directory Server6.2（以下简称TDS）<br />
</font><br />
使用普通用户的账号（非：管理员）密码进入LDAP后，要修改密码。<br />
就是简单的modifyAttributes操作userPassword属性。<br />
提示如下错误：<br />
<span style="color: #ff0000">javax.naming.NoPermissionException: [LDAP: error code 50 - Insufficient Access Rights]; remaining name<br />
</span><br />
大概知道是TDS中访问控制（ACL）的配置问题<br />
折腾半天终于弄明白了这其中的意思，这些写下来给有缘者帮助。<br />
<br />
ACL配置大概意思就是<br />
对指定的目录，限制性的开放权限给用户，或者组。<br />
<br />
下面通过操作来说下我的理解：<br />
<br />
默认普通用户条目是能查看所有条目，不允许编辑任何条目，包括密码<br />
<strong style="color: #ff0000">期望实现配置：普通用户可以修改密码条目，不能查看条目信息。</strong><br />
<br />
进入<font class="font1">Tivoli Directory Server Web 管理工具，进入服务器后。<br />
</font>目录管理--&gt;管理条目&nbsp;&nbsp;<br />
选中要配置的条目，在选择操作中选择《编辑ACL...》，点击执行 进入到编辑界面<br />
<br />
<a accesskey="" class="nb4" onclick="return doNb('FormDataGp71767176', 'action_37303730', 'turnPage(0)', 'action_37303730', 'wh', 'wa');" href="http://www.blogjava.net/rapin/admin/EditPosts.aspx?postid=307287#">有效的 ACL</a>：其作用的ACL配置（默认有一条cn=anybody的可读的配置，当配置新的后，会覆盖它）<br />
<a accesskey="" class="nb4" onclick="return doNb('FormDataGp44d244d2', 'action_4eb04eb0', 'turnPage(1)', 'action_4eb04eb0', 'wh', 'wa');" href="http://www.blogjava.net/rapin/admin/EditPosts.aspx?postid=307287#">有效的所有者</a>：其作用的所有者，会有一条管理员的主题DN<br />
<a accesskey="" class="nb4" onclick="return doNb('FormDataGp52d652d6', 'action_43da43da', 'turnPage(2)', 'action_43da43da', 'wh', 'wa');" href="http://www.blogjava.net/rapin/admin/EditPosts.aspx?postid=307287#">未过滤的 ACL</a>：一般新建ACL在此处新建，传播选项的意思就是，是否作用于选中条目的子目录。这里我们在这个页面点击&nbsp; 添加 ，注意选上传播。进入到编辑页面后，在主题DN输入&nbsp; cn=Authenticated&nbsp;&nbsp;&nbsp; 。主题DN指的是&nbsp;&nbsp; 要限制的用户或者用户<br />
cn=Authenticated是伪DN，指所有通过验证的用户。其他伪DN还有：<span id="value_1204438986" class="txt">cn=anybody(任何用户，包括匿名)，cn=this(当前选择的条目)。<br />
</span><br />
主题角色：我选的是角色，按TDS文档cn=Authenticated&nbsp;应该是组，可是选了那个建不了，求解.<br />
下面<label id="cbo_addChild_caption_600056772" for="W201e201e">添加子代</label>，<label id="cbo_deleteEntry_caption_752233686" for="W29302930">删除条目，<span style="font-family: Arial, Helvetica, sans-serif; white-space: nowrap" id="W1aba1aba">安全类访问权</span>全部选择为拒绝，或者不选。这样就没有这些操作的权限<br />
</label><br />
属性：因为是要允许修改密码，因此选择userPassword点击 定义下面列表出现后 &nbsp; 读写选择授权。<br />
然后点击确定返回到未过滤的 ACL的页面&nbsp;<span style="color: #ff0000">注意 在此页面再点击一次确定。<font color="#000000">我就经常忘了在这页面点确定，然后没保存&nbsp;<br />
</font></span><br />
另说下<br />
<a accesskey="" class="nb4" onclick="return doNb('FormDataGp6a5c6a5c', 'action_66c266c2', 'turnPage(4)', 'action_66c266c2', 'wh', 'wa');" href="http://www.blogjava.net/rapin/admin/EditPosts.aspx?postid=307287#">所有者</a>：指的是这个条目的所有者，添加<label id="Owners_Owners_txt_subjectDN_caption_732703660" for="Owners_Owners_txt_subjectDN_value_454433558">主题 DN给所有者有，这个DN有这个条目的全部权限。<br />
<br />
根据上面的操作应该可以理解这个ACL的用途，有误解地方，欢迎留言指正，有建议多多提<br />
<br />
<br />
</label><br />
<br />
<br />
<img src ="http://www.blogjava.net/rapin/aggbug/325379.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rapin/" target="_blank">rapin</a> 2010-07-06 16:57 <a href="http://www.blogjava.net/rapin/archive/2010/07/06/325379.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>操作active Directory，“安全”标签</title><link>http://www.blogjava.net/rapin/archive/2009/12/25/307287.html</link><dc:creator>rapin</dc:creator><author>rapin</author><pubDate>Fri, 25 Dec 2009 08:29:00 GMT</pubDate><guid>http://www.blogjava.net/rapin/archive/2009/12/25/307287.html</guid><wfw:comment>http://www.blogjava.net/rapin/comments/307287.html</wfw:comment><comments>http://www.blogjava.net/rapin/archive/2009/12/25/307287.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rapin/comments/commentRss/307287.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rapin/services/trackbacks/307287.html</trackback:ping><description><![CDATA[如何用java去操作AD中的，计算机中的&nbsp; 安全标签？如下图：<br />
大概意思就是，用程序去创建一个计算机后，要给某个用户权限，允许这个用户把这个计算机加入到域。<br />
可以用命令来实现的话也可以。<br />
高手们快快现身，帮帮小弟吧~~~<br />
<br />
<img height="434" alt="" src="http://www.blogjava.net/images/blogjava_net/rapin/QQ1.jpg" width="491" align="left" border="0" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
----------------------------------------------------------------------------------------------<br />
结果没有实现<br />
过程大概如下：<br />
使用dsacls命令 例如给与<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#116;&#101;&#115;&#116;&#51;&#52;&#53;&#64;&#116;&#101;&#115;&#116;&#46;&#97;&#100;&#58;&#71;&#65;">test345</a>用户把计算机&lt;cn=test345,ou=计算机,ou=模具公司,ou=深圳市,dc=test,dc=ad&gt;加入域的命令如下：<br />
<span style="color: #000000"><span style="color: red">dsacls cn=test345,ou=计算机,ou=模具公司,ou=深圳市,dc=test,dc=ad /G <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#116;&#101;&#115;&#116;&#51;&#52;&#53;&#64;&#116;&#101;&#115;&#116;&#46;&#97;&#100;&#58;&#71;&#65;">test345@test.ad:GA</a><br />
</span><br />
<span style="color: #000000">每次创建一个计算机的时候执行命令。前提条件是需要安装dsacls工具，安装文件在windows2003安装盘的SUPPORT/TOOLS/SUPTOOLS.MSI<br />
</span><font style="color: #000000" color="#ff0000">没有实现的原因是实现不了远程执行这个命令。<br />
</font><br />
按照msdn上说的:<br />
----------------------------------------------------<br />
DsAcls 使用以下语法：
<div class="indent" jquery1261990111890="30">FAILED TO TRANSLATE SENTENCE </div>
您可以使用以下参数： Dsacls.exe
<ul>
    <li><strong><var>对象 </var></strong>： 这是到目录服务对象基于它来显示或更改 ACL 路径。 此路径必须是可分辨名称 （也称为 RFC 1779 或 x.500 格式）。 例如：
    <div class="indent" jquery1261990111890="31"><strong>CN = Com = 软件, OU = 工程, DC = Microsoft, DC = 某人, OU</strong></div>
    要指定服务器, 添加 \\Servername\ 对象之前。 例如：
    <div class="indent" jquery1261990111890="32"><strong>\\MyServer\CN=Someone,OU=Software,OU=Engineering,DC=Microsoft,DC=Com</strong></div>
    </li>
</ul>
----------------------------------------<br />
添加了服务器后，<br />
<span style="color: #000000"><span style="color: red">dsacls <a href="file://\\test.ad\cn=test345,ou">\\test.ad\cn=test345,ou</a>=计算机,ou=模具公司,ou=深圳市,dc=test,dc=ad /G <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#116;&#101;&#115;&#116;&#51;&#52;&#53;&#64;&#116;&#101;&#115;&#116;&#46;&#97;&#100;&#58;&#71;&#65;">test345@test.ad:GA</a></span></span><br />
执行提示密码不行。<br />
<strong><span style="font-size: 18pt"><span style="color: #000000"><strong>希望知道原因的朋友，联系下小弟，了结这痛。</strong></span> </span></strong></span>
 <img src ="http://www.blogjava.net/rapin/aggbug/307287.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rapin/" target="_blank">rapin</a> 2009-12-25 16:29 <a href="http://www.blogjava.net/rapin/archive/2009/12/25/307287.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>