Доступный почтовый ящик Office356 с PHP

Я работаю над скриптом PHP для чтения и анализа журналов ошибок, отправленных в общий почтовый ящик.

Я использую imap_open () для подключения.

Если я подключаюсь со следующими учетными данными к своему почтовому ящику, он отлично работает

server: {outlook.office365.com:993/imap/ssl} username: myname@domain.com password: mypas$word 

Однако, если я хочу подключиться к sared почтовому ящику с последующими учетными данными, я получаю сообщение об ошибке

 server: {outlook.office365.com:993/imap/ssl} username: myname@domain.com\shared-folder@domain.com password: mypas$word 

Ошибка заключается в следующем: User is authenticated but not connected. (errflg=2) User is authenticated but not connected. (errflg=2)

Согласно моим исследованиям, это означало бы, что я использую неправильный пароль, но поскольку он работает при подключении к моему собственному почтовому ящику, это не может быть ошибкой

Я на 100% уверен, что моя учетная запись может получить доступ к общему почтовому ящику, я могу получить к нему доступ через мою учетную запись через веб-интерфейс Office 365

Еще одна деталь: мой пароль включает знак $, но это не имеет значения. Я использую одинарные кавычки в пароле, а escape-знак $ не помогает, это приводит к неудачному входе в систему даже для моего личного почтового ящика.

Solutions Collecting From Web of "Доступный почтовый ящик Office356 с PHP"

Попробуйте использовать псевдоним учетной записи

% USERUPN% /% SHAREDALIAS%, например: –

user@domain.com/sharedbox где «sharedbox» – это псевдоним общего почтового ящика, а не полный адрес электронной почты

Я видел разные сообщения о том, что некоторые люди используют косую черту (/), а некоторые используют обратную косую черту (\)


редактировать

Вы используете псевдоним почтового ящика? Не используйте sharedbox@shareddomain.com

Конфигурация Exchange:

  USER EMAIL: user@maindomain.com PASSWORD: password SHARED MAILBOX: shared@anotherdomain.com (could also be @domain.com, of course) SHARED MAILBOX ALIAS: shared-mailbox 

Примечание. Обязательно создайте псевдоним UNIQUE всегда с почтовым ящиком, поскольку он создает пользователя [alias] @ maindomain.com. В этом случае shared-mailbox@maindomain.com

Настройки для конфигурации IMAP:

  EMAIL ADDRESS: shared@anotherdomain.com (shared mailbox) IMAP SERVER: outlook.office365.com SMTP SERVER: smtp.office365.com USERNAME: user@maindomain.com\shared-mailbox (user\shared mailbox alias) PASSWORD: password (user's password) 

Другим решением, которое сработало для нас, является добавление данных имени пользователя в параметр почтового ящика с использованием соответствующих флагов.

Например, с конфигурацией Office 365

 USER EMAIL: user@maindomain.com PASSWORD: password SHARED MAILBOX: shared@anotherdomain.com 

то вызов imap_open будет

 imap_open("{outlook.office365.com:993/imap/ssl/authuser=user@maindomain.com/user=shared@anotherdomain.com}", "user@maindomain.com", "password"); 

Обратите внимание на включение электронной почты основного пользователя с использованием флага / authuser и общего почтового ящика с использованием флага / пользователя.

Это сработало для нас, когда подход псевдонимов почтового ящика в предыдущем ответе не был успешным.