当前位置: 首页 > 知识库问答 >
问题:

A1没有使用访问令牌对outlook进行身份验证失败

井昊乾
2023-03-14

我们正在尝试使用OAuth2.0在我们的应用程序中登录Outlook.com,我们已经完成了应用程序AAD的注册。应用程序成功地验证了用户,并用access_token响应,现在进一步我们想从imap服务器读取电子邮件,这里我们得到了失败,请尝试和帮助我们解决这个问题。

  • 确定Microsoft Exchange IMAP4服务已就绪。[uaboadiauabsadaamqbdaeeamaawadyamgaaekatgbeafaaugbbaeqalgbpafuavabmae8atwblac4aqwbpae0a]A0能力
  • 功能IMAP4 IMAP4rev1 auth=plain auth=xoauth2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE literal+A0 OK功能已完成。调试IMAPS:auth:PLAIN调试IMAPS:auth:XOAUTH2调试IMAPS:protocolConnect登录,host=outlook.office365.com,user=siccsanda@outlook.com,password=DEBUG IMAPS:property:mail.imaps.auth.PLAIN.disable DEBUG IMAPS:机制PLAIN禁用:服务器调试IMAPS不支持机制登录:服务器A1不支持机制NTLM A1 AUTHENTICATE XOAUTH2 SGJKWVJBQUFHBWDZWE81AZJ2NEVQYMDUSE5BWUCYNENWYXJ4V2DEEK9LZ2E2S0J0SGZKCDVKV1HKK3E5T2EXSEJOCITIQW1JWVJBRKH6NWXFRWJJRKH6NWXFRWJBRKH6NWXFRWJWUVVXVRUXSKTRSMDHDM51ZJU0PRNZZZVNYWUV1DVD1PJUUXMCV2LPY000BLYZWELZA0 Tmk09mudg4ohncnnvpbzlowdnxynzfwudztgvmbvpjug5noulrk3mzazhyqwtpowy2vtl6mgfjuhdkqwrsbk9jzelvnzjqqyjhyexjmvdb6ohpfv2exrm8xvvpiuhjmyavlzwndbdbdbdydydnbdydydnbdydydydnbydydydydbdydydydbdydydydbdydydydbdydydbydydydydyddqzgvnm3cza1fbsudpr09yrefaymdhk3zdempqeerwt29wzexertqzaldhbhrvshjdvk8zs1bsmffzmzv5sdntewnak0xqtel1u043vvzhewozuhzwejz1bdzpdkxksuozvkhpcjbbbtrxedlvwjrbnblrg0yc2qpsmuyb1vvmzzfzzmzmzwzwzwzwzwzwkpjbxblbrg0vpsmuyb1vsmuyzzwzhbbdrxdwbbrxdwjbbbrxdwbdryblblg0bsmuyb1vsmuyblyblblbrqunqbnrosgoybunhexpmri9qtxkvbnv4vfnove0wby9qs045me00m1vgt3hdsk5mrldivkkkwq3rzcdnwrgz6mwvzejdzv1ntlzntslhksk02bkfiewzzrqntzb3q3a1au9pu1j2r3pyv0o1wxlvrndxxqjbqbxfmejbedcqld6vbuvxtktsm5ma 0S3N3Z3S2NKYKLTA1C1WWDBBU84ZWZRUXIDU16UNPUQ2O3NTQZS0DCOEPFUTLZSUX0TKJQMTZMCJFYR1NNVKFWB2TKUU1YU2DFD2PJZNOZKZGRWDE0MFJBLZAYJJDRBZZNNWWKDOQ3I2MM15ZZN2U1UZZAUT2UZBRBRY2ZDHFBUJ3N1BUZGVBUJ2GYCTJMY2NLEEVHOXJUSHFRA1G4CVVRNW2BU2rvt2jtl3vgm1hzl1vuajlhzufbercdezvuxhsrekvau5aegvos2ffsdfyde5ncti2by9osw1nnzzdb3bwcctzb0p3dujqne5wbddfhy1rqnedycjfurvkwbgrtw4znddwode2wezjwk1fsvjxbjfrzyouhrzldeaddasfhmsnbbrcdyde3dujqde5dujqde5dujqde5dujqdyde2dez0HBZZ09AQE=A1 NO AUTHENTICATE失败。

请查找连接代码

 properties.put("mail.imaps.host", "outlook.office365.com");
        properties.put("incomingHost", "outlook.office365.com");
        properties.put("outgoingHost", "smtp.office365.com");
        properties.put("mail.imaps.ssl.enable", "true");
        //properties.put("mail.imaps.sasl.enable", "true");
        properties.put("mail.imaps.sasl.mechanisms", "XOAUTH2");
       // properties.put("mail.imap.auth.login.disable", "true");
        properties.put("mail.imaps.auth.plain.disable", "true");
        //properties.put("mail.imaps.auth.plain.disable", "true");
        properties.put("mail.debug", "true");
        properties.put("mail.debug.auth", "true");
        properties.setProperty("mail.imaps.ssl.trust", "*");
        properties.setProperty("mail.smtp.starttls.enable","true");
       
        this.store = session.getStore("imaps");
     store.connect("outlook.office365.com", "abc@outlook.com", "access_token");

共有1个答案

沈弘盛
2023-03-14

我也在和Xoauth斗争。在我的代码中,我设置了属性:

Mail property mail.imaps.auth.plain.disable: true
Mail property mail.imaps.auth.mechanisms: XOAUTH2
Mail property mail.imaps.port: 993
Mail property mail.store.protocol: imaps
Mail property mail.imaps.ssl.enable: true
Mail property mail.imaps.partialfetch: false
Mail property mail.mime.decodetext.strict: false
Mail property mail.imaps.peek: true
Mail property mail.mime.charset: UTF-8

导致(至少)XOAUTH登录

DEBUG IMAPS: AUTHENTICATE XOAUTH2 command result: A1 NO AUTHENTICATE failed.
 类似资料:
  • 致命:“https://github.com/scuzzlebuzzle/ol3-1.git/'”身份验证失败

  • 我试图弄清楚我应该如何坚持身份验证。 假设用户使用电子邮件和密码成功进行身份验证。然后服务器生成并返回两个令牌: accesstoken(jwt过期15分钟)将存储在浏览器存储中 refreshtoken(jwt过期7天)作为安全cookie 当将访问令牌存储在本地存储(或会话存储)中时,React 应用程序将简单地检查它是否存在于存储中并继续渲染私有路由。因此,这意味着如果用户有一个无效/被盗的

  • 我正在做一个项目(没有生产级别,只是为了提高我的技能),我正在使用JWT来处理身份验证。从我所读到的内容来看,仅使用JWT作为访问令牌是非常不安全的,因此我们需要刷新令牌。因此,在登录时,服务器返回一个访问令牌和一个刷新令牌(我将存储在httpOnly cookie中)。访问令牌在短时间内到期,但刷新令牌在到期时用于获取新令牌。 我的问题是,我们何时使用刷新令牌来获取新的访问令牌?是当用户想要获得

  • 我想使用我的GitLab帐户中的私有令牌克隆GitLab存储库,而不提示输入我的自动化脚本。 有人能给我一个样品吗? 我知道我可以使用用户和密码执行此操作: 我知道使用ssh密钥是可能的 但是,这两种选择都是不够的。

  • 我正在尝试为我的应用程序构建一个身份验证解决方案。我使用React作为前端,使用API模式下的Rails作为后端。我有一个外部身份验证解决方案,我需要使用它。我无意中发现了Knock for JWT令牌管理,但我不理解文档,尤其是这部分“它必须有一个身份验证方法,类似于has_secure_password添加的方法”,因为由于我的外部身份验证服务,我没有用户模型。因此,在我的头脑中,登录请求将发