|
|
@@ -341,9 +341,9 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* User group list by id.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param bool $fetchNested - contain all groups below connected groups and group PODMIOT from above.
|
|
|
- *
|
|
|
+ *
|
|
|
* @return array with group objects @see getGroup
|
|
|
*/
|
|
|
public function getUserGroups($usrLogin, $fetchNested = false) {
|
|
|
@@ -371,10 +371,10 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Build network group object.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param object $groupDB {ID, DESC} @see _getUserGroupsAll
|
|
|
* @return object $group @see getGroup
|
|
|
- *
|
|
|
+ *
|
|
|
* Example: _buildGroupFromLdap($groupLdap) => {@see getGroup}
|
|
|
*/
|
|
|
private function _buildGroupFromLdap($groupLdap, $fetchNested = false) {
|
|
|
@@ -534,10 +534,10 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Create group.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param object $group @see getGroup
|
|
|
* @return bool
|
|
|
- *
|
|
|
+ *
|
|
|
* @require $group->zasobID - Allowed only network group based on Zasob.
|
|
|
*/
|
|
|
public function createGroup(ObjectGroup $group) {
|
|
|
@@ -553,13 +553,13 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
* The group extragroup is created from the node /LDAPv3/ldap.company.com with the realname, comment,
|
|
|
* timetolive (instead of default of 14400 = 4 hours), and keyword atttribute values given above if the user
|
|
|
* myusername has supplied a correct password and has write access.
|
|
|
- *
|
|
|
+ *
|
|
|
* -r realname
|
|
|
* This is a simple text string.
|
|
|
- *
|
|
|
+ *
|
|
|
* -t recordtype
|
|
|
* The type of the record to be added to or deleted from the group specified by groupname. Valid values are user, computer, group, or computergroup.
|
|
|
- *
|
|
|
+ *
|
|
|
*/
|
|
|
$cmd = "dseditgroup -o create -n /LDAPv3/127.0.0.1 -u {$this->_rootUser} -P {$this->_rootPass} -r \"{$groupName}\" {$groupUidGenerated}";
|
|
|
$cmdOut = null; $cmdRet = null;
|
|
|
@@ -590,13 +590,13 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Add local group member.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param string $usrLogin - user login
|
|
|
* @param object $group - @see getGroup
|
|
|
* @return bool
|
|
|
- *
|
|
|
+ *
|
|
|
* @require sudoers dla _www
|
|
|
- *
|
|
|
+ *
|
|
|
* cat /etc/sudoers |grep "'.$ADMIN_USERNAME.' ALL = NOPASSWD: /usr/bin/su" || echo "'.$ADMIN_USERNAME.' ALL = NOPASSWD: /usr/bin/su " >> /etc/sudoers;
|
|
|
* cat /etc/sudoers |grep "'.$ADMIN_USERNAME.' ALL = NOPASSWD: /usr/bin/su"
|
|
|
* cat /etc/sudoers |grep "_www ALL = NOPASSWD: /Applications/Server.app/Contents/ServerRoot/usr/sbin/calendarserver_manage_principals" || echo "_www ALL = NOPASSWD: /Applications/Server.app/Contents/ServerRoot/usr/sbin/calendarserver_manage_principals " >> /etc/sudoers;
|
|
|
@@ -607,7 +607,7 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
* cat /etc/sudoers |grep "_www ALL = NOPASSWD: /usr/bin/pwpolicy";
|
|
|
* cat /etc/sudoers |grep "_www ALL = NOPASSWD: /usr/sbin/createhomedir" || echo "_www ALL = NOPASSWD: /usr/sbin/createhomedir" >> /etc/sudoers;
|
|
|
* cat /etc/sudoers |grep "_www ALL = NOPASSWD: /usr/sbin/createhomedir";
|
|
|
- *
|
|
|
+ *
|
|
|
* cat /etc/sudoers |grep "_www ALL = NOPASSWD: /usr/sbin/dseditgroup" || echo "_www ALL = NOPASSWD: /usr/sbin/dseditgroup" >> /etc/sudoers;
|
|
|
* cat /etc/sudoers |grep "_www ALL = NOPASSWD: /usr/sbin/dseditgroup";
|
|
|
*/
|
|
|
@@ -625,7 +625,7 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Remove local group member.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param string $usrLogin - user login
|
|
|
* @param object $group - @see getGroup
|
|
|
* @return bool
|
|
|
@@ -688,7 +688,7 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Add network group member.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param string $usrLogin - user login
|
|
|
* @param object $group - @see getGroup
|
|
|
* @return bool
|
|
|
@@ -714,6 +714,8 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
}
|
|
|
|
|
|
$this->createGroup($group);
|
|
|
+ $groupRealUid = $this->findGroupUid($groupUid);
|
|
|
+ if (!$groupRealUid) throw new Exception("Nie udało się utworzyć grupy sieciowej '{$group->primaryKey}'");
|
|
|
}
|
|
|
|
|
|
$cmdDsclAuth = "dscl -u {$this->_rootUser} -P {$this->_rootPass} /LDAPv3/127.0.0.1 ";
|
|
|
@@ -727,7 +729,7 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Remove network group member.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param string $usrLogin - user login
|
|
|
* @param object $group - @see getGroup
|
|
|
* @return bool
|
|
|
@@ -760,7 +762,7 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Add group member.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param string $usrLogin - user login
|
|
|
* @param object $group - @see getGroup
|
|
|
* @return bool
|
|
|
@@ -776,7 +778,7 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
|
|
|
/**
|
|
|
* Remove group member.
|
|
|
- *
|
|
|
+ *
|
|
|
* @param string $usrLogin - user login
|
|
|
* @param object $group - @see getGroup
|
|
|
* @return bool
|
|
|
@@ -907,4 +909,3 @@ class UserStorageMacOSX extends UserStorageBase {
|
|
|
}
|
|
|
|
|
|
}
|
|
|
-
|