gpt4 book ai didi

delphi - 我如何知道使用了哪种 SASL 机制?

转载 作者:行者123 更新时间:2023-12-03 15:35:06 27 4
gpt4 key购买 nike

在我的代码中,在创建 TIdIMAP4 连接之前,我设置了一大堆 SASL 机制,希望按照规定的“最好到最差”顺序,如下所示:

IMAP.SASLMechanisms.Add.SASL := mIdSASLCRAMSHA1;
IMAP.SASLMechanisms.Add.SASL := mIdSASLCRAMMD5;
IMAP.SASLMechanisms.Add.SASL := mIdSASLSKey;
IMAP.SASLMechanisms.Add.SASL := mIdSASLOTP;
IMAP.SASLMechanisms.Add.SASL := mIdSASLAnonymous;
IMAP.SASLMechanisms.Add.SASL := mIdSASLExternal;
IMAP.SASLMechanisms.Add.SASL := mIdSASLLogin;
IMAP.SASLMechanisms.Add.SASL := mIdSASLPlain;

并且我正在设置IMAP.AuthType := iatSASL;所以我认为它应该与SASL连接。但是有没有办法(比如,在连接建立之后)找出它在创建连接时实际使用的 SASL 机制?

最佳答案

抱歉,Indy 中没有任何内容可以找出尝试了哪些 SASL 和/或成功了。 Indy 将 SASLMechanisms 的内容与服务器报告的 SASL 进行比较,构建匹配列表,然后循环遍历该列表,一次尝试每个 SASL,直到其中一个成功,然后该列表为被丢弃。了解正在尝试哪些 SASL 的唯一方法是监视原始套接字流量(例如使用 Indy 的拦截组件之一),并手动解析正在发送的 IMAP 命令。

关于delphi - 我如何知道使用了哪种 SASL 机制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17984383/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com