小编Man*_*ati的帖子

使用 OAuth2.0 的客户端凭据流程进行 IMAP 身份验证失败 | 爪哇 | 在线交流

我在尝试使用OAuth2.0的客户端凭据授予流程连接两个 IMAP 协议时遇到身份验证失败问题。在哪里,我一直遵循 Microsoft 在其分步指南中建议的步骤,即“使用 OAuth 验证 IMAP、POP 或 SMTP 连接

我一直在使用此 github 项目来使用客户端凭据授予流程获取访问令牌使用 Java 的 MSAL 客户端凭据授予

IMAP的 Java 代码

public static void connectIMAP(String userEmail, String accessToken){
    String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
    Properties props= new Properties();
    
    props.put("mail.imap.ssl.enable", "true");
    props.put("mail.imap.sasl.enable", "true");
    props.put("mail.imap.port", "993");
    
    props.put("mail.imap.auth.mechanisms", "XOAUTH2");
    props.put("mail.imap.sasl.mechanisms", "XOAUTH2");
    
    props.put("mail.imap.auth.login.disable", "true");
    props.put("mail.imap.auth.plain.disable", "true");
    
    props.setProperty("mail.imap.socketFactory.class", SSL_FACTORY);
    props.setProperty("mail.imap.socketFactory.fallback", "false");
    props.setProperty("mail.imap.socketFactory.port", "993");
    props.setProperty("mail.imap.starttls.enable", "true");
    
    props.put("mail.debug", "true");
    props.put("mail.debug.auth", "true");

    Session session = Session.getInstance(props);
    session.setDebug(true);

    try {
        final …
Run Code Online (Sandbox Code Playgroud)

java pop3 imap exchange-server oauth-2.0

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

exchange-server ×1

imap ×1

java ×1

oauth-2.0 ×1

pop3 ×1