OSX: ARD的基于目录服务用户权限
来源:互联网 发布:邢岫烟 知乎 编辑:程序博客网 时间:2024/06/06 17:17
从Apple Remote Desktop 3.3开始, 加入了对目录服务用户/用户组的支持, 也就是说可以利用目录用户/用户组, 来定义该用户/用户组的ARD权限.
它支持预设的四个管理组:admin, report, manage和interact. 每个组的权限见下表:
X打开关闭程序XX
改变设置XX
拷贝XX
删除/置换XX
发送消息XXX
重启/关机XX
控制X
X
发现X
X
显示被控制X
X
其中: X说明该组用户有该权限.
在利用目录用户/组之前, 首先该电脑需要加入到该目录服务中, 参见/System/Library/CoreServices/Directory Utility.app
之后规划好, 哪个目录用户组被分配到哪个ARD管理组中.
有两种方式进行配置, 一个是MCX, 一个是对每个管理组操作.
使用脚本来管理, 当然是最直观和易于部署的了.
在OS X系统中, 这四个ARD管理组并没有预设在本地用户数据库中, 所以需要判断/生成.
下面就是一个简单的脚本
#!/bin/bash# List of groups to create and editgroupArray=(com.apple.local.ard_interact com.apple.local.ard_manage com.apple.local.ard_admin com.apple.local.ard_reports)# Enable DirectoryService auth for Apple Remote Desktopecho "Enabling DirectoryService authentication for Apple Remote Desktop"/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -configure -clientopts -setdirlogins -dirlogins yes####Create Groupsfor group in "${groupArray[@]}"do dseditgroup -n /Local/Default $group if [ $? != 0 ] then echo "$group group does not exist. Creating" dseditgroup -n /Local/Default -o create $group else echo "$group group already exists" fidone
之后就可以添加目录用户/组到各个相应管理组中:
# List of AD group namesADUser_Admin=AD_ADMIN_USERNAMEADUSer_Report=AD_REPORT_USERNAME dseditgroup -n /Local/Default -o edit -a $ADUser_Admin -t user com.apple.local.ard_admindseditgroup -n /Local/Default -o edit -a $ADUser_Report -t user com.apple.local.ard_reports知道每个目录用户组的UUID后, 甚至是下面的代码, 它无需该电脑必须可以存取目录服务:
# List of AD group UUIDsAD_ARD_interact_UUID=DEADBEEF-0000-0000-0000-000000000101AD_ARD_manage_UUID=DEADBEEF-0000-0000-0000-000000000102AD_ARD_admin_UUID=DEADBEEF-0000-0000-0000-000000000103AD_ARD_user_UUID=F03809E4-D46C-478E-8C70-755AEA2BF75Edscl localhost -create /Local/Default/Groups/com.apple.local.ard_interact NestedGroups $AD_ARD_interact_UUIDdscl localhost -create /Local/Default/Groups/com.apple.local.ard_manage NestedGroups $AD_ARD_manage_UUIDdscl localhost -create /Local/Default/Groups/com.apple.local.ard_admin NestedGroups $AD_ARD_admin_UUIDdscl localhost -create /Local/Default/Groups/com.apple.local.ard_admin GroupMembers $AD_ARD_user_UUID参考: ARD的管理手册, 并感谢Palmer, Shane和Patrick Fergus
- OSX: ARD的基于目录服务用户权限
- OSX: ARD Admin的降级
- OSX: 笔记-客户端对目录服务的支持
- OSX: ARD 3.7.2 Admin升级
- OSX: 查找目录服务通讯延时
- OSX: 不要升级到ARD 3.7.1 Admin
- OSX: 不要升级到ARD 3.7.1 Admin(续)
- OSX: Mac系统认证服务的API
- 基于Linux操作系统的目录服务的实现
- 基于角色的用户权限设计问题
- 基于RBAC的通用用户权限管理
- 基于RBAC的通用用户权限管理
- 基于Shiro的用户权限管理管理思想
- 基于RBAC用户权限控制的校验
- Mac osx下获取root用户权限
- osx cp 目录~~
- osx下关于目录wheel和admin权限的问题
- 解决mac osx编译libevent找不到openssl目录的问题
- 去掉iphone应用程序图标上的弧形高光
- UIView 旋转(rotation)
- 犀牛书第2章 JavaScript词法结构
- Android:Camera
- 如何使用J-Link V8 烧写程序到NOR Flash
- OSX: ARD的基于目录服务用户权限
- MySQL insert性能优化
- 在VMware中为CentOS配置静态ip并可访问网络-windows下的VMware
- GoF23种设计模式之创建型模式之工厂方法模式
- PHP工厂模式和抽象工厂模式
- java设置一段代码执行超时时间
- Jlink与MDK 联调设置 Flash Download failed
- 犀牛书第3章 JavaScript数据类型和值(上篇)
- 如何干净删除安装的程序(debian系统)