Как получить доступ к почтовой учетной записи через IMAP с помощью Java, используя мои имя пользователя и пароль Active Directory? - PullRequest
0 голосов
/ 29 октября 2019

У меня есть требование, в котором мне нужно разработать в java способ доступа к электронной почте для обмена (Outlook) через IMAP, используя учетную запись электронной почты, имя пользователя сети и сетевой пароль в качестве аутентификации.

КакНапример, у меня есть следующее:

Учетная запись электронной почты: hello@company123.com

Сетевой пользователь: User123

Сетевой пароль: Pass123

Так что идеянастройка вызова вроде connectIMAP ("hello@company123.com", "User123", "Pass123") для чтения электронных писем hello@company123.com

Я проверил следующий код, который я взял из другого вопроса ( JavaMail читает последние непрочитанные письма с использованием IMAP ), но показывает только, как получить доступ к учетной записи gmail, используя электронную почту в качестве пользователя.

public class GmailFetch {
    public static void main( String[] args ) throws Exception {
        Session session = Session.getDefaultInstance(new Properties( ));
        Store store = session.getStore("imaps");
        store.connect("imap.googlemail.com", 993, "username@gmail.com", "password");
        Folder inbox = store.getFolder( "INBOX" );
        inbox.open( Folder.READ_ONLY );

        // Fetch unseen messages from inbox folder
        Message[] messages = inbox.search(
            new FlagTerm(new Flags(Flags.Flag.SEEN), false));

        // Sort messages from recent to oldest
        Arrays.sort( messages, ( m1, m2 ) -> {
          try {
            return m2.getSentDate().compareTo( m1.getSentDate() );
          } catch ( MessagingException e ) {
            throw new RuntimeException( e );
          }
        } );

        for ( Message message : messages ) {
            System.out.println( 
              "sendDate: " + message.getSentDate()
              + " subject:" + message.getSubject() );
        }
     }
 }
...