我正在尝试找到一种方法,让用户在 Active Directory 中更改他们的职位或地址。我所做的就是向他们推送一个批处理文件,如下所示,以便他们可以在 AD 中搜索自己
@echo off
start Rundll32 dsquery.dll OpenQueryWindow
到目前为止一切顺利。问题是用户无法真正更改他们的信息。它似乎是只读的。
在网上搜索后,我发现这可能与 Exhange 2010 中的权限有关。
所以我查看了默认角色分配策略,它似乎设置正确。它已启用所有“MyContactInformation”。
当进入网络邮件 --> 选项时,我可以编辑一些信息,并且它会存储在 AD 中,这样就可以了,但我看不到职位之类的字段。
还有其他方法吗(不使用第三方工具)用户可以更改其职位和部门?
问候,
伦纳特
答案1
请检查此相关案件,在这种情况下,Robbie_Roberts 提供了两个选项,允许用户自行编辑其职位(Powershell 或 ECP)。它与 Exchange RBAC 相关。我用 ECP 做了一个测试,命令如下:
New-ManagementRole -name "Mail Recipients Custom" -Parent "Mail Recipients"
Get-managementRoleEntry "Mail Recipients Custom\*" | where { $_.Name –ne "Set-User"} | Remove-ManagementRoleEntry
Set-ManagementRoleEntry "Mail Recipients Custom\Set-User" -Parameters Identity,Title,Department
Get-managementRoleEntry "Mail Recipients\Get-*" | Add-ManagementRoleEntry -Role "Mail Recipients Custom"
New-ManagementRoleAssignment -name "test" -Role "Mail Recipients Custom" -User a01 -RecipientRelativeWriteScope Self
New-ManagementRoleAssignment -role "View-Only Recipients" –user a01
然后我用a01账户访问ECP,可以编辑他自己的工作和部门,请注意,它可以查看其他用户的信息而无需编辑。
希望对您有帮助。
答案2
虽然可以通过脚本来实现这一点,但是用户没有直接的方法可以做到这一点。
rundll32 dsquery, OpenQueryWindow
如果已启用更改 AD 帐户上必填字段的 AD 权限,则可以执行此操作。
其他方法(例如使用 dsmod 或 powershell 脚本)对于普通用户来说太复杂了,但如果您能让它们正确运行,这可能是一种替代方法。
答案3
你可以使用这样的方法:https://gallery.technet.microsoft.com/scriptcenter/GUI-for-AD-User-Attribute-b6ac7251 并适应您的需求。
我也看到过这种与票务系统结合的“自助服务门户”。
根据您的脚本技能,您可以开发一个简单的网站来触发相应的 powershell 脚本。