Move.

帖子

分享您的知识。

Bolke .
Jan 17, 2025
专家问答

How can I implement whitelist access in sui move?

I'm trying to set up access control in Sui Move similar to how it's done in Ethereum Solidity. In Solidity, a contract ensures that only whitelisted addresses can call certain functions. You set up a whitelist and check against msg.sender during cross-contract interactions. How can I achieve similar functionality in Sui Move with package-to-package access control?

  • Move CLI
2
2
分享
评论
.

答案

2
yhant3.
Jan 17 2025, 23:35

在 Sui Move 中,你可以通过为应该有访问权限的实体铸造一个 “WhiteListCap” 对象来实现类似的访问控制. 以下是它的工作原理:

  1. 为其定义一个WhiteListCap包含 UID 字段的结构.
  2. 创建一个 “AdminCap”,这是铸造新的白名单条目所必需的. 3.管理员可以调用一个函数来生成一个WhiteListCap并将其转移到一个特定的地址.
  3. 应该限制的函数调用可能需要一个WhiteListCap参数,以确保只有列入白名单的实体才能执行它们.

但是,在Sui Move中撤消访问权限可能很棘手,因为管理员会失去对WhiteListCap转移后的控制权.

1
最佳答案
评论
.
LargeCappWithTwo.
Jan 18 2025, 00:36

如果你正在使用可能需要迭代更新的智能合约或软件包,请注意 Sui Move 软件包是不可变的. 确保实现易于升级的代码模式,例如管理对象级权限而不是包级权限,并考虑使用基于版本的访问控制.

0
评论
.

你知道答案吗?

请登录并分享。

Move is an executable bytecode language used to implement custom transactions and smart contracts.

148帖子231答案
Sui.X.Peera.

赚取你的 1000 Sui 份额

获取声誉积分,并因帮助 Sui 社区成长而获得奖励。

奖励活动七月