可以在 MetaMask 上撤销代币授权吗?
MetaMask 账户已授予的每一项权限都可以撤销。具体方法取决于权限类型。
MetaMask 的帮助中心区分了断开网站连接与撤销授权。断开连接只会使网站无法查看您的地址和余额。您在该网站上签署的任何代币授权仍在链上有效,仍可转移您的代币。
还有两项较新的权限也可能让 dapp 持续访问代币。自以太坊的Pectra 升级以来,MetaMask 可以使用 EIP-7702 将普通账户指向其自身的智能合约。这种智能账户状态对新用户默认开启。
MetaMask 也已开始支持的 ERC-7715高级权限,允许去中心化应用按计划花费限定数量的代币,而无需每次都请求签名。这两类权限都可以在钱包内关闭。
四种权限类型及各自的控制范围
每项权限的存储方式不同,这决定了您在哪里撤销它。
- 网站连接:允许网站查看您的公开地址、代币余额和活动,并发送交易请求供您批准。它本身无法转移资金。连接记录保存在 MetaMask 本地,移除无需任何费用。
- 代币支出上限(批准或额度):记录在代币合约上的链上记录,授权特定支出方(即您批准的合约地址)从您的钱包中转出不超过设定数量的该代币。Dapp 通常会请求无限额度。MetaMask 警告称,无限支出上限十分危险,因为被黑客攻击或存在欺诈的 Dapp 可以清空您持有的该代币的全部余额。NFT 市场使用一种相关权限 setApprovalForAll,涵盖某个系列中的所有代币。
- Permit 和 Permit2 签名:无需 gas 的签名,在合约稍后提交时授予支出上限。EIP-2612 Permit 适用于内置该功能的代币。Uniswap的Permit2合约将这一方式扩展到任何 ERC-20 代币,前提是您先授权 Permit2 本身。两种签名在提交之前都不会出现在链上。
- 智能账户委托和高级权限:EIP-7702 委托会将您的账户指向 MetaMask 的 Delegator 合约,从而支持交易批处理和代付 gas。ERC-7715 高级权限基于该智能账户,向 dapp 授予有限且有时间限制的代币访问权限,例如为订阅服务每天授权 10 USDC。每一项都需要单独执行撤销步骤。

如何在 MetaMask 上撤销代币授权
四种方法涵盖所有权限类型。每次会话结束后,我们使用第一种方法;涉及资金的操作则使用第二种或第三种。
1. 在 MetaMask 中断开站点连接
如果网站只是连接了您的钱包,且从未请求代币授权,那么断开连接就足够了。在访问了您不信任的页面之后,这也是第一步。
从钱包中移除某个网站的连接:
- 打开 Dapp 连接:在 MetaMask 扩展程序中,点击账户视图右上角的菜单并选择 Dapp 连接。在手机上,请在应用内浏览器中打开该网站,然后点按右上角的账户图标。
- 选择网站:选择该网站,然后在扩展程序上点击“断开连接”,或在移动端点击“全部断开连接”,以从中移除您的账户。
- 一次性清除全部: 依次进入“设置”、“安全与隐私”,然后点击“清除隐私数据”。只需一次点击,即可移除当前所选账户的所有网站连接。
断开连接免费且即时生效,因为它不会向区块链写入任何内容,也不会撤销任何链上授权。如果您已在网站上签署了授权,请继续下一步。

2. 在 MetaMask Portfolio 中撤销支出上限
MetaMask Portfolio 是一个独立的网页仪表板,包含 MetaMask 的授权管理器。它可列出并撤销以太坊主网、Polygon、BNB Chain、Optimism 和 Base上的支出上限。
通过 MetaMask Portfolio 撤销授权额度:
- 打开投资组合:前往 portfolio.metamask.io,连接 MetaMask,并停留在“概览”标签页。
- 切换到“支出上限”:点击“支出上限”标签页,查看已连接账户上的有效授权额度,按代币和支出方列出。
- 撤销并确认:点击授权额度旁的“撤销”,然后在 MetaMask 中确认。每次撤销都需要一笔链上交易,并需支付网络 gas 费用来处理。
Portfolio 适合希望留在 MetaMask 内、且只使用其五个受支持网络的用户。如果您使用 Arbitrum、Avalanche、Linea 或较小的公链,请从接下来的两个选项中选择一个。

3. 使用 Revoke.cash 撤销授权
MetaMask 的帮助中心将 Revoke.cash 列为第三方工具中的首选。我们将它用于在多条链上活跃的地址。除 ERC-20 支出额度外,该仪表板还会显示 NFT 授权、Permit2 许可额度和 EIP-7702 委托。漏洞检查器会将您的授权与已被攻击的合约列表进行比对。
审计并撤销100+ 个网络上的授权:
- 加载您的地址:打开 Revoke.cash 并连接 MetaMask,或将您的地址或 ENS 名称粘贴到搜索栏。ENS 名称是以 .eth 结尾的可读名称。选择要检查的网络。
- 排序和筛选:按最近时间排序,以找到新出现的恶意授权,或筛选无限额度授权。如果安全警报指出了某个合约,请按被授权方(spender)搜索。
- 撤销或批量撤销:点击授权旁边的“撤销”,并在 MetaMask 中确认。若要移除多个授权,请选中它们并使用批量撤销。这会使用 EIP-7702 智能账户,将数十次撤销合并为一笔交易。
核心仪表板免费,单个授权撤销只需支付 gas。在免费版中,Revoke.cash 每批次收费1.50美元。Premium 每年99美元,免除批次费用并增加多链视图。Ultimate 每年199美元,持续监控授权并自动撤销有风险的授权,同时包含少量 gas 预算。
其免费浏览器扩展支持所有 EVM 网络,并会在您签署可疑授权或 Permit 之前发出警告。
4. 使用区块浏览器的代币授权检查工具
大多数主要的 EVM 浏览器都有授权检查工具。MetaMask 会引导用户前往 Etherscan、BscScan 和 Polygonscan,您可以在查看交易的同一网站上验证授权对象的合约。
通过区块浏览器撤销:
- 连接 Web3:打开您的网络浏览器的代币授权检查工具,点击连接 Web3,然后选择 MetaMask。
- 检查授权对象:该检查工具会列出 ERC-20、ERC-721 和 ERC-1155 授权,并在已验证时显示授权对象的合约名称。对于您不认识的任何授权对象,请打开其合约页面。
- 撤销并支付 gas:点击条目旁的“撤销”。在 MetaMask 的确认窗口中核对代币和授权对象,然后确认交易。
每个区块浏览器检查工具只覆盖一条链。因此,审查一个在六个网络上使用过的钱包需要分别访问六次,所以我们默认使用多链工具进行全面审查。
如何撤销智能账户委托和高级权限
新的 MetaMask 用户默认启用智能账户,因此许多人现在持有 EIP-7702 委托,而并非自己设置。委托给 MetaMask 经过审计的 Delegator 合约是安全的。不过,批处理允许一笔交易同时转移多种资产,这增加了钓鱼网站凭一次签名所能造成的影响。
在 Pectra 之后的几个月里,Scam Sniffer 记录了两起大型 EIP-7702批量钓鱼案件,合计损失为254万美元。
将智能账户切换回标准账户:
- 打开账户详情:点击 MetaMask 顶部的账户选择器,点击账户旁边的三个点并选择“账户详情”,然后选择“智能账户”。
- 逐个关闭每个网络:在您想恢复的每个网络上关闭智能账户状态。该设置因网络而异,每次切换都需要一笔带少量 gas 费的交易。
- 确认还原:在 MetaMask 中查看并确认。您的地址、资金和助记词保持不变,因为该账户始终是 EOA,即由密钥控制的普通账户。
Revoke.cash 会在其“Delegations”标签页中显示有效的授权委托,但无法取消。MetaMask 不允许外部 dapp 设置或撤销 EIP-7702 委托,因此钱包中的开关是唯一的移除方式。
要取消 ERC-7715 高级权限,请在 MetaMask 中打开Dapp 连接,并撤销当前有效的权限。许多权限设有到期日,到期后会自动终止。
如果您已禁用智能账户,MetaMask 会在 dapp 请求高级权限之前要求您重新启用。该提示表明该 dapp 希望获得持续访问权限。

如何应对 Permit 和 Permit2 签名
没有任何仪表板能显示您签署过哪些 Permit 签名,因为只有在接收方提交时,它们才会出现在链上。钱包盗取者正是利用这一盲区。Scam Sniffer 最新的年度报告将大额案件损失的38%归因于 Permit 和 Permit2 签名,其中包括当年最大的一起盗窃案,涉及价值650万美元的 stETH 和封装比特币。
如果您怀疑自己在钓鱼网站上签署了 Permit,请先使用 Revoke.cash 或 Portfolio 撤销您对 Permit2合约的现有授权。同时也要撤销对 OpenSea 或 Blur 等 NFT 市场合约的授权。
接下来,请打开您 Revoke.cash 账户页面上的“签名”标签,以取消您所持代币可能存在的 Permit 签名。Revoke.cash 表示,此页面只能列出可能存在签名的代币。只有在您确信自己签署过相关内容时,才值得为取消支付 gas。
如果资金已在流出,且每次充入的 ETH 都在几秒内消失,说明您的助记词已被窃取。撤销授权无济于事。请将剩余资产转移到新钱包,并弃用旧钱包。
批准 Permit2 时,请将默认的无限额度替换为支出上限。MetaMask 允许您在签名前在确认界面编辑上限,从而限制之后的签名最多能转走多少资产。

如何在 Solana 上撤销代币权限
EVM 撤销工具不适用于 Solana,因为其权限运作方式不同。每个代币都存放在各自的代币账户中,其所有者可以指定一个委托方,在设定额度内转移代币。只有代币账户所有者才能签署 Token Program 的撤销指令,该指令会清除委托方,并将委托额度重置为零。
大多数 Solana DeFi 操作不会创建持久的委托授权。盗取者则使用虚假的领取页面,悄悄诱导您批准授权。
MetaMask 的 Solana 账户没有专门的授权对象(delegate)页面,因此您需要连接到 Solana 撤销工具。Phantom 的帮助中心推荐使用 Famous Fox Federation Revoker。Sol Incinerator 的撤销工具也会扫描 SPL Token 和 Token-2022 账户。
使用撤销工具清除 Solana 委托:
- 连接 Solana 钱包:打开撤销工具,连接 Phantom、Solflare 或其他受支持的 Solana 钱包。让它扫描您的代币账户,查找有效的授权对象。
- 检查已授权地址:逐一核对每个代币名称、mint 地址和委托地址。请保留未完成的市场上架或借贷头寸所需的任何委托。
- 撤销并签名:选择要移除的委托对象并签署交易。您的代币仍保留在您的钱包中,您只需支付标准的 Solana 网络费用。
在 Phantom 或 MetaMask 中断开 Solana 应用的连接,会停止新的签名请求,但不会撤销链上委托。这一区别同样适用于以太坊。我们的 MetaMask 与 Phantom 对比 介绍了两款钱包如何处理 Solana。

为什么撤销权限仍然重要
授权和签名钓鱼去年大幅减少,但损失仍集中在本文所述的权限上。Scam Sniffer 追踪到 2025 年通过钱包盗取工具从 106,106 名受害者处窃取了 8385万美元。这比上一年的 4.94亿美元 下降了百分之 83。
损失随市场活动而增加,在以太坊年内最大涨幅期间,第三季度达到 3100万美元。所有 11 起超过 100万美元 的案件都涉及受害者批准的签名,包括 Permit、approve 或 increaseApproval 调用、针对 Uniswap V3 仓位 NFT 的 setApprovalForAll 授权,以及 EIP-7702 批量交易。
对正规协议的授权批准同样存在长期风险。两年前授予的额度,即使协议后来遭到攻击或其前端被入侵,依然有效。攻击者无需您的密钥即可使用该额度。正如 Revoke.cash 所解释的,硬件钱包在这里无法提供保护,因为已签署的授权已经允许花费。定期撤销授权是事后唯一有效的防御手段。
我们将对去中心化交易所、跨链桥和 NFT 市场的授权视为临时授权。使用任何主流去中心化交易所或跨链跨链桥后,我们会在同一会话中撤销授权额度。下次需要时,我们只授权确切所需的金额。

MetaMask 撤销授权的常见问题与解决方法
大多数失败或令人困惑的撤销操作可归结为三个原因。在断定钱包有问题之前,请按顺序逐一检查。
1. 授权未显示
请先检查权限类型和网络:
- 确认您授予了什么:网站连接不会出现在支出上限列表中。请改为查看 Dapp 连接。如果您启用了智能账户,请查看“委托”标签页。
- 匹配网络:授权在每条链上单独记录。对于在 Arbitrum 上签署的授权,请将 MetaMask 和撤销工具都切换到 Arbitrum。如果没有该网络,请参阅我们的MetaMask 添加网络指南。
- 尝试第二个工具:Portfolio 只索引五个网络,而各个区块浏览器索引各自的网络。如果两者都找不到该授权额度,请将您的地址输入 Revoke.cash 并检查同一条链。
2. 撤销交易失败
排除 gas 和待处理交易的影响:
- 为原生代币充值:链上撤销授权需要使用该网络的原生币支付 gas,例如 ETH、POL、BNB 或 SOL。在开始长批量操作之前,请在我们的以太坊 gas 追踪器上查看当前成本。
- 清除卡住的交易:nonce 较低的待处理交易会阻塞其后的交易。nonce 是 MetaMask 为每笔交易分配的序列号。重试之前,请在“活动”标签页中加速或取消待处理交易。如果确认窗口返回错误,请参阅我们关于 MetaMask 中 JSON-RPC 内部错误的解决方法。
- 等待 RPC 恢复:⟧公共 RPC 端点是 MetaMask 用来连接区块链的服务器。在拥堵期间,较小的网络上可能会丢失请求。请几分钟后重试,或切换到该网络的其他 RPC。
3. 权限看起来仍然有效
区分数据过期与真正的问题:
- 刷新数据来源:撤销授权工具会缓存结果。撤销确认后,请重新加载并再次扫描,然后在区块浏览器上查看交易哈希以确认是否成功。
- 检查是否重新授权: 部分 dapp 会在您返回时自动再次请求授权。若授权额度重新出现,说明该网站再次发起了请求,而您已签名确认。
- 留意清扫机器人:如果为 gas 充值的 ETH 立即消失,说明您的私钥已泄露,撤销授权也无法奏效。请将所有能转移的资产转到新钱包,且不要重复使用原来的助记词。
总结
MetaMask 账户上的每一项权限现在都可以移除。Portfolio 负责处理五个网络上的支出上限,而 Revoke.cash 涵盖其余权限类型,包括 Permit2 和委托。智能账户委托和 ERC-7715 权限在钱包内处于关闭状态。
设置每月提醒,检查 Revoke.cash 或 Portfolio 并移除未使用的授权额度。对于您保留的授权,请设置支出上限,而不是无限额度。这些习惯加在一起,可以消除钱包盗取工具所依赖的大部分风险敞口。






