显示包…

1 个稳定版本

2.0.0 2021年4月4日

#69#tetcoin

Download history • Rust 包仓库 32/week @ 2024-03-15 • Rust 包仓库 36/week @ 2024-03-22 • Rust 包仓库 64/week @ 2024-03-29 • Rust 包仓库 30/week @ 2024-04-05 • Rust 包仓库 31/week @ 2024-04-12 • Rust 包仓库 32/week @ 2024-04-19 • Rust 包仓库 34/week @ 2024-04-26 • Rust 包仓库 27/week @ 2024-05-03 • Rust 包仓库 31/week @ 2024-05-10 • Rust 包仓库 28/week @ 2024-05-17 • Rust 包仓库 22/week @ 2024-05-24 • Rust 包仓库 20/week @ 2024-05-31 • Rust 包仓库 19/week @ 2024-06-07 • Rust 包仓库 26/week @ 2024-06-14 • Rust 包仓库 30/week @ 2024-06-21 • Rust 包仓库 12/week @ 2024-06-28 • Rust 包仓库

89 每月下载次数
10 包中使用 (2 个直接使用)

Apache-2.0

1MB
24K SLoC

sudo 模块

概述

Sudo 模块允许单个账户(称为“sudo 密钥”)执行需要 Root 调用的可调派函数或指定新账户以替换它们作为 sudo 密钥。一次只能有一个账户可以作为 sudo 密钥。

接口

可调派函数

只有 sudo 密钥可以调用 Sudo 模块中的可调派函数。

  • sudo - 对可调派函数执行 Root 调用。
  • set_key - 分配新账户作为 sudo 密钥。

用法

执行特权函数

Sudo 模块本身不打算在其他模块中使用。相反,您可以在其他模块中构建“特权函数”(即需要 Root 原始的函数)。您可以通过使用 sudo 密钥账户调用 sudo 来执行这些特权函数。特权函数不能直接通过外联执行。

有关特权函数和 Root 原始的更多信息,请参阅 Origin 类型文档。

简单代码片段

这是一个公开特权函数的模块的示例

use fabric_support::{decl_module, dispatch};
use fabric_system::ensure_root;

pub trait Config: fabric_system::Config {}

decl_module! {
    pub struct Module<T: Config> for enum Call where origin: T::Origin {
		#[weight = 0]
        pub fn privileged_function(origin) -> dispatch::DispatchResult {
            ensure_root(origin)?;

            // do something...

            Ok(())
        }
    }
}

创世配置

Sudo 模块依赖于 GenesisConfig。您需要将初始超级用户账户设置为 sudo key

许可证:Apache-2.0

依赖项

~3–12MB
~134K SLoC