加入请求与验证码网关:零信任边界防御与筛选流程
详解 Telegram 群组加入请求与验证码网关:开启审批后待审成员能看到什么、如何阅读队列中的账号年龄与共同群组、人工审批、机器人挑战与完全无公开入口三种方案的成本取舍,以及无人值守队列为何比敞开大门更糟。
详解 Telegram 群组加入请求与验证码网关:开启审批后待审成员能看到什么、如何阅读队列中的账号年龄与共同群组、人工审批、机器人挑战与完全无公开入口三种方案的成本取舍,以及无人值守队列为何比敞开大门更糟。

可以设置一条邀请链接,使点击它的人不会直接进入房间,而是进入一个队列,必须有人放行才能通过。
第 061 步把这称为反垃圾的第一层,也是杠杆率最高的一层,因为一个从未加入的账号什么也发不出来。本步讲的是门本身:从外面看等待是什么样子、由谁来开门,以及你为那些不愿等待的人所付出的代价。
完成本步后你将能够
- 开启审批,并了解待审成员能看到什么。
- 读懂队列,它显示的信息远不止一个名字。
- 在人工审批、验证挑战和完全不设门禁之间做出选择。
- 识别出无人查看的队列,它比没有门更糟。
当有人点击链接时会发生什么
开启审批后,打开你邀请链接的人会看到一个提示,说他们的请求已发送。他们还不是成员,无法阅读对话、看不到还有谁在群里,也不能发言。他们只能等待。
在你这一侧会出现一个队列,它承载的信息远不止一串名字。每条记录都会显示此人的头像、个人简介,以及——值得学会解读的部分——该账号存在了多久、你们是否有共同群组。这两项信息起了大部分作用:一个本周才创建、没有任何共同群组、还和另外十一个账号一起涌来的账号,与一个已在平台上多年、并且身处你也在运营的两个社群中的人,是完全不同的情况。
批准只需点一下,对方立即加入。拒绝同样只需点一下,而且是悄无声息的——不会告知他们被拒绝了,只会显示他们不在群里。
四扇门,以及每一扇的代价
这里的每个选项都在用到达人数换取注意力。问题在于你的社群真正短缺的是哪种资源。
无门禁
人工审批
验证挑战
仅限邀请
任何拿到链接的人都能直接进入
这是默认设置,也是大多数房间在大多数时候的正确设置。在一个人决定加入和能够阅读之间没有任何阻碍,这正是社群还小、没人有理由攻击它时你想要的效果。
它的失败是具体而非普遍的:当有人开始把你的链接发到会被批量采集的地方,或者当一波自动化账号涌来时,它才会失败。在那之前,门禁只是在解决一个你并不存在的问题,并让你损失本会欢迎的到达者。
诚实的检验标准是你能否指出具体的危害。“陌生人可能会加入”在一个公开社群中不是危害——那正是它的目的。房间里出现垃圾信息,或者成员列表里全是从不发言的账号,才是危害。
在有什么东西真的走进来之前,就让门开着。在一个冷清的社群上设门禁,只会损失成员,什么也防不住。
请求进入队列,由你来阅读
这是可用的最强控制手段,也是唯一带有持续成本的手段。它彻底阻止了自动化加入,因为脚本可以到达队列却无法走出队列,而且它让你在每个人看到任何内容之前先审视他们。
它需要的是有人去打开队列。每天一次足够;每周一次通常太慢,因为一个周一申请加入、到周五还没收到任何消息的人,已经忘了这个房间的存在。
要看账号年龄和共同群组,而不是头像,头像什么也说明不了。并且要接受你偶尔会拒绝掉真实的人——没有办法区分一个诚实加入的新账号和一个不诚实加入的新账号,这就是为什么这道门适合那些稍微有点排他性也无所谓的社群。
对自动化加入的完整解答,前提是确实有人阅读队列——而队列就是全部成本。
进入之前必须先做点什么
由机器人监视请求,私信联系对方,要求他们做点什么——按个按钮、回答一个问题——完成后就批准他们。它能在人工队列无法扩展的地方扩展,这就是它的全部理由。
要清楚它过滤的是什么。它不核查身份,也不核查意图。它核查的是是否愿意做一点点工作,这对批量涌入确实有效,但对任何专门想进来的人毫无用处。
两点提醒。机器人需要批准成员的权限,这使它成为管理员——而第 058 步的规则毫无例外地适用:绝不要授予它添加管理员的权限。另外,验证挑战对某些真实的人来说也是一堵墙,包括任何限制了谁可以给自己发消息的人,因为机器人的私信可能永远送不到。
以增加一个管理员机器人为代价来扩展门禁。过滤的是付出的努力,而不是身份——而且它会悄无声息地挡掉一些真实的到达者。
完全没有公开入口
没有公开地址,没有在流通的链接,只能通过你亲手交给某人的链接进入。严格来说这里没有门禁,因为没有门——任何没有被给予进入方式的人都无法到达这个房间。
这对非常多的房间来说都是正确的形态,但它被低估了,因为它听起来不够有野心。一个团队、一个项目、一群已经互相认识的人:他们都不需要被找到,而他们都受益于永远不必去考虑其他那些标签页。
它需要的纪律是链接卫生,见第 066 步。一条两年间发给过四十个人的链接实际上已经等同于公开,解决办法是撤销它并签发一条新链接,而不是在旧链接前面加一道门禁。
对于一个从来就不该被找到的房间,这不是一个更弱的选项——而是正确的选项,它让整个问题就此消失。
无人查看的队列
这是整个功能的失败模式,而且它看起来不像失败。一个社群在艰难的一周里开启了审批,艰难的一周结束了,十八个月后队列里积压了两百个人,他们每个人都曾在某个时刻决定想加入你的房间。
从外面看,这与被拒绝毫无区别。没有人发送提醒,也没有任何通知说请求一直在等待,绝大多数人干脆就忘了。房间并没有受到保护;它只是被悄悄关闭了。
所以门禁必须有一个负责人。一个被指定负责打开队列的人,或者一个不需要任何人的自动验证挑战,或者干脆不设门禁。无人值守的队列比敞开的大门更糟,因为它保留了有路可进的外表,却不让任何人使用它。
如果你发现了一个这样的队列,要逐一处理而不是直接清空。其中大多数人都是真实的,批准一个两个月前的请求并附上一句简短说明,说队列被遗漏了,通常能得到友好的回复——他们本来以为自己不受欢迎。
现在试一试——五分钟
四个步骤,第一步就决定了你是否需要其余几步。
- 检查你运营的任何房间是否有队列 在群组设置的成员区域。如果那里有一个数字,那就是有人在等待,而这是本页最紧急的事。
- 阅读一条记录实际显示给你的内容 账号年龄和共同群组。在你现有的队列上练习,这样你就不会在洪水来临时才开始学。
- 在开启之前先决定谁负责这个队列 要一个名字,而不是一个意图。如果没有人,就选择验证挑战,或者让门开着。
- 做两条链接,而不是一条 一条让你亲自邀请的人立即加入,一条让任何公开渠道来的人进入队列。第 066 步会介绍链接还能做的其他事情。
描述是等待者所拥有的全部信息
队列中的人能看到三样东西:房间的名称、头像和描述。这就是他们决定这场等待是否值得开始的全部依据,而在大多数社群里,描述是三十秒内写完、之后再也没有看过的。
它承担的作用比你拥有的任何其他一句话都大。写得好,它会替你筛掉那些本来也会被拒绝的人——有人读了房间真正的用途后意识到这不适合自己,干脆就不申请了,这既不花你任何成本,还省去你一个决定。
三行就够了。这个房间是做什么的,用最直白的话说。它是给谁的,如果这比“所有人”更窄的话。以及接下来会发生什么——请求会被审核,大概多快,以及如果花了一天也没什么问题。最后这一行不花任何成本,却能避免管理员收到的最常见的那类私信。
这一阶段的常见问题
待审的人能看到任何东西吗?
不能。在被批准之前,他们无法阅读消息、查看成员列表或发言,正是这一特性使它成为第 061 步三层中最强的一层。他们能看到群组选择公开显示的任何内容——名称、头像和描述——这就是为什么要写好描述,告诉人们他们正在申请加入的是什么。
我拒绝他们时,对方会收到通知吗?
不会发送任何通知。从他们那一侧看,请求只是永远没有完成,这是有意为之,而且比听起来更友善——拒绝通知会招来争论,而在一个公开社群里,那场争论会出现在你的私信里。其结果是,你拒绝过的人以后可能再次申请,而系统不会记住之前的决定。
审批对频道也适用吗?
适用,但道理略有不同。频道没有需要保护的对话,所以这道门禁关乎的是谁能阅读,而不是谁能捣乱。这使它成为付费或私密频道的正确工具,而对公开频道通常是不合适的,因为公开频道的全部目标就是被人加入。
我应该用验证机器人还是手动审批?
取决于流量大小。每周几个请求,读起来比配置任何机器人都快,而且阅读它们能让你了解正在到来的是些什么人。每天几十个就超出个人能力了,到那时机器人是唯一可持续的答案——同时按第 058 步所述把管理员权限保持得尽可能窄。
我能看到某个人是从哪里来的吗?
可以,前提是你做了不止一条链接并给它们命名。第 059 步的日志会按人们进入时所走的链接记录加入情况,这使命名链接成为衡量人们实际使用哪条路线的诚实指标——也让某条特定链接上的突然爆发立即变得可见,随之而来的显然就是撤销它。
这能挡住一个铁了心要进来的人吗?
不能,这一点值得说清楚。人工队列可以被一个看起来普通的账号通过,验证挑战也可以由一个想进来的人回答。门禁消除的是批量和随意的到达。如果担心的是某个特定的人而不是流量,那要用的是别的工具——拉黑,以及最终让他没有链接可用的房间。