[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CS472PHHRSEEVFVACSJZHZ":3,"skill-same:01M6CS472PHHRSEEVFVACSJZHZ":58},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":29,"linkOnly":30,"markdownContent":31,"markdownBody":32,"frontMatter":33,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":39,"repositoryHtmlUrl":40,"repositoryHomepageUrl":40,"ownerHtmlUrl":41,"ownerBlogUrl":6,"ownerDescription":42,"updatedAt":43,"install":44,"resources":57},"01M6CS472PHHRSEEVFVACSJZHZ","azure-keyvault-keys-rust",null,"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\".","Sam-06060\u002Fjarvis-assistant","Sam-06060","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F208600848?v=4","01M6CRKT7C7FXD21V6HXF293S0","Samson Frank Ganta","01M6CRKTBEKYFD8YX5Z1GT99EE",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fazure-keyvault-keys-rust\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28],"rust","azure","azure keyvault keys rust","sdk","create","encrypt","vault","use","community","azure key vault","2026-11-10 10:12:30",false,"---\nname: azure-keyvault-keys-rust\ndescription: '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\".'\nrisk: unknown\nsource: community\ndate_added: '2026-02-27'\n---\n\n# Azure Key Vault Keys SDK for Rust\n\nClient library for Azure Key Vault Keys — secure storage and management of cryptographic keys.\n\n## Installation\n\n```sh\ncargo add azure_security_keyvault_keys azure_identity\n```\n\n## Environment Variables\n\n```bash\nAZURE_KEYVAULT_URL=https:\u002F\u002F\u003Cvault-name>.vault.azure.net\u002F\n```\n\n## Authentication\n\n```rust\nuse azure_identity::DeveloperToolsCredential;\nuse azure_security_keyvault_keys::KeyClient;\n\nlet credential = DeveloperToolsCredential::new(None)?;\nlet client = KeyClient::new(\n    \"https:\u002F\u002F\u003Cvault-name>.vault.azure.net\u002F\",\n    credential.clone(),\n    None,\n)?;\n```\n\n## Key Types\n\n| Type | Description |\n|------|-------------|\n| RSA | RSA keys (2048, 3072, 4096 bits) |\n| EC | Elliptic curve keys (P-256, P-384, P-521) |\n| RSA-HSM | HSM-protected RSA keys |\n| EC-HSM | HSM-protected EC keys |\n\n## Core Operations\n\n### Get Key\n\n```rust\nlet key = client\n    .get_key(\"key-name\", None)\n    .await?\n    .into_model()?;\n\nprintln!(\"Key ID: {:?}\", key.key.as_ref().map(|k| &k.kid));\n```\n\n### Create Key\n\n```rust\nuse azure_security_keyvault_keys::models::{CreateKeyParameters, KeyType};\n\nlet params = CreateKeyParameters {\n    kty: KeyType::Rsa,\n    key_size: Some(2048),\n    ..Default::default()\n};\n\nlet key = client\n    .create_key(\"key-name\", params.try_into()?, None)\n    .await?\n    .into_model()?;\n```\n\n### Create EC Key\n\n```rust\nuse azure_security_keyvault_keys::models::{CreateKeyParameters, KeyType, CurveName};\n\nlet params = CreateKeyParameters {\n    kty: KeyType::Ec,\n    curve: Some(CurveName::P256),\n    ..Default::default()\n};\n\nlet key = client\n    .create_key(\"ec-key\", params.try_into()?, None)\n    .await?\n    .into_model()?;\n```\n\n### Delete Key\n\n```rust\nclient.delete_key(\"key-name\", None).await?;\n```\n\n### List Keys\n\n```rust\nuse azure_security_keyvault_keys::ResourceExt;\nuse futures::TryStreamExt;\n\nlet mut pager = client.list_key_properties(None)?.into_stream();\nwhile let Some(key) = pager.try_next().await? {\n    let name = key.resource_id()?.name;\n    println!(\"Key: {}\", name);\n}\n```\n\n### Backup Key\n\n```rust\nlet backup = client.backup_key(\"key-name\", None).await?;\n\u002F\u002F Store backup.value safely\n```\n\n### Restore Key\n\n```rust\nuse azure_security_keyvault_keys::models::RestoreKeyParameters;\n\nlet params = RestoreKeyParameters {\n    key_bundle_backup: backup_bytes,\n};\n\nclient.restore_key(params.try_into()?, None).await?;\n```\n\n## Cryptographic Operations\n\nKey Vault can perform crypto operations without exposing the private key:\n\n```rust\n\u002F\u002F For cryptographic operations, use the key's operations\n\u002F\u002F Available operations depend on key type and permissions:\n\u002F\u002F - encrypt\u002Fdecrypt (RSA)\n\u002F\u002F - sign\u002Fverify (RSA, EC)\n\u002F\u002F - wrapKey\u002FunwrapKey (RSA)\n```\n\n## Best Practices\n\n1. **Use Entra ID auth** — `DeveloperToolsCredential` for dev, `ManagedIdentityCredential` for production\n2. **Use HSM keys for sensitive workloads** — hardware-protected keys\n3. **Use EC for signing** — more efficient than RSA\n4. **Use RSA for encryption** — when encrypting data\n5. **Backup keys** — for disaster recovery\n6. **Enable soft delete** — required for production vaults\n7. **Use key rotation** — create new versions periodically\n\n## RBAC Permissions\n\nAssign these Key Vault roles:\n- `Key Vault Crypto User` — use keys for crypto operations\n- `Key Vault Crypto Officer` — full CRUD on keys\n\n## Reference Links\n\n| Resource | Link |\n|----------|------|\n| API Reference | https:\u002F\u002Fdocs.rs\u002Fazure_security_keyvault_keys |\n| Source Code | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-rust\u002Ftree\u002Fmain\u002Fsdk\u002Fkeyvault\u002Fazure_security_keyvault_keys |\n| crates.io | https:\u002F\u002Fcrates.io\u002Fcrates\u002Fazure_security_keyvault_keys |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Azure Key Vault Keys SDK for Rust\n\nClient library for Azure Key Vault Keys — secure storage and management of cryptographic keys.\n\n## Installation\n\n```sh\ncargo add azure_security_keyvault_keys azure_identity\n```\n\n## Environment Variables\n\n```bash\nAZURE_KEYVAULT_URL=https:\u002F\u002F\u003Cvault-name>.vault.azure.net\u002F\n```\n\n## Authentication\n\n```rust\nuse azure_identity::DeveloperToolsCredential;\nuse azure_security_keyvault_keys::KeyClient;\n\nlet credential = DeveloperToolsCredential::new(None)?;\nlet client = KeyClient::new(\n    \"https:\u002F\u002F\u003Cvault-name>.vault.azure.net\u002F\",\n    credential.clone(),\n    None,\n)?;\n```\n\n## Key Types\n\n| Type | Description |\n|------|-------------|\n| RSA | RSA keys (2048, 3072, 4096 bits) |\n| EC | Elliptic curve keys (P-256, P-384, P-521) |\n| RSA-HSM | HSM-protected RSA keys |\n| EC-HSM | HSM-protected EC keys |\n\n## Core Operations\n\n### Get Key\n\n```rust\nlet key = client\n    .get_key(\"key-name\", None)\n    .await?\n    .into_model()?;\n\nprintln!(\"Key ID: {:?}\", key.key.as_ref().map(|k| &k.kid));\n```\n\n### Create Key\n\n```rust\nuse azure_security_keyvault_keys::models::{CreateKeyParameters, KeyType};\n\nlet params = CreateKeyParameters {\n    kty: KeyType::Rsa,\n    key_size: Some(2048),\n    ..Default::default()\n};\n\nlet key = client\n    .create_key(\"key-name\", params.try_into()?, None)\n    .await?\n    .into_model()?;\n```\n\n### Create EC Key\n\n```rust\nuse azure_security_keyvault_keys::models::{CreateKeyParameters, KeyType, CurveName};\n\nlet params = CreateKeyParameters {\n    kty: KeyType::Ec,\n    curve: Some(CurveName::P256),\n    ..Default::default()\n};\n\nlet key = client\n    .create_key(\"ec-key\", params.try_into()?, None)\n    .await?\n    .into_model()?;\n```\n\n### Delete Key\n\n```rust\nclient.delete_key(\"key-name\", None).await?;\n```\n\n### List Keys\n\n```rust\nuse azure_security_keyvault_keys::ResourceExt;\nuse futures::TryStreamExt;\n\nlet mut pager = client.list_key_properties(None)?.into_stream();\nwhile let Some(key) = pager.try_next().await? {\n    let name = key.resource_id()?.name;\n    println!(\"Key: {}\", name);\n}\n```\n\n### Backup Key\n\n```rust\nlet backup = client.backup_key(\"key-name\", None).await?;\n\u002F\u002F Store backup.value safely\n```\n\n### Restore Key\n\n```rust\nuse azure_security_keyvault_keys::models::RestoreKeyParameters;\n\nlet params = RestoreKeyParameters {\n    key_bundle_backup: backup_bytes,\n};\n\nclient.restore_key(params.try_into()?, None).await?;\n```\n\n## Cryptographic Operations\n\nKey Vault can perform crypto operations without exposing the private key:\n\n```rust\n\u002F\u002F For cryptographic operations, use the key's operations\n\u002F\u002F Available operations depend on key type and permissions:\n\u002F\u002F - encrypt\u002Fdecrypt (RSA)\n\u002F\u002F - sign\u002Fverify (RSA, EC)\n\u002F\u002F - wrapKey\u002FunwrapKey (RSA)\n```\n\n## Best Practices\n\n1. **Use Entra ID auth** — `DeveloperToolsCredential` for dev, `ManagedIdentityCredential` for production\n2. **Use HSM keys for sensitive workloads** — hardware-protected keys\n3. **Use EC for signing** — more efficient than RSA\n4. **Use RSA for encryption** — when encrypting data\n5. **Backup keys** — for disaster recovery\n6. **Enable soft delete** — required for production vaults\n7. **Use key rotation** — create new versions periodically\n\n## RBAC Permissions\n\nAssign these Key Vault roles:\n- `Key Vault Crypto User` — use keys for crypto operations\n- `Key Vault Crypto Officer` — full CRUD on keys\n\n## Reference Links\n\n| Resource | Link |\n|----------|------|\n| API Reference | https:\u002F\u002Fdocs.rs\u002Fazure_security_keyvault_keys |\n| Source Code | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-rust\u002Ftree\u002Fmain\u002Fsdk\u002Fkeyvault\u002Fazure_security_keyvault_keys |\n| crates.io | https:\u002F\u002Fcrates.io\u002Fcrates\u002Fazure_security_keyvault_keys |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{"name":5,"risk":34,"source":27,"date_added":35,"description":7},"unknown","2026-02-27","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fazure-keyvault-keys-rust",0,"https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant","https:\u002F\u002Fgithub.com\u002FSam-06060","Mobile Application Developer | Kotlin | Flutter, KMP, Swfit, Android,Swift UI | Building at Saar It Resources | Creator of Jarvis (AI Assistant)","2026-06-23 05:13:38",{"source":8,"skillName":5,"commands":45,"prompt":55,"zipAvailable":56},[46,49,52],{"tool":47,"command":48},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill azure-keyvault-keys-rust",{"tool":50,"command":51},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill azure-keyvault-keys-rust",{"tool":53,"command":54},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill azure-keyvault-keys-rust","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fazure-keyvault-keys-rust\u002FSKILL.md",true,[],[59,72,87,114,133,160],{"skillNo":60,"name":61,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":69,"publishedAt":29},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[64],{"categoryNo":65,"categoryName":66,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[70,71],"Test Skill","test",{"skillNo":73,"name":74,"nameZh":6,"description":75,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":29},"01M6GDRQ40HX22MA6XWC31RHHK","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzustand-store-ts\u002FSKILL.md",[],[79,80,81,82,83,84,85,27,23,86],"zustand store ts","zustand","store","with","types","middleware","patterns","typescript",{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":96,"publishedAt":29},"01M6GDRKEA0WE670SPFWX5GKCN","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoom-automation\u002FSKILL.md",[93],{"categoryNo":94,"categoryName":95,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000023","Skill与智能体开发",[97,98,99,100,101,102,103,104,105,106,107,108,109,110,27,111,112,113],"automation","zoom automation","zoom","first","Tools","search","MCP","via","meeting","automate","critical","creation","webinars","composio","recordings","management","tracking",{"skillNo":115,"name":116,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":121,"publishedAt":29},"01M6GDRFS1452PC71JQ38S24HR","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoho-crm-automation\u002FSKILL.md",[120],{"categoryNo":94,"categoryName":95,"taxonomyType":67,"taxonomyTypeDesc":68},[122,97,123,124,125,126,127,27,102,128,110,129,107,106,101,130,23,131,103,132],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","tasks","manage",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":142,"publishedAt":29},"01M6GDRCKQBAVTGHX5XBH26KPZ","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzod-validation-expert\u002FSKILL.md",[139],{"categoryNo":140,"categoryName":141,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000009","前端开发",[143,144,145,146,147,86,148,149,150,151,152,153,82,154,155,156,157,27,158,159],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":161,"name":162,"nameZh":6,"description":163,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":164,"categories":165,"keywords":167,"publishedAt":29},"01M6GDR658B08K4MY0RWD4A6EH","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzeroize-audit\u002FSKILL.md",[166],{"categoryNo":94,"categoryName":95,"taxonomyType":67,"taxonomyTypeDesc":68},[168,169,170,171,172,173,174,175,27,176,177,178,179,180,181,182,183,184,19,103],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","data","flow","verification","code"]