class Net::IMAP::SASL::AnonymousAuthenticator

ANONYMOUSSASL 机制的验证器,由 RFC-4505 指定。 请参阅 Net::IMAP#authenticate

属性

anonymous_message[R]

用于 ANONYMOUS 机制的可选令牌,长度最多为 255 个 UTF-8 字符。

如果它包含“@”符号,则消息必须是有效的电子邮件地址(来自 RFC-2822addr-spec)。AnonymousAuthenticator 不验证电子邮件语法。

否则,它可以是 StringPrep::Trace 配置文件允许的任何 UTF8 字符串。

公共类方法

new(anonymous_message = "", **) → authenticator 单击以切换源代码
new(anonymous_message: "", **) → authenticator

创建 “ANONYMOUSSASL 机制的验证器,如 RFC-4505 中指定。要使用此验证器,请参阅 Net::IMAP#authenticate 或您的客户端的身份验证方法。

参数

任何其他关键字参数都会被静默忽略。

# File net-imap-0.5.4/lib/net/imap/sasl/anonymous_authenticator.rb, line 37
def initialize(anon_msg = nil, anonymous_message: nil, **)
  message = (anonymous_message || anon_msg || "").to_str
  @anonymous_message = StringPrep::Trace.stringprep_trace message
  if (size = @anonymous_message&.length)&.> 255
    raise ArgumentError,
          "anonymous_message is too long.  (%d codepoints)" % [size]
  end
  @done = false
end

公共实例方法

done?() 单击以切换源代码

当发送初始客户端响应时返回 true。

除非此方法返回 true,否则身份验证不应成功,但这表示成功。

# File net-imap-0.5.4/lib/net/imap/sasl/anonymous_authenticator.rb, line 64
def done?; @done end
initial_response? → true 单击以切换源代码

ANONYMOUS 可以发送初始客户端响应。

# File net-imap-0.5.4/lib/net/imap/sasl/anonymous_authenticator.rb, line 51
def initial_response?; true end
process(_server_challenge_string) 单击以切换源代码

返回 anonymous_message

# File net-imap-0.5.4/lib/net/imap/sasl/anonymous_authenticator.rb, line 54
def process(_server_challenge_string)
  anonymous_message
ensure
  @done = true
end