【问题标题】:How to create/disable/delete a zimbra account using php?如何使用 php 创建/禁用/删除 zimbra 帐户?
【发布时间】:2014-08-12 09:14:27
【问题描述】:

我们为会员提供了一个 zimbra 邮件服务器,所有会员都有我们提供给他们的电子邮件地址,以便他们使用我们的服务,例如登录无线网络等。会员资格是临时的。我们将每六个月有新成员和离开成员。现在我们已经创建了当前成员,从 .csv 文件上传他们的信息。六个月后,我们将不得不禁用当前邮件帐户并添加新帐户。

我想做的是使用 PHP 完成这些任务。我在Zimbra's wiki page 上找到了一些示例。他们展示了如何使用 Perl 创建从 .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 文件中读取列表并在服务器上创建和/或禁用帐户。

【问题讨论】:

    标签: php perl zimbra


    【解决方案1】:

    使用 su - zimbra 以 Zimbra 身份登录

    使用 zimbra 命令创建 php 文件。

    当你使用 php 执行 zimbra 命令时,使用

    shell_exec('/opt/zimbra/bin/');

    例如,

    shell_exec('/opt/zimbra/bin/zmprov sp lahirutm@abcd.com 123@com ');

    然后使用crontab -e添加cron作业

    */1 * * * * php /var/www/phpfile.php

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多