imap_setacl

(PHP 4 >= 4.0.7, PHP 5, PHP 7)

imap_setaclBelirtilen posta kutusu ile ilgili erişim izinlerini tanımlar

Açıklama

bool imap_setacl ( resource $imap_akımı , string $posta_kutusu , string $kullanıcı , string $izinler )

Belirtilen posta kutusu ile ilgili erişim izinlerini tanımlar.

Değiştirgeler

imap_akımı

imap_open() işlevinden dönen bir IMAP akımı.

posta_kutusu

Posta kutusu ismi; daha fazla bilgi için imap_open() işlevine bakınız.

kullanıcı

Erişim izinleri değiştirilecek kullanıcı.

izinler

Kullanıcıya verilecek izinler. Boş bir dizge atanması geçerli izinleri siler.

Dönen Değerler

Başarı durumunda TRUE, başarısızlık durumunda FALSE döner.

Notlar

Bu işlev sadece c-client2000 ve üstü kütüphane sürümlerini kullanan kullanıcılar için kullanılabilir.

Ayrıca Bakınız

  • imap_getacl() - Belirtilen posta kutusunun erişim izinlerini döndürür

add a note add a note

User Contributed Notes 2 notes

up
0
hartmut dot woehrle at hwds dot ch
1 year ago
After getting the ACL's from imap_getacl you want to set them for a user on any mailbox folder like this:

foreach ( $Folders as $key => $Maildir ) {
imap_setacl($domains , "user/john.doe/".$Maildir , $userid, "lrswipkxte");
}

You can use a form that translates the ACLs like the following (thanks to cyradm manual):

  switch ($right) {
      case "read" :  $aclstring = "lrs";
          break;
      case "post" : $aclstring = "lrsp";
          break;
      case "append" : $aclstring = "lrsip";
          break;
      case "write" : $aclstring = "lrswipkxte";
          break;
      case "delete" : $aclstring = "lrxte";
          break;
      case "all" : $aclstring = "lrswipkxte";
          break;
      case "admin" : $aclstring = "lrswipkxtea";
          break;
      case "none" : $aclstring = "";
          break;
  }
up
0
panayotis at yellownetroad dot com
15 years ago
I noticed that using:
imap_setacl ($conn, $mbox, $userid, "")
will act like:
"deleteaclmailbox $mbox $userid"  (remove the ACL on mailbox for userid).
To Top