Wstęp
Funkcjonalność znajduje się w zakładce Administracja -> Konfiguracja systemu -> Konfiguracja skrzynek pocztowych i umożliwia tworzenie oraz zarządzanie konfiguracjami skrzynek pocztowych w systemie.
Zakładka Konfiguracja skrzynki pocztowej
Opcje konfiguracyjne skrzynki pocztowej:
- Nazwa - nazwa konfiguracji
- Konfiguracja domyślna - określa czy jest to konfiguracja domyślna systemu, wykorzystywana np. do wysyłania powiadomień systemowych
- Email - email z którego będziemy wysyłać wiadomości
- Serwer pocztowy - nazwa serwera pojawiająca się w adresie nadawcy maila
- Serwer pocztowy SMTP - adres serwera SMTP odpowiedzialnego za wysyłanie wiadomości
- Numer portu SMTP - numer portu serwera SMTP odpowiedzialnego za wysyłanie wiadomości
- Adres źródłowy - alias skrzynki wysyłającej powiadomienia
- Limit czasu - Maksymalny czas oczekiwania na połączenie z serwerem (w milisekundach)
- Użytkownik skrzynki pocztowej - Nazwa użytkownika pojawiająca się w adresie nadawcy maila
- Używaj SSL - Parametr określający, czy używać bezpiecznego połączenia SSL/TLS
- Używaj StartTLS - Parametr określa, czy używać STARTTLS
- Debug - Logowanie szczegółowych informacji na temat wysłanych wiadomości. Wiadomości logowane są do loggera 'com.plusmpm.email.MailClient'
- Metoda uwierzytelnienia - wybór metody uwierzytelniania przy połączeniu z serwerem. Obecnie można wybrać Login i Hasło oraz OAuth2
- Użytkownik SMTP - nazwa użytkownika serwera SMTP. Dostępne tylko jeśli wybraliśmy metodę uwierzytelnienia Login i Hasło
- Hasło SMTP - hasło użytkownika serwera SMTP. Dostępne tylko jeśli wybraliśmy metodę uwierzytelnienia Login i Hasło
- Połączenie OAuth2 - wybór połączenia OAuth2, skonfigurowanego w zakładce Konfiguracja OAuth2. Dostępne tylko jeśli wybraliśmy metodę uwierzytelnienia OAuth2
Zakładka Konfiguracja OAuth2
W systemie do uwierzytelniania połączenia ze skrzynką pocztową można wykorzystać protokół OAuth2 z Authorization code grant type. Aby to zrobić należy stworzyć klienta OAuth2 oraz dodać mu połączenie.
Opcje konfiguracyjne klienta OAuth2:
- Nazwa - nazwa klienta
- Client Id - id klienta OAuth2
- Client Secret - secret klienta OAuth2
- Scope - określa do jakich zasobów chcemy uzyskać dostęp
- Authorization Url - url na które zostaniemy przeniesieni w celu autoryzacji
- Token Url - url na które wysyłamy zapytania o token dostępu
Dodawanie połączenia:
Aby dodać nowe połączenie należy poprawnie skonfigurować klienta, a następnie kliknąć na przycisk Nowe połączenie, znajdujący się na górze sekcji Połączenia w zakładce Konfiguracja Klienta OAuth2. Wyskoczy nam okienko w którym musimy wpisać adres e-mail dla którego chcemy dodać połączenie. Gdy to zrobimy zostaniemy przeniesieni na stronę dostawcy skrzynki pocztowej np. Outlook i musimy się tam zalogować.
Konfigurowanie klienta na stronie dostawcy:
Przy konfigurowaniu klienta na stronie dostawcy należy pamiętać o ustawieniu odpowiedniego redirect_url. Url powinno wyglądać w ten sposób: Adres serwera plusworkflow + /PlusWorkflow/api/oauth/redirect
Konfiguracja znanych dostawców:
Outlook:
Poradnik tworzenia aplikacji: https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app
Ustawienia klienta w systemie PlusWorkflow:
Scope | offline_access https://outlook.office.com/IMAP.AccessAsUser.All https://outlook.office.com/SMTP.Send |
Authorization Url | https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize |
Token Url | https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token |
<tenant-id> należy zastąpić Identyfikatorem dzierżawy, który można znaleźć w ten sposób: https://docs.microsoft.com/en-us/azure/active-directory/fundamentals/active-directory-how-to-find-tenant
Jeśli do Authorization Url dopiszemy parametr prompt=select_account , będziemy mogli wybrać na które konto chcemy się zalogować.
Gmail:
Poradnik tworzenia klienta: https://developers.google.com/identity/protocols/oauth2/web-server#creatingcred
Ustawienia klienta w systemie PlusWorkflow:
Scope | https://mail.google.com/ |
Authorization Url | https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&prompt=consent |
Token Url | https://oauth2.googleapis.com/token |
Parametry access_type oraz prompt są potrzebne aby uzyskać refresh token.