如何使用PHP批量创build/禁用/删除zimbra帐户?

我们为会员提供zimbra邮件服务器,所有会员都有电子邮件地址,我们可以使用我们的服务来login无线networking等。会员资格是暂时的。 我们每六个月会有新成员和离任成员。 现在,我们已经创build了当前成员从.csvfile upload他们的信息。 六个月后,我们将不得不禁用当前的邮件帐户,并添加新的。

我想要做的是使用PHP完成这些任务。 我在Zimbra的维基页上find了一些例子。 他们展示了如何使用Perl创build从.csv文件读取帐户。

#!/usr/bin/perl # Lookup the valid COS (Class of Service) ID in the interface or like this my $cosid = `su - zimbra -c 'zmprov gc Default |grep zimbraId:'`; $cosid =~ s/zimbraId:\s*|\s*$//g; while (<>) { chomp; # CHANGE ME: To the actual fields you use in your CSV file my ($email, $password, $first, $last) = split(/\,/, $_, 4); my ($uid, $domain) = split(/@/, $email, 2); print qq{ca $uid\@$domain $password\n}; print qq{ma $uid\@$domain zimbraCOSid "$cosid"\n}; print qq{ma $uid\@$domain givenName "$first"\n}; print qq{ma $uid\@$domain sn "$last"\n}; print qq{ma $uid\@$domain cn "$uid"\n}; print qq{ma $uid\@$domain displayName "$first $last"\n}; print qq{ma $uid\@$domain zimbraPasswordMustChange TRUE\n}; print qq{\n}; } 

我如何使用PHP文件运行这些zimbra命令? 我想从.csv文件读取列表,并在服务器上创build和/或禁用帐户。

几年前我们为Zimbra账户pipe理开发了自己的接口,用于6.0.8。 当时,肥皂支持没有那么好logging,并采取了一些试验和错误。

Google代码和GIThub上有一些PHP类。

请参阅http://www.plymouth.edu/webapp/code/zimbra.class.phps或https://github.com/libersoft/zcs-php