opencode-skills-collection 4.0.68 → 4.0.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +266 -1
  2. package/bundled-skills/access-review/SKILL.md +394 -0
  3. package/bundled-skills/access-review/references/details.md +121 -0
  4. package/bundled-skills/agent-evals/SKILL.md +420 -0
  5. package/bundled-skills/agent-observability/SKILL.md +346 -0
  6. package/bundled-skills/agent-observability/references/details.md +786 -0
  7. package/bundled-skills/ai-agent-security/SKILL.md +393 -0
  8. package/bundled-skills/ai-agent-security/references/details.md +912 -0
  9. package/bundled-skills/ai-coding-agent-guardrails/SKILL.md +442 -0
  10. package/bundled-skills/ai-coding-agent-guardrails/references/details.md +753 -0
  11. package/bundled-skills/ai-inference-service-mesh/SKILL.md +449 -0
  12. package/bundled-skills/ai-pipeline-orchestration/SKILL.md +287 -0
  13. package/bundled-skills/ai-red-teaming/SKILL.md +409 -0
  14. package/bundled-skills/ai-security-hardening/SKILL.md +343 -0
  15. package/bundled-skills/ai-sre-incident-response/SKILL.md +336 -0
  16. package/bundled-skills/alerting-oncall/SKILL.md +458 -0
  17. package/bundled-skills/alerting-oncall/references/details.md +84 -0
  18. package/bundled-skills/apk-redteam-pipeline/SKILL.md +446 -0
  19. package/bundled-skills/argocd-gitops/SKILL.md +469 -0
  20. package/bundled-skills/arm-templates/SKILL.md +438 -0
  21. package/bundled-skills/arm-templates/references/details.md +64 -0
  22. package/bundled-skills/asset-inventory/SKILL.md +412 -0
  23. package/bundled-skills/asset-inventory/references/details.md +127 -0
  24. package/bundled-skills/audit-logging/SKILL.md +476 -0
  25. package/bundled-skills/aws-cloudtrail/SKILL.md +486 -0
  26. package/bundled-skills/aws-cost-optimization/SKILL.md +331 -0
  27. package/bundled-skills/aws-ec2/SKILL.md +426 -0
  28. package/bundled-skills/aws-ecs-fargate/SKILL.md +388 -0
  29. package/bundled-skills/aws-iam/SKILL.md +463 -0
  30. package/bundled-skills/aws-lambda/SKILL.md +428 -0
  31. package/bundled-skills/aws-rds/SKILL.md +380 -0
  32. package/bundled-skills/aws-s3/SKILL.md +434 -0
  33. package/bundled-skills/aws-secrets-manager/SKILL.md +486 -0
  34. package/bundled-skills/aws-vpc/SKILL.md +436 -0
  35. package/bundled-skills/azure-ai-document-intelligence-ts/SKILL.md +1 -1
  36. package/bundled-skills/azure-aks/SKILL.md +423 -0
  37. package/bundled-skills/azure-devops/SKILL.md +457 -0
  38. package/bundled-skills/azure-functions-devsec/SKILL.md +436 -0
  39. package/bundled-skills/azure-keyvault/SKILL.md +455 -0
  40. package/bundled-skills/azure-keyvault/references/details.md +83 -0
  41. package/bundled-skills/azure-monitor-audit/SKILL.md +379 -0
  42. package/bundled-skills/azure-networking/SKILL.md +448 -0
  43. package/bundled-skills/azure-networking/references/details.md +135 -0
  44. package/bundled-skills/azure-sql/SKILL.md +413 -0
  45. package/bundled-skills/azure-sql/references/details.md +113 -0
  46. package/bundled-skills/azure-vms/SKILL.md +402 -0
  47. package/bundled-skills/azure-vms/references/details.md +134 -0
  48. package/bundled-skills/backup-recovery/SKILL.md +388 -0
  49. package/bundled-skills/bb-methodology/SKILL.md +451 -0
  50. package/bundled-skills/bb-methodology/references/details.md +120 -0
  51. package/bundled-skills/block-storage/SKILL.md +371 -0
  52. package/bundled-skills/blue-green-deploy/SKILL.md +453 -0
  53. package/bundled-skills/blue-green-deploy/references/details.md +90 -0
  54. package/bundled-skills/bug-bounty/SKILL.md +447 -0
  55. package/bundled-skills/bug-bounty/references/details.md +1316 -0
  56. package/bundled-skills/bugcrowd-reporting/SKILL.md +351 -0
  57. package/bundled-skills/business-continuity/SKILL.md +463 -0
  58. package/bundled-skills/career-ops/SKILL.md +186 -0
  59. package/bundled-skills/cdn-setup/SKILL.md +374 -0
  60. package/bundled-skills/change-management/SKILL.md +438 -0
  61. package/bundled-skills/change-management/references/details.md +105 -0
  62. package/bundled-skills/circleci/SKILL.md +475 -0
  63. package/bundled-skills/cis-benchmarks/SKILL.md +150 -0
  64. package/bundled-skills/cloudflare-pages/SKILL.md +318 -0
  65. package/bundled-skills/cloudflare-r2/SKILL.md +353 -0
  66. package/bundled-skills/cloudflare-workers/SKILL.md +415 -0
  67. package/bundled-skills/cloudflare-zero-trust/SKILL.md +361 -0
  68. package/bundled-skills/cloudformation/SKILL.md +461 -0
  69. package/bundled-skills/constraint-driven-development/SKILL.md +335 -0
  70. package/bundled-skills/constraint-driven-development/references/floor-guard.md +99 -0
  71. package/bundled-skills/container-hardening/SKILL.md +126 -0
  72. package/bundled-skills/container-registries/SKILL.md +435 -0
  73. package/bundled-skills/container-scanning/SKILL.md +416 -0
  74. package/bundled-skills/convex-backend/SKILL.md +338 -0
  75. package/bundled-skills/dast-scanning/SKILL.md +437 -0
  76. package/bundled-skills/database-backups/SKILL.md +425 -0
  77. package/bundled-skills/datadog/SKILL.md +487 -0
  78. package/bundled-skills/dependency-scanning/SKILL.md +457 -0
  79. package/bundled-skills/devcontainers-nix/SKILL.md +416 -0
  80. package/bundled-skills/disaster-recovery/SKILL.md +374 -0
  81. package/bundled-skills/disaster-recovery/references/details.md +219 -0
  82. package/bundled-skills/dns-management/SKILL.md +375 -0
  83. package/bundled-skills/docker-compose/SKILL.md +482 -0
  84. package/bundled-skills/docker-management/SKILL.md +426 -0
  85. package/bundled-skills/ebpf-observability/SKILL.md +436 -0
  86. package/bundled-skills/ebpf-observability/references/details.md +542 -0
  87. package/bundled-skills/elk-stack/SKILL.md +487 -0
  88. package/bundled-skills/enterprise-vpn-attack/SKILL.md +395 -0
  89. package/bundled-skills/evidence-hygiene/SKILL.md +404 -0
  90. package/bundled-skills/feature-flags/SKILL.md +426 -0
  91. package/bundled-skills/feature-flags/references/details.md +86 -0
  92. package/bundled-skills/fedramp-compliance/SKILL.md +453 -0
  93. package/bundled-skills/firebase-app-platform/SKILL.md +381 -0
  94. package/bundled-skills/firewall-config/SKILL.md +479 -0
  95. package/bundled-skills/gcp-audit-logs/SKILL.md +452 -0
  96. package/bundled-skills/gcp-audit-logs/references/details.md +56 -0
  97. package/bundled-skills/gcp-cloud-functions/SKILL.md +284 -0
  98. package/bundled-skills/gcp-cloud-sql/SKILL.md +277 -0
  99. package/bundled-skills/gcp-compute/SKILL.md +319 -0
  100. package/bundled-skills/gcp-gke/SKILL.md +307 -0
  101. package/bundled-skills/gcp-networking/SKILL.md +293 -0
  102. package/bundled-skills/gcp-secret-manager/SKILL.md +421 -0
  103. package/bundled-skills/gcp-secret-manager/references/details.md +131 -0
  104. package/bundled-skills/gdpr-compliance/SKILL.md +451 -0
  105. package/bundled-skills/gdpr-compliance/references/details.md +145 -0
  106. package/bundled-skills/geo-audit/SKILL.md +368 -0
  107. package/bundled-skills/geo-brand-mentions/SKILL.md +68 -0
  108. package/bundled-skills/geo-brand-mentions/references/details.md +471 -0
  109. package/bundled-skills/geo-citability/SKILL.md +350 -0
  110. package/bundled-skills/geo-compare/SKILL.md +340 -0
  111. package/bundled-skills/geo-content/SKILL.md +383 -0
  112. package/bundled-skills/geo-crawlers/SKILL.md +408 -0
  113. package/bundled-skills/geo-llmstxt/SKILL.md +464 -0
  114. package/bundled-skills/geo-platform-optimizer/SKILL.md +314 -0
  115. package/bundled-skills/geo-proposal/SKILL.md +378 -0
  116. package/bundled-skills/geo-prospect/SKILL.md +225 -0
  117. package/bundled-skills/geo-report/SKILL.md +436 -0
  118. package/bundled-skills/geo-report-pdf/SKILL.md +157 -0
  119. package/bundled-skills/geo-schema/SKILL.md +408 -0
  120. package/bundled-skills/geo-technical/SKILL.md +78 -0
  121. package/bundled-skills/geo-technical/references/details.md +543 -0
  122. package/bundled-skills/git-workflow/SKILL.md +460 -0
  123. package/bundled-skills/github-actions/SKILL.md +368 -0
  124. package/bundled-skills/gitlab-ci/SKILL.md +340 -0
  125. package/bundled-skills/gpu-kubernetes-operations/SKILL.md +468 -0
  126. package/bundled-skills/gpu-server-management/SKILL.md +236 -0
  127. package/bundled-skills/hashicorp-vault/SKILL.md +408 -0
  128. package/bundled-skills/helm-charts/SKILL.md +469 -0
  129. package/bundled-skills/hipaa-compliance/SKILL.md +451 -0
  130. package/bundled-skills/hunt-aspnet/SKILL.md +321 -0
  131. package/bundled-skills/hunt-ato/SKILL.md +184 -0
  132. package/bundled-skills/hunt-auth-bypass/SKILL.md +426 -0
  133. package/bundled-skills/hunt-auth-bypass/references/details.md +80 -0
  134. package/bundled-skills/hunt-brute-force/SKILL.md +341 -0
  135. package/bundled-skills/hunt-business-logic/SKILL.md +281 -0
  136. package/bundled-skills/hunt-cache-poison/SKILL.md +382 -0
  137. package/bundled-skills/hunt-captcha-bypass/SKILL.md +136 -0
  138. package/bundled-skills/hunt-cicd/SKILL.md +311 -0
  139. package/bundled-skills/hunt-clickjacking/SKILL.md +110 -0
  140. package/bundled-skills/hunt-cors/SKILL.md +335 -0
  141. package/bundled-skills/hunt-dom/SKILL.md +323 -0
  142. package/bundled-skills/hunt-exceptional-conditions/SKILL.md +111 -0
  143. package/bundled-skills/hunt-file-upload/SKILL.md +202 -0
  144. package/bundled-skills/hunt-fintech-graphql/SKILL.md +289 -0
  145. package/bundled-skills/hunt-forgot-password/SKILL.md +114 -0
  146. package/bundled-skills/hunt-grpc/SKILL.md +317 -0
  147. package/bundled-skills/hunt-host-header/SKILL.md +309 -0
  148. package/bundled-skills/hunt-html-injection/SKILL.md +106 -0
  149. package/bundled-skills/hunt-http-smuggling/SKILL.md +129 -0
  150. package/bundled-skills/hunt-http-smuggling/references/phase2h-smuggling-cachepoison.md +177 -0
  151. package/bundled-skills/hunt-idor/SKILL.md +434 -0
  152. package/bundled-skills/hunt-jwt-crypto/SKILL.md +221 -0
  153. package/bundled-skills/hunt-k8s/SKILL.md +337 -0
  154. package/bundled-skills/hunt-laravel/SKILL.md +255 -0
  155. package/bundled-skills/hunt-ldap/SKILL.md +351 -0
  156. package/bundled-skills/hunt-lfi/SKILL.md +311 -0
  157. package/bundled-skills/hunt-llm-ai/SKILL.md +289 -0
  158. package/bundled-skills/hunt-mfa-bypass/SKILL.md +177 -0
  159. package/bundled-skills/hunt-misc/SKILL.md +378 -0
  160. package/bundled-skills/hunt-nextjs/SKILL.md +299 -0
  161. package/bundled-skills/hunt-nodejs/SKILL.md +263 -0
  162. package/bundled-skills/hunt-nosqli/SKILL.md +210 -0
  163. package/bundled-skills/hunt-ntlm-info/SKILL.md +314 -0
  164. package/bundled-skills/hunt-oauth/SKILL.md +459 -0
  165. package/bundled-skills/hunt-open-redirect/SKILL.md +223 -0
  166. package/bundled-skills/hunt-race-condition/SKILL.md +381 -0
  167. package/bundled-skills/hunt-race-condition/references/details.md +159 -0
  168. package/bundled-skills/hunt-rag-vector/SKILL.md +212 -0
  169. package/bundled-skills/hunt-rce/SKILL.md +444 -0
  170. package/bundled-skills/hunt-rce/references/details.md +110 -0
  171. package/bundled-skills/hunt-saml/SKILL.md +156 -0
  172. package/bundled-skills/hunt-session/SKILL.md +342 -0
  173. package/bundled-skills/hunt-shadow-api/SKILL.md +198 -0
  174. package/bundled-skills/hunt-source-leak/SKILL.md +345 -0
  175. package/bundled-skills/hunt-spa-api/SKILL.md +163 -0
  176. package/bundled-skills/hunt-springboot/SKILL.md +285 -0
  177. package/bundled-skills/hunt-sqli/SKILL.md +466 -0
  178. package/bundled-skills/hunt-ssrf/SKILL.md +396 -0
  179. package/bundled-skills/hunt-ssrf/references/details.md +179 -0
  180. package/bundled-skills/hunt-ssti/SKILL.md +163 -0
  181. package/bundled-skills/hunt-subdomain/SKILL.md +379 -0
  182. package/bundled-skills/hunt-tls-network/SKILL.md +399 -0
  183. package/bundled-skills/hunt-xxe/SKILL.md +466 -0
  184. package/bundled-skills/i-have-adhd/SKILL.md +170 -0
  185. package/bundled-skills/identity-access-management/SKILL.md +382 -0
  186. package/bundled-skills/identity-access-management/references/details.md +524 -0
  187. package/bundled-skills/incident-management/SKILL.md +484 -0
  188. package/bundled-skills/incident-response/SKILL.md +448 -0
  189. package/bundled-skills/incident-response/references/details.md +113 -0
  190. package/bundled-skills/interview-me/SKILL.md +248 -0
  191. package/bundled-skills/iso27001-compliance/SKILL.md +460 -0
  192. package/bundled-skills/jenkins/SKILL.md +462 -0
  193. package/bundled-skills/jev-use/SKILL.md +158 -0
  194. package/bundled-skills/kubernetes-hardening/SKILL.md +154 -0
  195. package/bundled-skills/kubernetes-ops/SKILL.md +449 -0
  196. package/bundled-skills/kubernetes-ops/references/details.md +108 -0
  197. package/bundled-skills/kustomize/SKILL.md +478 -0
  198. package/bundled-skills/linux-administration/SKILL.md +367 -0
  199. package/bundled-skills/linux-hardening/SKILL.md +154 -0
  200. package/bundled-skills/llm-app-security/SKILL.md +389 -0
  201. package/bundled-skills/llm-app-security/references/details.md +674 -0
  202. package/bundled-skills/llm-caching/SKILL.md +334 -0
  203. package/bundled-skills/llm-cost-optimization/SKILL.md +311 -0
  204. package/bundled-skills/llm-fine-tuning/SKILL.md +329 -0
  205. package/bundled-skills/llm-gateway/SKILL.md +282 -0
  206. package/bundled-skills/llm-inference-scaling/SKILL.md +286 -0
  207. package/bundled-skills/llmops-platform-engineering/SKILL.md +472 -0
  208. package/bundled-skills/load-balancing/SKILL.md +403 -0
  209. package/bundled-skills/loki-logging/SKILL.md +479 -0
  210. package/bundled-skills/m365-entra-attack/SKILL.md +423 -0
  211. package/bundled-skills/mac-mini-llm-lab/SKILL.md +350 -0
  212. package/bundled-skills/mcp-server-security/SKILL.md +356 -0
  213. package/bundled-skills/mcp-server-security/references/details.md +745 -0
  214. package/bundled-skills/mdm-device-management/SKILL.md +404 -0
  215. package/bundled-skills/mdm-device-management/references/details.md +410 -0
  216. package/bundled-skills/meme-coin-audit/SKILL.md +402 -0
  217. package/bundled-skills/mid-engagement-ir-detection/SKILL.md +377 -0
  218. package/bundled-skills/model-registry-governance/SKILL.md +452 -0
  219. package/bundled-skills/model-serving-kubernetes/SKILL.md +339 -0
  220. package/bundled-skills/model-supply-chain-security/SKILL.md +427 -0
  221. package/bundled-skills/mongodb/SKILL.md +436 -0
  222. package/bundled-skills/multi-tenant-llm-hosting/SKILL.md +435 -0
  223. package/bundled-skills/multi-tenant-llm-hosting/references/details.md +211 -0
  224. package/bundled-skills/mysql/SKILL.md +390 -0
  225. package/bundled-skills/new-relic/SKILL.md +472 -0
  226. package/bundled-skills/nfs-storage/SKILL.md +356 -0
  227. package/bundled-skills/object-storage/SKILL.md +378 -0
  228. package/bundled-skills/offensive-osint/SKILL.md +443 -0
  229. package/bundled-skills/okta-attack/SKILL.md +436 -0
  230. package/bundled-skills/ollama-stack/SKILL.md +379 -0
  231. package/bundled-skills/openclaw-deployment-hardening/SKILL.md +135 -0
  232. package/bundled-skills/openclaw-local-mac-mini/SKILL.md +426 -0
  233. package/bundled-skills/openclaw-local-mac-mini/references/details.md +221 -0
  234. package/bundled-skills/openclaw-security-hardening/SKILL.md +135 -0
  235. package/bundled-skills/openshift/SKILL.md +485 -0
  236. package/bundled-skills/opentelemetry/SKILL.md +438 -0
  237. package/bundled-skills/opentelemetry/references/details.md +78 -0
  238. package/bundled-skills/opentofu-migration/SKILL.md +349 -0
  239. package/bundled-skills/osint-methodology/SKILL.md +460 -0
  240. package/bundled-skills/osint-methodology/references/details.md +1350 -0
  241. package/bundled-skills/pci-dss-compliance/SKILL.md +446 -0
  242. package/bundled-skills/penetration-testing/SKILL.md +152 -0
  243. package/bundled-skills/performance-tuning/SKILL.md +381 -0
  244. package/bundled-skills/planetscale/SKILL.md +297 -0
  245. package/bundled-skills/platform-engineering/SKILL.md +348 -0
  246. package/bundled-skills/platform-engineering/references/details.md +944 -0
  247. package/bundled-skills/podman/SKILL.md +405 -0
  248. package/bundled-skills/policy-as-code/SKILL.md +434 -0
  249. package/bundled-skills/policy-as-code/references/details.md +204 -0
  250. package/bundled-skills/postgresql-devsec/SKILL.md +378 -0
  251. package/bundled-skills/prometheus-grafana/SKILL.md +469 -0
  252. package/bundled-skills/prompt-injection-defense/SKILL.md +483 -0
  253. package/bundled-skills/rag-infrastructure/SKILL.md +269 -0
  254. package/bundled-skills/rag-observability-evals/SKILL.md +444 -0
  255. package/bundled-skills/rag-observability-evals/references/details.md +92 -0
  256. package/bundled-skills/recon-scope-triage/SKILL.md +128 -0
  257. package/bundled-skills/redis/SKILL.md +421 -0
  258. package/bundled-skills/redteam-report-template/SKILL.md +370 -0
  259. package/bundled-skills/report-writing/SKILL.md +426 -0
  260. package/bundled-skills/report-writing/references/details.md +187 -0
  261. package/bundled-skills/reverse-proxy/SKILL.md +420 -0
  262. package/bundled-skills/runbook-creation/SKILL.md +438 -0
  263. package/bundled-skills/runbook-creation/references/details.md +71 -0
  264. package/bundled-skills/saas-security-posture/SKILL.md +415 -0
  265. package/bundled-skills/sast-scanning/SKILL.md +444 -0
  266. package/bundled-skills/sbom-supply-chain/SKILL.md +433 -0
  267. package/bundled-skills/security-arsenal/SKILL.md +446 -0
  268. package/bundled-skills/security-arsenal/references/details.md +540 -0
  269. package/bundled-skills/security-automation/SKILL.md +146 -0
  270. package/bundled-skills/semantic-versioning/SKILL.md +434 -0
  271. package/bundled-skills/semantic-versioning/references/details.md +83 -0
  272. package/bundled-skills/service-mesh/SKILL.md +422 -0
  273. package/bundled-skills/soc2-compliance/SKILL.md +409 -0
  274. package/bundled-skills/sops-encryption/SKILL.md +124 -0
  275. package/bundled-skills/sre-dashboards/SKILL.md +143 -0
  276. package/bundled-skills/ssh-configuration/SKILL.md +324 -0
  277. package/bundled-skills/ssl-tls-management/SKILL.md +428 -0
  278. package/bundled-skills/ssl-tls-management/references/details.md +99 -0
  279. package/bundled-skills/startup-it-troubleshooting/SKILL.md +415 -0
  280. package/bundled-skills/supply-chain-attack-recon/SKILL.md +453 -0
  281. package/bundled-skills/supply-chain-attack-recon/references/details.md +258 -0
  282. package/bundled-skills/systemd-services/SKILL.md +379 -0
  283. package/bundled-skills/terraform-aws/SKILL.md +125 -0
  284. package/bundled-skills/terraform-azure/SKILL.md +415 -0
  285. package/bundled-skills/terraform-azure/references/details.md +231 -0
  286. package/bundled-skills/terraform-gcp/SKILL.md +369 -0
  287. package/bundled-skills/threat-modeling/SKILL.md +487 -0
  288. package/bundled-skills/user-management/SKILL.md +383 -0
  289. package/bundled-skills/using-agent-skills/SKILL.md +220 -0
  290. package/bundled-skills/vector-database-ops/SKILL.md +300 -0
  291. package/bundled-skills/vendor-management/SKILL.md +439 -0
  292. package/bundled-skills/vendor-management/references/details.md +109 -0
  293. package/bundled-skills/vercel-deployments/SKILL.md +296 -0
  294. package/bundled-skills/vllm-server/SKILL.md +236 -0
  295. package/bundled-skills/vmware-vcenter-attack/SKILL.md +412 -0
  296. package/bundled-skills/vpn-setup/SKILL.md +452 -0
  297. package/bundled-skills/vulnerability-scanning/SKILL.md +448 -0
  298. package/bundled-skills/waf-setup/SKILL.md +354 -0
  299. package/bundled-skills/waf-setup/references/details.md +211 -0
  300. package/bundled-skills/web2-recon/SKILL.md +440 -0
  301. package/bundled-skills/web2-recon/references/details.md +319 -0
  302. package/bundled-skills/web3-audit/SKILL.md +445 -0
  303. package/bundled-skills/web3-audit/references/details.md +224 -0
  304. package/bundled-skills/windows-hardening/SKILL.md +454 -0
  305. package/bundled-skills/windows-hardening/references/details.md +204 -0
  306. package/bundled-skills/windows-server/SKILL.md +318 -0
  307. package/bundled-skills/zero-trust/SKILL.md +461 -0
  308. package/package.json +1 -1
  309. package/skills_index.json +6943 -323
@@ -0,0 +1,413 @@
1
+ ---
2
+ name: azure-sql
3
+ description: Provision Azure SQL Database and Cosmos DB. Configure security, backups,
4
+ and replication. Use when deploying managed databases on Azure.
5
+ category: devops
6
+ risk: critical
7
+ source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
8
+ source_repo: BagelHole/DevOps-Security-Agent-Skills
9
+ source_type: community
10
+ date_added: '2026-09-20'
11
+ license: MIT
12
+ license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
13
+ compatibility: Requires the relevant OS/platform tooling and privileged access where
14
+ noted. Docs-only; helper scripts and templates not bundled.
15
+ metadata:
16
+ author: devops-skills
17
+ version: '1.0'
18
+ ---
19
+
20
+ # Azure SQL
21
+
22
+ Deploy and manage Azure SQL Database, Elastic Pools, and Cosmos DB. Covers server provisioning, firewall rules, geo-replication, backup strategies, performance tuning, security hardening, and Terraform configurations.
23
+
24
+ ## Prerequisites
25
+
26
+ ```bash
27
+ # Install Azure CLI
28
+ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
29
+
30
+ # Login and set subscription
31
+ az login
32
+ az account set --subscription "my-subscription-id"
33
+
34
+ # Create resource group
35
+ az group create --name database-rg --location eastus
36
+ ```
37
+
38
+ ## SQL Server and Database Creation
39
+
40
+ ### Create SQL Server
41
+
42
+ ```bash
43
+ # Create logical SQL server
44
+ az sql server create \
45
+ --resource-group database-rg \
46
+ --name myapp-sqlserver \
47
+ --location eastus \
48
+ --admin-user sqladmin \
49
+ --admin-password 'S3cur3P@ssw0rd!' \
50
+ --enable-public-network false \
51
+ --minimal-tls-version 1.2
52
+
53
+ # Enable Azure AD authentication
54
+ az sql server ad-admin create \
55
+ --resource-group database-rg \
56
+ --server-name myapp-sqlserver \
57
+ --display-name "SQL Admins" \
58
+ --object-id "{aad-group-object-id}"
59
+
60
+ # Enable Azure AD only authentication (disable SQL auth)
61
+ az sql server ad-only-auth enable \
62
+ --resource-group database-rg \
63
+ --name myapp-sqlserver
64
+ ```
65
+
66
+ ### Create Databases
67
+
68
+ ```bash
69
+ # Create General Purpose database
70
+ az sql db create \
71
+ --resource-group database-rg \
72
+ --server myapp-sqlserver \
73
+ --name myapp-db \
74
+ --edition GeneralPurpose \
75
+ --compute-model Serverless \
76
+ --auto-pause-delay 60 \
77
+ --min-capacity 0.5 \
78
+ --max-size 32GB \
79
+ --backup-storage-redundancy Geo \
80
+ --zone-redundant false
81
+
82
+ # Create Business Critical database for production
83
+ az sql db create \
84
+ --resource-group database-rg \
85
+ --server myapp-sqlserver \
86
+ --name myapp-prod-db \
87
+ --edition BusinessCritical \
88
+ --service-objective BC_Gen5_4 \
89
+ --max-size 256GB \
90
+ --backup-storage-redundancy Geo \
91
+ --zone-redundant true \
92
+ --read-scale Enabled
93
+
94
+ # Create Hyperscale database for large workloads
95
+ az sql db create \
96
+ --resource-group database-rg \
97
+ --server myapp-sqlserver \
98
+ --name myapp-analytics-db \
99
+ --edition Hyperscale \
100
+ --service-objective HS_Gen5_4 \
101
+ --ha-replicas 2
102
+
103
+ # List databases on server
104
+ az sql db list \
105
+ --resource-group database-rg \
106
+ --server myapp-sqlserver \
107
+ --output table
108
+ ```
109
+
110
+ ### Elastic Pools
111
+
112
+ ```bash
113
+ # Create elastic pool
114
+ az sql elastic-pool create \
115
+ --resource-group database-rg \
116
+ --server myapp-sqlserver \
117
+ --name myapp-pool \
118
+ --edition GeneralPurpose \
119
+ --capacity 4 \
120
+ --db-max-capacity 2 \
121
+ --db-min-capacity 0.25 \
122
+ --max-size 256GB \
123
+ --zone-redundant false
124
+
125
+ # Move database into elastic pool
126
+ az sql db update \
127
+ --resource-group database-rg \
128
+ --server myapp-sqlserver \
129
+ --name myapp-db \
130
+ --elastic-pool myapp-pool
131
+
132
+ # Monitor elastic pool usage
133
+ az sql elastic-pool list-dbs \
134
+ --resource-group database-rg \
135
+ --server myapp-sqlserver \
136
+ --name myapp-pool \
137
+ --output table
138
+ ```
139
+
140
+ ## Firewall Rules and Network Security
141
+
142
+ ```bash
143
+ # Allow Azure services
144
+ az sql server firewall-rule create \
145
+ --resource-group database-rg \
146
+ --server myapp-sqlserver \
147
+ --name AllowAzureServices \
148
+ --start-ip-address 0.0.0.0 \
149
+ --end-ip-address 0.0.0.0
150
+
151
+ # Allow specific IP range (office network)
152
+ az sql server firewall-rule create \
153
+ --resource-group database-rg \
154
+ --server myapp-sqlserver \
155
+ --name AllowOffice \
156
+ --start-ip-address 203.0.113.0 \
157
+ --end-ip-address 203.0.113.255
158
+
159
+ # Allow your current client IP
160
+ az sql server firewall-rule create \
161
+ --resource-group database-rg \
162
+ --server myapp-sqlserver \
163
+ --name AllowMyIP \
164
+ --start-ip-address "$(curl -s ifconfig.me)" \
165
+ --end-ip-address "$(curl -s ifconfig.me)"
166
+
167
+ # Create VNet rule for subnet access
168
+ az sql server vnet-rule create \
169
+ --resource-group database-rg \
170
+ --server myapp-sqlserver \
171
+ --name AllowAppSubnet \
172
+ --vnet-name spoke-prod-vnet \
173
+ --subnet app-subnet
174
+
175
+ # List firewall rules
176
+ az sql server firewall-rule list \
177
+ --resource-group database-rg \
178
+ --server myapp-sqlserver \
179
+ --output table
180
+
181
+ # Remove a firewall rule
182
+ az sql server firewall-rule delete \
183
+ --resource-group database-rg \
184
+ --server myapp-sqlserver \
185
+ --name AllowMyIP
186
+ ```
187
+
188
+ ## Geo-Replication and Failover
189
+
190
+ ```bash
191
+ # Create failover group with secondary server
192
+ az sql server create \
193
+ --resource-group database-rg \
194
+ --name myapp-sqlserver-secondary \
195
+ --location westus \
196
+ --admin-user sqladmin \
197
+ --admin-password 'S3cur3P@ssw0rd!'
198
+
199
+ az sql failover-group create \
200
+ --resource-group database-rg \
201
+ --server myapp-sqlserver \
202
+ --name myapp-failover-group \
203
+ --partner-server myapp-sqlserver-secondary \
204
+ --partner-resource-group database-rg \
205
+ --failover-policy Automatic \
206
+ --grace-period 1 \
207
+ --add-db myapp-prod-db
208
+
209
+ # Check failover group status
210
+ az sql failover-group show \
211
+ --resource-group database-rg \
212
+ --server myapp-sqlserver \
213
+ --name myapp-failover-group \
214
+ --output table
215
+
216
+ # Manual failover (for testing or planned maintenance)
217
+ az sql failover-group set-primary \
218
+ --resource-group database-rg \
219
+ --server myapp-sqlserver-secondary \
220
+ --name myapp-failover-group
221
+
222
+ # Create active geo-replication (without failover group)
223
+ az sql db replica create \
224
+ --resource-group database-rg \
225
+ --server myapp-sqlserver \
226
+ --name myapp-db \
227
+ --partner-server myapp-sqlserver-secondary \
228
+ --partner-resource-group database-rg
229
+ ```
230
+
231
+ ## Backup and Restore
232
+
233
+ ```bash
234
+ # Configure short-term retention (1-35 days)
235
+ az sql db str-policy set \
236
+ --resource-group database-rg \
237
+ --server myapp-sqlserver \
238
+ --name myapp-prod-db \
239
+ --retention-days 14 \
240
+ --diffbackup-hours 12
241
+
242
+ # Configure long-term retention
243
+ az sql db ltr-policy set \
244
+ --resource-group database-rg \
245
+ --server myapp-sqlserver \
246
+ --name myapp-prod-db \
247
+ --weekly-retention P4W \
248
+ --monthly-retention P12M \
249
+ --yearly-retention P5Y \
250
+ --week-of-year 1
251
+
252
+ # Restore database to a point in time
253
+ az sql db restore \
254
+ --resource-group database-rg \
255
+ --server myapp-sqlserver \
256
+ --name myapp-db-restored \
257
+ --dest-name myapp-db-restored \
258
+ --time "2026-03-23T10:00:00Z"
259
+
260
+ # Restore from long-term backup
261
+ az sql db ltr-backup list \
262
+ --resource-group database-rg \
263
+ --server myapp-sqlserver \
264
+ --database myapp-prod-db \
265
+ --output table
266
+
267
+ # Export database to bacpac
268
+ az sql db export \
269
+ --resource-group database-rg \
270
+ --server myapp-sqlserver \
271
+ --name myapp-db \
272
+ --admin-user sqladmin \
273
+ --admin-password 'S3cur3P@ssw0rd!' \
274
+ --storage-key-type StorageAccessKey \
275
+ --storage-key "{storage-account-key}" \
276
+ --storage-uri "https://mystorageacct.blob.core.windows.net/backups/myapp-db.bacpac"
277
+ ```
278
+
279
+ ## Performance Tuning
280
+
281
+ ```bash
282
+ # Enable automatic tuning
283
+ az sql db update \
284
+ --resource-group database-rg \
285
+ --server myapp-sqlserver \
286
+ --name myapp-prod-db \
287
+ --set tags.autoTuning=enabled
288
+
289
+ # Check database performance recommendations
290
+ az sql db advisor list \
291
+ --resource-group database-rg \
292
+ --server myapp-sqlserver \
293
+ --database myapp-prod-db \
294
+ --output table
295
+
296
+ # Scale database tier
297
+ az sql db update \
298
+ --resource-group database-rg \
299
+ --server myapp-sqlserver \
300
+ --name myapp-prod-db \
301
+ --service-objective BC_Gen5_8
302
+
303
+ # Enable Query Store (via SQL)
304
+ # sqlcmd -S myapp-sqlserver.database.windows.net -d myapp-prod-db -Q "ALTER DATABASE [myapp-prod-db] SET QUERY_STORE = ON"
305
+
306
+ # View DTU/vCore usage metrics
307
+ az monitor metrics list \
308
+ --resource "/subscriptions/{sub}/resourceGroups/database-rg/providers/Microsoft.Sql/servers/myapp-sqlserver/databases/myapp-prod-db" \
309
+ --metric "cpu_percent" "dtu_consumption_percent" "storage_percent" \
310
+ --interval PT1H \
311
+ --output table
312
+ ```
313
+
314
+ ## Security Hardening
315
+
316
+ ```bash
317
+ # Enable Advanced Threat Protection
318
+ az sql db threat-policy update \
319
+ --resource-group database-rg \
320
+ --server myapp-sqlserver \
321
+ --name myapp-prod-db \
322
+ --state Enabled \
323
+ --email-addresses security@example.com \
324
+ --email-account-admins true
325
+
326
+ # Enable auditing to storage
327
+ az sql server audit-policy update \
328
+ --resource-group database-rg \
329
+ --name myapp-sqlserver \
330
+ --state Enabled \
331
+ --storage-account mystorageacct \
332
+ --retention-days 90
333
+
334
+ # Enable auditing to Log Analytics
335
+ az sql server audit-policy update \
336
+ --resource-group database-rg \
337
+ --name myapp-sqlserver \
338
+ --state Enabled \
339
+ --lats Enabled \
340
+ --lawri "/subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.OperationalInsights/workspaces/{workspace}"
341
+
342
+ # Enable Transparent Data Encryption (enabled by default)
343
+ az sql db tde set \
344
+ --resource-group database-rg \
345
+ --server myapp-sqlserver \
346
+ --database myapp-prod-db \
347
+ --status Enabled
348
+
349
+ # Enable vulnerability assessment
350
+ az sql vm update \
351
+ --resource-group database-rg \
352
+ --name myapp-sqlserver
353
+ ```
354
+
355
+ ## Cosmos DB
356
+
357
+ ```bash
358
+ # Create Cosmos DB account with SQL API
359
+ az cosmosdb create \
360
+ --resource-group database-rg \
361
+ --name myapp-cosmos \
362
+ --default-consistency-level Session \
363
+ --locations regionName=eastus failoverPriority=0 isZoneRedundant=true \
364
+ --locations regionName=westus failoverPriority=1 isZoneRedundant=false \
365
+ --enable-automatic-failover true \
366
+ --enable-multiple-write-locations false
367
+
368
+ # Create database
369
+ az cosmosdb sql database create \
370
+ --resource-group database-rg \
371
+ --account-name myapp-cosmos \
372
+ --name myappdb \
373
+ --throughput 400
374
+
375
+ # Create container with partition key
376
+ az cosmosdb sql container create \
377
+ --resource-group database-rg \
378
+ --account-name myapp-cosmos \
379
+ --database-name myappdb \
380
+ --name orders \
381
+ --partition-key-path "/customerId" \
382
+ --throughput 400 \
383
+ --idx @indexing-policy.json
384
+
385
+ # Enable autoscale throughput
386
+ az cosmosdb sql container throughput update \
387
+ --resource-group database-rg \
388
+ --account-name myapp-cosmos \
389
+ --database-name myappdb \
390
+ --name orders \
391
+ --max-throughput 4000
392
+ ```
393
+
394
+
395
+ ## Contents
396
+
397
+ - [Terraform Configuration](references/details.md)
398
+ - [Troubleshooting](references/details.md)
399
+ - [Related Skills](references/details.md)
400
+
401
+ ## When to Use
402
+
403
+ - You need a fully managed relational database on Azure.
404
+ - Your application requires geo-replication for disaster recovery.
405
+ - You need elastic scaling across multiple databases with Elastic Pools.
406
+ - You are migrating on-premises SQL Server workloads to the cloud.
407
+ - You need a globally distributed NoSQL database (Cosmos DB).
408
+
409
+ ## Limitations
410
+
411
+ - Infrastructure commands can disrupt services: confirm target host/scope and have backups/snapshots before mutating state.
412
+ - Docs-only import: upstream scripts and templates not bundled.
413
+
@@ -0,0 +1,113 @@
1
+ # Details (moved from SKILL.md)
2
+
3
+ > Extended reference content for `azure-sql`, kept under `references/` so the entrypoint stays within the audit budget.
4
+
5
+ ## Terraform Configuration
6
+
7
+ ```hcl
8
+ resource "azurerm_mssql_server" "main" {
9
+ name = "myapp-sqlserver"
10
+ resource_group_name = azurerm_resource_group.main.name
11
+ location = azurerm_resource_group.main.location
12
+ version = "12.0"
13
+ administrator_login = "sqladmin"
14
+ administrator_login_password = var.sql_admin_password
15
+ minimum_tls_version = "1.2"
16
+ public_network_access_enabled = false
17
+
18
+ azuread_administrator {
19
+ login_username = "SQL Admins"
20
+ object_id = var.sql_admin_aad_group_id
21
+ }
22
+
23
+ tags = var.tags
24
+ }
25
+
26
+ resource "azurerm_mssql_database" "main" {
27
+ name = "myapp-prod-db"
28
+ server_id = azurerm_mssql_server.main.id
29
+ collation = "SQL_Latin1_General_CP1_CI_AS"
30
+ license_type = "LicenseIncluded"
31
+ sku_name = "BC_Gen5_4"
32
+ max_size_gb = 256
33
+ zone_redundant = true
34
+ read_scale = true
35
+
36
+ short_term_retention_policy {
37
+ retention_days = 14
38
+ backup_interval_in_hours = 12
39
+ }
40
+
41
+ long_term_retention_policy {
42
+ weekly_retention = "P4W"
43
+ monthly_retention = "P12M"
44
+ yearly_retention = "P5Y"
45
+ week_of_year = 1
46
+ }
47
+
48
+ threat_detection_policy {
49
+ state = "Enabled"
50
+ email_addresses = ["security@example.com"]
51
+ email_account_admins = "Enabled"
52
+ retention_days = 90
53
+ storage_endpoint = azurerm_storage_account.audit.primary_blob_endpoint
54
+ storage_account_access_key = azurerm_storage_account.audit.primary_access_key
55
+ }
56
+
57
+ tags = var.tags
58
+ }
59
+
60
+ resource "azurerm_mssql_failover_group" "main" {
61
+ name = "myapp-failover-group"
62
+ server_id = azurerm_mssql_server.main.id
63
+ databases = [azurerm_mssql_database.main.id]
64
+
65
+ partner_server {
66
+ id = azurerm_mssql_server.secondary.id
67
+ }
68
+
69
+ read_write_endpoint_failover_policy {
70
+ mode = "Automatic"
71
+ grace_minutes = 60
72
+ }
73
+
74
+ tags = var.tags
75
+ }
76
+
77
+ resource "azurerm_private_endpoint" "sql" {
78
+ name = "sql-private-endpoint"
79
+ location = azurerm_resource_group.main.location
80
+ resource_group_name = azurerm_resource_group.main.name
81
+ subnet_id = azurerm_subnet.data.id
82
+
83
+ private_service_connection {
84
+ name = "sql-connection"
85
+ private_connection_resource_id = azurerm_mssql_server.main.id
86
+ subresource_names = ["sqlServer"]
87
+ is_manual_connection = false
88
+ }
89
+ }
90
+ ```
91
+
92
+
93
+ ## Troubleshooting
94
+
95
+ | Symptom | Cause | Fix |
96
+ |---------|-------|-----|
97
+ | Cannot connect to SQL server | Firewall rule missing or public access disabled | Add client IP with `az sql server firewall-rule create` or use private endpoint |
98
+ | Login failed for user | Incorrect credentials or Azure AD not configured | Verify admin credentials; enable Azure AD auth on the server |
99
+ | Database DTU at 100% | Under-provisioned tier or inefficient queries | Scale up service objective; review Query Store for expensive queries |
100
+ | Geo-replication lag is high | Large transaction volumes or network latency | Monitor with `sys.dm_geo_replication_link_status`; consider Hyperscale |
101
+ | Point-in-time restore fails | Requested time is outside retention window | Check retention policy; use long-term backups for older data |
102
+ | Elastic pool running out of eDTUs | Too many active databases in pool | Increase pool capacity or move heavy databases to dedicated tier |
103
+ | TDE key rotation failure | Key Vault access policy missing | Grant SQL server managed identity GET, WRAP, UNWRAP permissions |
104
+ | Connection timeout from app | Network path blocked or DNS issue | Use `az network watcher test-connectivity`; verify private DNS resolution |
105
+
106
+
107
+ ## Related Skills
108
+
109
+ - `azure-networking` -- Private endpoints and VNet rules for SQL access.
110
+ - `azure-functions` -- SQL bindings for serverless data access.
111
+ - `terraform-azure` -- Terraform-based SQL infrastructure provisioning.
112
+ - `arm-templates` -- Bicep templates for SQL deployments.
113
+