azure-keyvault-keys-rust
Permite que seu agente manipule chaves criptográficas no Azure Key Vault com Rust. Ajuda a criar, usar e gerenciar chaves.
O que ela faz
Este código ajuda a gerenciar chaves criptográficas de forma segura no Azure Key Vault usando a linguagem Rust. Você pode criar, obter, apagar, listar, fazer backup e restaurar chaves.
Quando usar
- ✓Quando você precisa criar novas chaves de criptografia em um cofre seguro.
- ✓Ao precisar recuperar ou apagar chaves existentes.
- ✓Para realizar operações criptográficas como assinar ou criptografar dados usando chaves armazenadas com segurança.
Exemplo do que pedir para a IA
“Crie uma chave RSA de 2048 bits chamada 'minha-chave-segura' no Azure Key Vault.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
O código se conecta ao Azure Key Vault usando credenciais de autenticação. Em seguida, ele usa comandos específicos para realizar ações como criar, ler ou apagar as chaves criptográficas armazenadas lá.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill azure-keyvault-keys-rustOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-keyvault-keys-rust/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
SDK do Azure Key Vault Keys para Rust
Biblioteca cliente para Chaves do Azure Key Vault — armazenamento e gerenciamento seguros de chaves criptográficas.
Os exemplos abaixo exigem um conjunto de crates compatíveis revisado e a substituição de cada espaço reservado de recurso. Não use dados de produção para gravações de demonstração.
Instalação
cargo add azure_security_keyvault_keys@=1.0.1 azure_identity@=1.0.0 azure_core@=1.1.0
Variáveis de Ambiente
export AZURE_KEYVAULT_URL="https://<vault-name>.vault.azure.net/"
Autenticação
use azure_identity::DeveloperToolsCredential;
use azure_security_keyvault_keys::KeyClient;
let credential = DeveloperToolsCredential::new(None)?;
let client = KeyClient::new(
"https://<vault-name>.vault.azure.net/",
credential.clone(),
None,
)?;
Tipos de Chave
| Tipo | Descrição |
|---|---|
| RSA | Chaves RSA (2048, 3072, 4096 bits) |
| EC | Chaves de curva elíptica (P-256, P-384, P-521) |
| RSA-HSM | Chaves RSA protegidas por HSM |
| EC-HSM | Chaves EC protegidas por HSM |
Operações Principais
Obter Chave
let key = client
.get_key("key-name", None)
.await?
.into_model()?;
println!("Key ID: {:?}", key.key.as_ref().map(|k| &k.kid));
Criar Chave
use azure_security_keyvault_keys::models::{CreateKeyParameters, KeyType};
let params = CreateKeyParameters {
kty: Some(KeyType::Rsa),
key_size: Some(2048),
..Default::default()
};
let key = client
.create_key("key-name", params.try_into()?, None)
.await?
.into_model()?;
Criar Chave EC
use azure_security_keyvault_keys::models::{CreateKeyParameters, KeyType, CurveName};
let params = CreateKeyParameters {
kty: Some(KeyType::Ec),
curve: Some(CurveName::P256),
..Default::default()
};
let key = client
.create_key("ec-key", params.try_into()?, None)
.await?
.into_model()?;
Excluir Chave
client.delete_key("key-name", None).await?;
Listar Chaves
use azure_security_keyvault_keys::ResourceExt;
use futures::TryStreamExt;
let mut pager = client.list_key_properties(None)?;
while let Some(key) = pager.try_next().await? {
let name = key.resource_id()?.name;
println!("Key: {}", name);
}
Backup de Chave
let backup = client.backup_key("key-name", None).await?;
// Store backup.value safely
Restaurar Chave
use azure_security_keyvault_keys::models::RestoreKeyParameters;
let params = RestoreKeyParameters {
key_bundle_backup: backup_bytes,
};
client.restore_key(params.try_into()?, None).await?;
Operações Criptográficas
O Key Vault pode realizar operações criptográficas sem expor a chave privada:
// For cryptographic operations, use the key's operations
// Available operations depend on key type and permissions:
// - encrypt/decrypt (RSA)
// - sign/verify (RSA, EC)
// - wrapKey/unwrapKey (RSA)
Melhores Práticas
- Use autenticação do Entra ID —
DeveloperToolsCredentialpara desenvolvimento,ManagedIdentityCredentialpara produção - Use chaves HSM para cargas de trabalho sensíveis — chaves protegidas por hardware
- Use EC para assinatura — mais eficiente que RSA
- Use criptografia de envelope — RSA pode encapsular uma chave de dados simétrica; não criptografe dados em massa arbitrários diretamente com RSA
- Faça backup de chaves — para recuperação de desastres
- Habilite a exclusão reversível — exigido para cofres de produção
- Use rotação de chaves — crie novas versões periodicamente
Permissões RBAC
Atribua estas funções do Key Vault:
Key Vault Crypto User— use chaves para operações criptográficasKey Vault Crypto Officer— CRUD completo em chaves
O conjunto de exemplos revisado usa azure_security_keyvault_keys 1.0.1 e crates compatíveis do Azure core/credential. Registre e confirme o Cargo.lock; a revisão de código-fonte/API não é um teste de compilador ou de serviço ativo.
Links de Referência
| Recurso | Link |
|---|---|
| Referência da API | https://docs.rs/azure_security_keyvault_keys |
| Código-fonte | https://github.com/Azure/azure-sdk-for-rust/tree/main/sdk/keyvault/azure_security_keyvault_keys |
| crates.io | https://crates.io/crates/azure_security_keyvault_keys |
Quando Usar
Use quando um aplicativo Rust recupera metadados de chave pública ou realiza criação, versionamento, backup, restauração ou operações criptográficas autorizadas do Key Vault.
Limitações
…
Perguntas frequentes
Que tipos de chaves posso criar?
Você pode criar chaves do tipo RSA (para criptografia e assinatura) e EC (curva elíptica, mais eficiente para assinatura), incluindo versões protegidas por hardware (HSM).
Como o código se autentica no Azure Key Vault?
Ele usa credenciais, como `DeveloperToolsCredential` para desenvolvimento ou `ManagedIdentityCredential` para produção, para provar sua identidade ao Azure.
Posso usar essas chaves para criptografar arquivos grandes?
É recomendado usar criptografia de envelope: use uma chave RSA para criptografar uma chave simétrica menor, e então use essa chave simétrica para criptografar os dados grandes. Não criptografe dados em massa diretamente com RSA.
Detalhes
Descrição original do autor
Azure Key Vault Keys SDK for Rust. Use for creating, managing, and using cryptographic keys. Triggers: "keyvault keys rust", "KeyClient rust", "create key rust", "encrypt rust", "sign rust".
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2326
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
api-connector-builder
Faz seu agente construir novas conexões com APIs seguindo o padrão já existente. Use quando precisar adicionar mais uma integração sem criar um novo jeito de fazer.
affaan-m/ECC
api-design
Ajuda seu agente a projetar APIs REST seguindo as melhores práticas. É útil para definir como as APIs se comunicam, como os erros são mostrados e como organizar os dados.
affaan-m/ECC
backend-patterns
Ajuda seu agente com padrões de arquitetura do lado do servidor e otimização de banco de dados. É útil para construir ou revisar o código que roda no servidor.
affaan-m/ECC