Usando Sudo para personificar outras contas¶
Introdução¶
Sudo é um módulo que permite que chamadas de tempo de execução privilegiadas sejam despachadas quando chamadas da conta Sudo. Sudo é, por vezes, referido coloquialmente como um superutilizador ou conta semelhante a um deus. Isto permite-lhe executar ações privilegiadas ao gerir a sua rede, como personificar outras contas.
Neste guia, aprenderá como usar Sudo para personificar outras contas. Por exemplo, este guia usará a conta Sudo para se apresentar como uma conta arbitrária e transferir fundos dessa conta.
Atenção
A transferência de saldo demonstrada neste guia é duvidosa e é mostrada apenas como um exemplo de uso do Sudo.
Verificação de Pré-requisitos¶
Para os exemplos neste guia, precisará do seguinte:
- Uma rede com tecnologia Tanssi (Quick Trial ou Dedicated)
- A conta Sudo da sua rede conectada aos Polkadot.js Apps da sua rede. Pode consultar o Guia de Gerenciamento do Sudo para obter instruções sobre como injetar a sua conta Sudo nos Polkadot.js Apps
Se você não souber qual é a conta Sudo da sua rede Tanssi, é possível encontrá‑la no Tanssi Dashboard na seção Properties.
Warning
É fundamental proteger a chave da sua conta Sudo com o máximo de cuidado, pois ela concede acesso privilegiado à sua rede Tanssi.
Usando o Método Sudo As¶
Como sabe, a conta Sudo pode executar funções privilegiadas, incluindo a personificação de outras contas. Ao enviar uma chamada através de sudoAs, o tempo de execução primeiro autenticará a chave Sudo e, em seguida, despachará a chamada de função desejada com a origem Signed de uma determinada conta. No exemplo a seguir, o método sudoAs orquestrará o envio de alguns tokens para outra conta. Embora o resultado seja semelhante ao uso do Sudo com uma chamada forceBalanceTransfer, o exemplo a seguir usa uma chamada de transferência de saldo regular, onde a origem é a conta do remetente e não a conta Sudo.
Para fazer uma chamada sudoAs para personificar outra conta, navegue para o separador Developer (Desenvolvedor) dos Polkadot.js Apps para a sua rede com tecnologia Tanssi e clique em Sudo. Se não vir Sudo neste menu, não associou a conta Sudo aos Polkadot.js Apps. Certifique-se de que a sua conta Sudo está injetada pela sua carteira e conectada aos Polkadot.js Apps. Em seguida, siga os seguintes passos:
- Selecione a paleta Sudo
- Selecione o método sudoAs
- Selecione ou cole a conta desejada para personificar
- Selecione a paleta desejada para a chamada a enviar. Neste caso, é a paleta balances (saldos)
- Selecione o método transferAllowDeath
- Especifique a conta de destino para a transferência de saldo
- Especifique o número de tokens a enviar
- Pressione SubmitSudo e confirme o pop-up resultante
A outra conta tinha um saldo inicial de 1.000 tokens antes da chamada e, subsequentemente, caiu para 995, como esperado.
Usando Sudo e a Utilidade Dispatch As¶
A secção a seguir demonstrará o uso do Sudo para despachar chamadas de uma origem arbitrária. Ao enviar uma chamada desta forma, o tempo de execução primeiro autenticará a chave Sudo e, em seguida, despachará a chamada usando a paleta utility e a função dispatchAs, permitindo que a origem da transação seja exatamente o que deseja.
Para fazer isso, navegue para o separador Developer (Desenvolvedor) dos Polkadot.js Apps para a sua rede com tecnologia Tanssi e clique em Sudo. Se não vir Sudo neste menu, não associou a conta Sudo aos Polkadot.js Apps. Certifique-se de que a sua conta Sudo está injetada pela sua carteira e conectada aos Polkadot.js Apps. Em seguida, siga os seguintes passos:
- Selecione a paleta Sudo
- Selecione o método Sudo
- Selecione a paleta desejada para a chamada a enviar. Neste caso, é a paleta utility (utilidade)
- Selecione o método dispatchAs
- Selecione system (sistema) no menu pendente
- Selecione a origem signed (assinada), que define a origem da transação para ser a conta especificada em vez de root (raiz)
- Selecione a paleta desejada para a chamada a enviar. Neste caso, é a paleta balances (saldos)
- Selecione o método transferAllowDeath
- Especifique a conta de destino para a transferência de saldo
- Especifique o número de tokens a enviar
- Pressione SubmitSudo e confirme o pop-up resultante

A outra conta tinha um saldo inicial de 995 tokens antes da chamada e caiu para 990, como esperado.
E é isso! A secção Developer Portal tem muitos mais guias sobre como gerir a sua rede Tanssi.
| Criada: 9 de dezembro de 2025



