【问题标题】:IMAP: Discourage client from trying to create mailboxIMAP:阻止客户端尝试创建邮箱
【发布时间】:2014-10-08 21:08:36
【问题描述】:

我正在实现一个 IMAP 服务器,对与其他系统共享的消息进行操作,并且由于业务需要,不允许用户通过 IMAP 服务器创建或删除消息或邮箱。

然而在我们的生产环境中,我们经常会看到以下三个命令经常出现

15 EXAMINE "Drafts"

16 STATUS "Drafts"

17 CREATE "Drafts"

对于所有这三个,我们都会回复 NO 响应,但是当用户下次再次登录时,我们会看到发出相同的命令。

有没有办法阻止客户端发出这些命令?我们唯一的文件夹是INBOX

【问题讨论】:

  • 我听起来好像客户端记得在会话期间创建文件夹(而不是创建邮箱)被拒绝,但不会持续到未来的会话。您无法强制客户将此类花絮添加到其数据文件格式中。总结:客户是对的,你错了,拒绝命令就好了。
  • RFC3501 没有提到文件夹,它们确实被称为邮箱。无论如何,我和你一样想,但 legoscia 回答了我的问题。
  • 嗯,我以为我在上面的评论中有这个......无论如何,客户端需要在每次登录后重试,因为在更改权限后继续失败是一个用户更可见的问题而不是重新发送一些被忽略的命令。

标签: imap


【解决方案1】:

原则上,CANNOTresponse code ("该操作违反了服务器的某些不变量,可以 永远不会成功”)应该可以传达信息,尽管我怀疑很少有客户会对此类反馈做出适当的反应。

【讨论】:

  • 我不知道 RFC5530。谢谢!
  • 客户端仍然需要在下一个会话中再次尝试该命令,因为在此期间它无法知道服务器是否已升级。
猜你喜欢
  • 1970-01-01
  • 2012-07-05
  • 2015-09-10
  • 1970-01-01
  • 2018-08-26
  • 2010-11-12
  • 1970-01-01
  • 2011-03-31
  • 2021-03-28
相关资源
最近更新 更多