Pular para o conteúdo
Skillpedia
Bancos de dados48 mil · #2365

azure-resource-manager-sql-dotnet

Permite ao agente gerenciar bancos de dados Azure SQL. Ele pode criar, configurar e manter instâncias de banco de dados SQL no Azure.

O que ela faz

Este código ajuda a criar e gerenciar bancos de dados SQL no Azure, que são serviços de armazenamento de dados na nuvem. Ele permite configurar servidores, bancos de dados e regras de rede.

Quando usar

  • ✓Ao criar um novo banco de dados SQL para uma aplicação.
  • ✓Ao precisar configurar o acesso de rede ao seu banco de dados SQL.
  • ✓Ao gerenciar múltiplos bancos de dados SQL em um grupo.

Exemplo do que pedir para a IA

“Crie um servidor SQL chamado 'meu-servidor' com um banco de dados chamado 'meu-db' e permita o acesso de serviços do Azure.”

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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/azure-resource-manager-sql-dotnet/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/azure-resource-manager-sql-dotnet/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ele usa um kit de desenvolvimento (SDK) para se comunicar com o Azure. Você escreve código em .NET para dizer ao Azure o que criar ou modificar, como um servidor ou um banco de dados.

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-resource-manager-sql-dotnet

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-resource-manager-sql-dotnet/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Suporte upstream incluído

Arquivos de suporte estão incluídos em caminhos relativos à skill. Veja UPSTREAM-NOTICE.md para suas fontes fixadas, licenças, hashes e alterações de importação.

Azure.ResourceManager.Sql (.NET)

SDK do plano de gerenciamento para provisionar e gerenciar recursos do Azure SQL via Azure Resource Manager.

⚠️ Plano de Gerenciamento vs. Plano de Dados

  • Este SDK (Azure.ResourceManager.Sql): Cria servidores, bancos de dados, pools elásticos, configura regras de firewall, gerencia grupos de failover
  • SDK do Plano de Dados (Microsoft.Data.SqlClient): Executa consultas, stored procedures, gerencia conexões

Instalação

dotnet add package Azure.ResourceManager.Sql
dotnet add package Azure.Identity

Versões Atuais: Estável v1.3.0, Preview v1.4.0-beta.3

Variáveis de Ambiente

AZURE_SUBSCRIPTION_ID=<your-subscription-id>
# For service principal auth (optional)
AZURE_TENANT_ID=<tenant-id>
AZURE_CLIENT_ID=<client-id>
AZURE_CLIENT_SECRET=<client-secret>

Autenticação

using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Sql;

// Always use DefaultAzureCredential
var credential = new DefaultAzureCredential();
var armClient = new ArmClient(credential);

// Get subscription
var subscriptionId = Environment.GetEnvironmentVariable("AZURE_SUBSCRIPTION_ID");
var subscription = armClient.GetSubscriptionResource(
    new ResourceIdentifier($"/subscriptions/{subscriptionId}"));

Hierarquia de Recursos

ArmClient
└── SubscriptionResource
    └── ResourceGroupResource
        └── SqlServerResource
            ├── SqlDatabaseResource
            ├── ElasticPoolResource
            │   └── ElasticPoolDatabaseResource
            ├── SqlFirewallRuleResource
            ├── FailoverGroupResource
            ├── ServerBlobAuditingPolicyResource
            ├── EncryptionProtectorResource
            └── VirtualNetworkRuleResource

Fluxo de Trabalho Principal

1. Criar Servidor SQL

using System;
using Azure.ResourceManager.Sql;
using Azure.ResourceManager.Sql.Models;

// Get resource group
var resourceGroup = await subscription
    .GetResourceGroupAsync("my-resource-group");

// Define server
var serverData = new SqlServerData(AzureLocation.EastUS)
{
    AdministratorLogin = "sqladmin",
    AdministratorLoginPassword = Environment.GetEnvironmentVariable("SQL_ADMIN_PASSWORD") ?? throw new InvalidOperationException("SQL_ADMIN_PASSWORD is required"),
    Version = "12.0",
    MinimalTlsVersion = SqlMinimalTlsVersion.Tls1_2,
    PublicNetworkAccess = ServerNetworkAccessFlag.Enabled
};

// Create server (long-running operation)
var serverCollection = resourceGroup.Value.GetSqlServers();
var operation = await serverCollection.CreateOrUpdateAsync(
    WaitUntil.Completed,
    "my-sql-server",
    serverData);

SqlServerResource server = operation.Value;

2. Criar Banco de Dados SQL

var databaseData = new SqlDatabaseData(AzureLocation.EastUS)
{
    Sku = new SqlSku("S0") { Tier = "Standard" },
    MaxSizeBytes = 2L * 1024 * 1024 * 1024, // 2 GB
    Collation = "SQL_Latin1_General_CP1_CI_AS",
    RequestedBackupStorageRedundancy = SqlBackupStorageRedundancy.Local
};

var databaseCollection = server.GetSqlDatabases();
var dbOperation = await databaseCollection.CreateOrUpdateAsync(
    WaitUntil.Completed,
    "my-database",
    databaseData);

SqlDatabaseResource database = dbOperation.Value;

3. Criar Pool Elástico

var poolData = new ElasticPoolData(AzureLocation.EastUS)
{
    Sku = new SqlSku("StandardPool")
    {
        Tier = "Standard",
        Capacity = 100 // 100 eDTUs
    },
    PerDatabaseSettings = new ElasticPoolPerDatabaseSettings
    {
        MinCapacity = 0,
        MaxCapacity = 100
    }
};

var poolCollection = server.GetElasticPools();
var poolOperation = await poolCollection.CreateOrUpdateAsync(
    WaitUntil.Completed,
    "my-elastic-pool",
    poolData);

ElasticPoolResource pool = poolOperation.Value;

4. Adicionar Banco de Dados ao Pool Elástico

var databaseData = new SqlDatabaseData(AzureLocation.EastUS)
{
    ElasticPoolId = pool.Id
};

await databaseCollection.CreateOrUpdateAsync(
    WaitUntil.Completed,
    "pooled-database",
    databaseData);

5. Configurar Regras de Firewall

// Permitir serviços do Azure
var azureServicesRule = new SqlFirewallRuleData
{
    StartIPAddress = "0.0.0.0",
    EndIPAddress = "0.0.0.0"
};

var firewallCollection = server.GetSqlFirewallRules();

…
Perguntas frequentes

Qual a diferença entre este código e o SDK de 'Data Plane'?

Este SDK gerencia a infraestrutura (criação de servidores, bancos de dados), enquanto o SDK de 'Data Plane' (Microsoft.Data.SqlClient) é usado para interagir com os dados dentro do banco (executar consultas).

Como o código se autentica no Azure?

Ele usa 'DefaultAzureCredential', que tenta várias formas de autenticação, incluindo variáveis de ambiente, para se conectar de forma segura à sua conta Azure.

Posso criar um banco de dados que faz parte de um grupo maior?

Sim, você pode criar 'Elastic Pools' para agrupar bancos de dados e gerenciar recursos de forma mais eficiente.

Detalhes

Descrição original do autor

Azure Resource Manager SDK for Azure SQL in .NET.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2365
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas