跳转到正文
报告库
用途分类 / 其他用途

Azure Enterprise Infra Planner Skill 安全审计

作者说它能做什么(原文)

Architect and provision enterprise Azure infrastructure from workload descriptions. For cloud architects and platform engineers planning networking, identity, security, compliance, and multi-resource topologies with WAF alignment. Generates Bicep or Terraform directly (no azd). WHEN: 'plan Azure infrastructure', 'architect Azure landing zone', 'design hub-spoke network', 'plan multi-region DR topo

第三方安全检查结论

先别安装或运行

已检查文件
41
发现的风险
5
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。未发现风险
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
中风险

默认订阅可能在未得到明确范围选择时被扫描并将拓扑保存到项目中

原文依据:4 处
发现了什么

当 insights 文件不存在时,流程要求选择扫描范围;若用户不回复,会默认使用当前订阅,并通过 insights_get 子代理处理环境摘要。结果随后保存为项目内的 JSON。

为什么需要注意

Azure 资源、关系、配置及资源 ID 可能被 MCP 工具和子代理处理,并长期留在工作区;能够读取项目的人或流程可据此了解云环境拓扑。

流程会先询问范围,但若用户不回复便默认使用当前订阅;随后由子代理调用环境洞察工具,并把返回的 JSON 保存进项目。若其中包含资源清单或拓扑,项目文件及接触该项目的人可能获得这些信息。用户可要求作者取消静默默认、明确列出采集字段,并在调用前取得范围确认;也可限制 Azure 读取权限及 `.azure/insights.json` 的共享。

references/phases/1-extract-insights.md:5来自说明文档打开原文件
1. Check whether insights already exist at `<project-root>/.azure/insights.json`. If they do, reuse the existing entries and skip the scan in steps 2–6. In referenced mode, still execute step 7 before completing the gate; in greenfield mode, proceed to the gate.2. If no insights file exists, check whether the `insights_get` tool is available. If it is not, initialize the file with `[]`, then continue to step 7 in referenced mode or proceed to the gate in greenfield mode.3. Ask the user which scope to use for generating insights. Present these three options:   a. "Subscription-scoped (default subscription)" — use this as the default if the user does not respond.   b. "Subscription-scoped (choose a subscription)" — if selected, ask the user to provide a subscription name or ID.   c. "Tenant-scoped (slower)"4. Ask the user whether there are specific areas they want the insights to focus on. Present these options:
查看另外 3 个位置
references/phases/1-extract-insights.md:18来自说明文档打开原文件
   f. "Other" — this should be a custom input field.5. Run the `insights_get` tool using a general-purpose subagent. Pass a one-line summary via the `--query` option that describes the user's infrastructure and the types of insights to prioritise. Do not pass the `--nocache` flag unless the user has explicitly asked for it. Begin Phase 2 while this tool runs.6. Once the tool finishes, save the resulting JSON to `<project-root>/.azure/insights.json`. Do not include tool call metadata. If the tool errors or returns no insights, write an empty array `[]` to the file instead.7. In referenced mode, merge one insight entry for every existing resource into the current insights array. Set `existingResource.id`, `type`, `name`, `role`, `must_not_recreate: true`, and `integrationPoints` using the normalized inventory. Preserve full ARM IDs for actual-state resources and do not duplicate an entry already identified by the same resource ID. Do this even when the resource produces no broader insight.
references/schema.md:73来自说明文档打开原文件
In referenced mode:- Include exactly one entry for every inventoried existing resource, uniquely identified by `existingResource.id`.- Preserve the full ARM ID in `existingResource.id` for actual-state resources.- Use an empty `integrationPoints` array when the resource has no integration points.- A resource-only entry may omit `pattern` and `implication`; when recording a broader insight, include both.
references/phases/1-extract-insights.md:7来自说明文档打开原文件
2. If no insights file exists, check whether the `insights_get` tool is available. If it is not, initialize the file with `[]`, then continue to step 7 in referenced mode or proceed to the gate in greenfield mode.3. Ask the user which scope to use for generating insights. Present these three options:   a. "Subscription-scoped (default subscription)" — use this as the default if the user does not respond.   b. "Subscription-scoped (choose a subscription)" — if selected, ask the user to provide a subscription name or ID.   c. "Tenant-scoped (slower)"4. Ask the user whether there are specific areas they want the insights to focus on. Present these options:
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。发现 1 项风险
中风险

引用模式要求在用户选择和计划批准之前生成完整 IaC,与主审批门冲突

原文依据:4 处
发现了什么

引用模式要求同一回复中使用“推荐默认值”始终生成可部署 IaC,并把“选择哪些现有资源接入”的问题放在代码之后;主流程却规定 Phase 5 明确批准后才能进入 Phase 6。

为什么需要注意

代理可能在用户审阅资源范围、假设和权限接入前创建或修改 `infra/` 文件。虽然不会因此自动部署,但可能覆盖工作区中的同名基础设施草稿,或让后续操作者误把未批准内容当成已审查方案。

引用模式命令代理在同一回复中先按推荐默认值生成完整 IaC,之后才询问接入哪些现有资源;但主阶段规则要求 Phase 5 明确批准后才能进入 Phase 6。两套活动指令直接冲突,可能导致在用户批准资源选择和计划前写入可部署文件。虽然部署仍有单独确认门,文件生成本身可能覆盖或引入项目内容。用户可要求作者明确优先顺序,并禁止批准前写盘,只提供预览或草案。

references/referenced-workload.md:32来自说明文档打开原文件
## Answer-first (ask AND generate — never stall)Open with a **plain-language summary of the existing infrastructure** you inventoried and the additivechange you understood, then an **explicit confirmation checkpoint** ("Confirm this understanding before Iproceed to deploy"), and **then** generate the complete, deployable IaC in the SAME response using therecommended default. Order within the turn: (1) summary of what exists + what you'll add, (2) explicit"confirm before I proceed" gate, (3) the generated IaC, (4) the "which to incorporate?" choice and anyassumptions. Never end a turn with only a summary or a question, and never deploy before the userconfirms. If you lack a value (region, an existing resource's ID/name), **declare a parameter andproceed.** The confirmation gate governs deployment (Phase 7), not whether you generate the plan/IaC —you always generate; you never deploy without an explicit, risk-acknowledged go-ahead.
查看另外 3 个位置
references/workflow.md:42来自说明文档打开原文件
- `draft` — set by Phase 4 when the plan is written.- `approved` — set by Phase 5 only after the user explicitly approves. Required before Phase 6 and Phase 7.- `deployed` — set by Phase 7 after a successful `az deployment ... create` or `terraform apply`.
references/phases/6-generate-iac.md:1来自说明文档打开原文件
# Phase 6: Generate IaC> Important: Before continuing this phase, `meta.status` must be set to `approved` as required by Phase 5.1. Ask the user whether to generate Bicep or Terraform.2. Generate IaC from the approved plan. Refer to [bicep-generation.md](../bicep-generation.md) for Bicep or [terraform-generation.md](../terraform-generation.md) for Terraform.3. **Apply secure-by-default (mandatory).** Unless the approved plan explicitly overrides a control, every generated resource must use:
references/phases/5-verify.md:14来自说明文档打开原文件
## Gate- Every item in **both** checklists pass (or have been fixed).- Present plan to user and wait for manual and explicit approval before proceeding.  - Edit `meta.status` to `approved` if approved.  - Otherwise, ask the user for improvements, and return to Phase 2, 3, or 4 based on the nature of their request.
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。发现 1 项风险
高风险

“仅新增”部署仍可创建作用于现有资源的 RBAC 授权

原文依据:5 处
发现了什么

引用模式明确把 RBAC 角色分配作为接入方式,并要求在现有资源组或订阅范围部署。即使原资源声明为 existing/data,新增的角色分配本身也能授予身份访问现有资源。流程却把“只创建新资源”描述为不修改现有资源,容易低估权限影响。

为什么需要注意

错误的主体 ID、角色或作用域可能向应用身份或其他主体授予对现有密钥库、日志、网络、数据服务乃至订阅资源的访问。

“仅新增”并不等于对现有环境没有权限影响:流程明确允许新增 RBAC 角色分配并要求在现有资源组或订阅范围部署。该分配可让某个身份访问现有 Key Vault、网络或其他资源,即使原资源以 `existing`/`data` 引用且未重建。用户可要求 what-if/plan 单独列出每项角色、主体、权限和作用域,并拒绝未经逐项批准的订阅级或高权限授权。

references/referenced-workload.md:54来自说明文档打开原文件
## For each existing resource, assign a ROLE (the "if needed" filter)- **Reference + integrate** — the new workload depends on it → reference it AND **wire it in**:  RBAC role assignment, diagnostics → existing Log Analytics, private endpoints into the existing  VNet/subnet, secrets from the existing Key Vault, connection to the existing Event Hubs, use the  existing managed identity, etc.- **Retain** — keep, must not recreate, nothing new connects → leave it; note "retained, out of scope".
查看另外 4 个位置
references/referenced-workload.md:76来自说明文档打开原文件
  destroy** against them — abort if the plan proposes destroying or replacing a referenced resource.- **Preview first.** Always run `az deployment ... --what-if` (Bicep) or `terraform plan` (Terraform)  and confirm the diff only *creates* new resources and *modifies nothing* on the referenced ones before  applying.- **Deploy into the existing scope when integrating.** Target the referenced resource group/subscription  so RBAC, private endpoints, and diagnostics wire into the existing resources.
references/deployment.md:25来自说明文档打开原文件
Scope selection: use resource-group scope when your template deploys into an existing resource group. Use subscription scope when your template creates resource groups or other subscription-level resources (policies, role assignments, etc.).
references/referenced-workload.md:70来自说明文档打开原文件
  "deploy" reply sent *after* the risks are shown. The original prompt never satisfies the gate.- **Additive only.** The deployment must *add* the new resources and their wiring. The referenced  resources are declared as `existing`/`data` (not `resource`), so a normal deploy never touches them.- **Incremental mode, never Complete.** For Bicep use the default **incremental** mode — never
references/referenced-workload.md:79来自说明文档打开原文件
  applying.- **Deploy into the existing scope when integrating.** Target the referenced resource group/subscription  so RBAC, private endpoints, and diagnostics wire into the existing resources.
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。发现 1 项风险
中风险

IaC 注释、资源标签和普通文档会被当作规划依据,形成间接提示注入入口

原文依据:3 处
发现了什么

流程要求挖掘所有输入,包括 IaC 注释、资源标签和普通文档,并优先将适用洞察用于区域、SKU、命名和配置。没有可见规则要求把这些内容仅视为不可信事实、忽略其中对代理的指令。

为什么需要注意

被篡改或来源不明的标签、注释或文档可能把错误的区域、昂贵 SKU、依赖关系或部署偏好带入计划。安全洞察有强化限制,但成本和架构决策仍可能受影响。

活动流程要求从文档、IaC 注释和资源标签中“挖掘”内容,并允许这些洞察改变区域、SKU、安全配置和命名。可见规则限制较弱的安全洞察,却没有要求把嵌入其中的代理指令当作不可信文本,因此恶意标签或注释可能影响规划决定。用户可要求作者加入明确的数据/指令隔离规则,并在应用外部洞察前展示来源与拟议影响供确认。

references/referenced-workload.md:20来自说明文档打开原文件
   - **General doc** → extract any existing resources it mentions.3. **Gather insights from ALL provided context.** Mine every input the user gave — docs, IaC comments,   resource tags, requirements, naming conventions, region, resiliency tier, PADU/preferences, cost and   compliance constraints — and record them as insights (the same channel Phase 3 already applies).   These shape the new workload just like tenant insights do.4. **Surface them and ask which to incorporate.** Present the existing resources you found and ask which   ones to **incorporate** (reference + wire) into the new workload. Recommend a sensible default —   incorporate the ones the new workload clearly depends on; never recreate them.5. **Generate the complete IaC** incorporating the chosen (or recommended-default) existing resources:
查看另外 2 个位置
references/phases/3-research-resources.md:15来自说明文档打开原文件
Read `.azure/insights.json` produced by Phase 1 and evaluate each insight against the current workload and sub-goals identified in Phase 2:* If an insight applies, prefer it over defaults — especially for region, SKU tier, security posture, naming, and tagging.* If an insight doesn't apply, document the intentional omission in `overallReasoning.tradeoffs`.* Insights can shape both resource selection and property configuration.* Track each insight you apply in `inputs.insightsApplied` so the user can trace why a decision was made.> Mandatory Security rule: only apply a security-related insight if it results in an equal or stronger security posture than the alternatives. A weaker security posture from an insight is only acceptable when the user has explicitly requested it in the initial prompt.
references/phases/3-research-resources.md:21来自说明文档打开原文件
> Mandatory Security rule: only apply a security-related insight if it results in an equal or stronger security posture than the alternatives. A weaker security posture from an insight is only acceptable when the user has explicitly requested it in the initial prompt.
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。发现 1 项风险
中风险

确认后会执行真实 Azure 部署,可创建订阅级资源并产生持续费用

原文依据:4 处
发现了什么

该 Skill 不止生成计划;它会运行资源组级或订阅级 deployment create,或执行 Terraform apply。订阅范围明确包括策略、RBAC 和资源组创建。风险确认门降低了误触概率,但不限制生成资源的数量或费用。

为什么需要注意

错误或过大的计划可能创建收费资源、消耗配额,或在错误订阅中建立长期运行的基础设施。

该 Skill 在用户于风险提示后作出明确确认时,会运行真实的 Azure 或 Terraform 部署;订阅级模板可创建资源组、策略和 RBAC,资源也可能持续计费。确认门明确且能降低误触,但没有可见的费用上限或资源数量限制。用户可在确认前要求 what-if/plan、成本估算、配额、精确订阅和资源组,并限制账号权限及禁止订阅级部署。

references/phases/7-deploy.md:3来自说明文档打开原文件
## Destructive Action GateThis phase is destructive and has irreversible effects. Explicitly confirm with the user whether to deploy, and mention the risks of altering live environments. Never accept implicit or vague intent; only continue if the user acknowledges the risks and instructs you to proceed (e.g. "I understand the risks, continue with deployment") in a reply sent *after* you have presented the risks. The original task prompt never satisfies this gate, even if it says "deploy" or "run all phases". Stop if no such reply is received. Do not accept vague statements such as "continue", "yes", "deploy now" (without risk acknowledgement), or "go ahead".
查看另外 3 个位置
references/deployment.md:34来自说明文档打开原文件
| `targetScope` | When to use | Command ||---|---|---|| `resourceGroup` (default) | All resources in one resource group | `az deployment group create` || `subscription` | Resources span multiple resource groups, or includes subscription-level resources (policy, RBAC, resource group creation) | `az deployment sub create` |
references/deployment.md:101来自说明文档打开原文件
# Preview changesterraform plan -var-file=prod.tfvars -out=tfplan# Apply (requires confirmation)terraform apply tfplan```
references/phases/7-deploy.md:13来自说明文档打开原文件
1. Confirm subscription and resource group with user2. Select the correct deployment scope based on `targetScope` in `main.bicep` (resource group, subscription, management group, or tenant)3. Run `az bicep build` to validate, then execute the matching scope command (`az deployment group create`, `az deployment sub create`, etc.) or `terraform apply`

Skill 逻辑拆解

6 个说明模块

该 Skill 采用七阶段流程:收集环境信息、研究、生成计划、生成 IaC、验证并部署。它会在项目中写入 Azure 环境摘要、计划和 Bicep/Terraform 文件;部署前要求用户明确确认风险。

查看原文
SKILL.md:46来自说明文档打开原文件
Every phase advances only after its gate passes. Phase 5 requires explicit user approval; **Phase 6 is ahardened, self-verifying gate** — the generated IaC must be secure-by-default, pass local validation(`az bicep build` / `terraform validate`) with zero errors, pass a `checkov` security scan with nounresolved high/critical findings, and the skill must **show the command output** and emit a completionself-check before advancing; Phase 7 requires an explicit, risk-acknowledged deploy confirmation.
SKILL.md:83来自说明文档打开原文件
**Artifacts** (written under `<project-root>/`): `.azure/insights.json` (Phase 1),`.azure/infrastructure-plan.json` (Phase 4, status `draft`→`approved`→`deployed`), and`infra/main.bicep` + `infra/modules/*` or `infra/main.tf` + `infra/modules/**` (Phase 6).

在引用现有环境的模式下,该 Skill 会通过 Azure CLI 或解析 IaC/文档建立资源清单,包括资源 ID、网络关系、身份绑定、SKU、区域和公共访问设置,然后把选定资源接入新工作负载。

查看原文
references/referenced-workload.md:11来自说明文档打开原文件
   a doc describing current resources)? If yes, use this flow.2. **Inventory the existing resources** from whatever was provided. Capture a COMPLETE inventory — every   resource type, plus topology/relationships (VNet/subnet, private endpoints, identity bindings) and key   configurations (SKU/tier, TLS version, public-access setting, region). Do not omit resources or invent   ones that are not present:   - **Resource group / subscription** → introspect (`az resource list` / `az graph query`) → real     resources **with resource IDs**.   - **IaC / infra plan** (Bicep/Terraform/ARM, `infrastructure-plan.json`, `terraform show -json`) →     parse `resource` / `existing` / `data` blocks → logical resources.   - **General doc** → extract any existing resources it mentions.3. **Gather insights from ALL provided context.** Mine every input the user gave — docs, IaC comments,
references/referenced-workload.md:27来自说明文档打开原文件
   incorporate the ones the new workload clearly depends on; never recreate them.5. **Generate the complete IaC** incorporating the chosen (or recommended-default) existing resources:   reference them (`existing` / `data`, real ID for live, a `param` otherwise) and **wire** the new   resources to them, honoring the gathered insights. Never emit a new `resource` for something that   already exists.

该 Skill 可以执行资源组级、订阅级 Bicep 部署或 Terraform apply。成功后,它还会把计划状态改为 deployed,并读取目标资源组中的资源列表。

查看原文
references/deployment.md:34来自说明文档打开原文件
| `targetScope` | When to use | Command ||---|---|---|| `resourceGroup` (default) | All resources in one resource group | `az deployment group create` || `subscription` | Resources span multiple resource groups, or includes subscription-level resources (policy, RBAC, resource group creation) | `az deployment sub create` |
references/deployment.md:101来自说明文档打开原文件
# Preview changesterraform plan -var-file=prod.tfvars -out=tfplan# Apply (requires confirmation)terraform apply tfplan```
references/deployment.md:118来自说明文档打开原文件
After successful deployment:1. Update status — set `meta.status` to `deployed` in `<project-root>/.azure/infrastructure-plan.json`2. Verify resources — list resources in the target resource group using Azure CLI: `az resource list -g <resource-group-name> -o table`3. Report to user — list deployed resources, endpoints, and any follow-up actions

生成的 IaC 被要求执行本地语法验证和 Checkov 扫描,并展示实际命令结果;工具不可用时则允许以人工自查替代。

查看原文
references/phases/6-generate-iac.md:12来自说明文档打开原文件
   - Minimum TLS 1.2 and encryption in transit.4. **Validate, security-scan, and fix until clean (mandatory, self-verifying).** No-deploy, purely local:   - **Bicep:** run `az bicep build --file infra/main.bicep`.   - **Terraform:** run `terraform init -backend=false` then `terraform validate` in `infra/`.   - **Security scan:** run `checkov -d infra/` and resolve every high/critical finding.   - If any command reports errors or unresolved high/critical findings, fix the files in-place and re-run. Repeat until every command exits cleanly.   - **Prove it:** paste the exact command(s) run and their final exit status / summary into your response. Do not claim the gate passed without showing the output. If a tool is genuinely unavailable, say so explicitly and self-review against the generation correctness checklist and the secure-by-default list above.5. **Emit the completion self-check.** End Phase 6 with this checklist, each line marked pass/fail with a one-line reason:
从这里开始 · 工作说明SKILL.md
azure-enterprise-infra-planner
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。

文件引用关系图

40 处引用
哪些文件发起引用引用了什么
连线表示真实的文件引用,不是运行顺序。点击节点可高亮相关连线,并查看具体文件和原文位置。虚线表示还有文件需要定位。
文件与检查记录41 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文
  • references/constraints/README.md已纳入全文
  • references/referenced-workload.md已纳入全文
  • references/resources/README.md已纳入全文
  • references/schema.md已纳入全文
  • references/waf-checklist.md已纳入全文
  • references/workflow.md已纳入全文
  • references/bicep-generation.md已纳入全文
  • references/constraints/ai-ml.md已纳入全文
  • references/constraints/compute-apps.md已纳入全文
  • references/constraints/compute-infra.md已纳入全文
  • references/constraints/data-analytics.md已纳入全文
  • references/constraints/data-relational.md已纳入全文
  • references/constraints/messaging.md已纳入全文
  • references/constraints/monitoring.md已纳入全文
  • references/constraints/networking-connectivity.md已纳入全文
  • references/constraints/networking-core.md已纳入全文
  • references/constraints/networking-traffic.md已纳入全文
  • references/constraints/security.md已纳入全文
  • references/deployment.md已纳入全文
  • references/pairing-checks.md已纳入全文
  • references/phases/1-extract-insights.md已纳入全文
  • references/phases/2-research-best-practices.md已纳入全文
  • references/phases/3-research-resources.md已纳入全文
  • references/phases/4-generate-plan.md已纳入全文
  • references/phases/5-verify.md已纳入全文
  • references/phases/6-generate-iac.md已纳入全文
  • references/phases/7-deploy.md已纳入全文
  • references/resources/ai-ml.md已纳入全文
  • references/resources/compute-apps.md已纳入全文
  • references/resources/compute-infra.md已纳入全文
  • references/resources/data-analytics.md已纳入全文
  • references/resources/data-relational.md已纳入全文
  • references/resources/messaging.md已纳入全文
  • references/resources/monitoring.md已纳入全文
  • references/resources/networking-connectivity.md已纳入全文
  • references/resources/networking-core.md已纳入全文
  • references/resources/networking-traffic.md已纳入全文
  • references/resources/security.md已纳入全文
  • references/terraform-generation.md已纳入全文
  • references/verification.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明
  • references/bicep-generation.md配套文件
  • references/constraints/README.md配套文件
  • references/constraints/ai-ml.md配套文件
  • references/constraints/compute-apps.md配套文件
  • references/constraints/compute-infra.md配套文件
  • references/constraints/data-analytics.md配套文件
  • references/constraints/data-relational.md配套文件
  • references/constraints/messaging.md配套文件
  • references/constraints/monitoring.md配套文件
  • references/constraints/networking-connectivity.md配套文件
  • references/constraints/networking-core.md配套文件
  • references/constraints/networking-traffic.md配套文件
  • references/constraints/security.md配套文件
  • references/deployment.md配套文件
  • references/pairing-checks.md配套文件
  • references/phases/1-extract-insights.md配套文件
  • references/phases/2-research-best-practices.md配套文件
  • references/phases/3-research-resources.md配套文件
  • references/phases/4-generate-plan.md配套文件
  • references/phases/5-verify.md配套文件
  • references/phases/6-generate-iac.md配套文件
  • references/phases/7-deploy.md配套文件
  • references/referenced-workload.md配套文件
  • references/resources/README.md配套文件
  • references/resources/ai-ml.md配套文件
  • references/resources/compute-apps.md配套文件
  • references/resources/compute-infra.md配套文件
  • references/resources/data-analytics.md配套文件
  • references/resources/data-relational.md配套文件
  • references/resources/messaging.md配套文件
  • references/resources/monitoring.md配套文件
  • references/resources/networking-connectivity.md配套文件
  • references/resources/networking-core.md配套文件
  • references/resources/networking-traffic.md配套文件
  • references/resources/security.md配套文件
  • references/schema.md配套文件
  • references/terraform-generation.md配套文件
  • references/verification.md配套文件
  • references/waf-checklist.md配套文件
  • references/workflow.md配套文件

代码和说明中提到的操作

读取密钥或账号配置
references/constraints/compute-apps.md:36来自说明文档打开原文件
| **VNet** | VNet integration is configured on the **Environment**, not the individual app. Environment needs a dedicated subnet with minimum /23 prefix for Consumption-only environments or /27 for workload profiles environments. || **Container Registry** | Requires registry credentials in `configuration.registries[]` or managed identity-based pull. || **Dapr** | Enable via `configuration.dapr.enabled: true`. Dapr components are configured on the Environment. |
references/constraints/compute-apps.md:61来自说明文档打开原文件
| **AKS** | AKS needs `acrPull` role assignment on the registry. Use managed identity (attach via `az aks update --attach-acr`). || **Container App** | Reference in `configuration.registries[]`. Use managed identity or admin credentials. || **ML Workspace** | Referenced as `containerRegistry` property. Used for custom training/inference images. |
references/waf-checklist.md:8来自说明文档打开原文件
| Identity | How do services authenticate to each other? | Managed identity, RBAC role assignments || Secrets | Are there connection strings, API keys, credentials? | Key Vault with RBAC authorization, soft-delete, and purge protection enabled || Monitoring | How will operators observe the system? | Application Insights for compute, Log Analytics workspace, diagnostic settings on data resources |
连接外部网站
references/constraints/networking-connectivity.md:10来自说明文档打开原文件
| **Public IP** | Requires Standard SKU public IP with Static allocation. || **NSG** | NSG on `AzureBastionSubnet` requires mandatory inbound (HTTPS 443 from Internet, GatewayManager 443) and outbound rules (see [Bastion NSG docs](https://learn.microsoft.com/azure/bastion/bastion-nsg)). || **VMs** | Target VMs must be in the same VNet as Bastion (or peered VNets with Standard/Premium SKU). |
references/constraints/networking-core.md:34来自说明文档打开原文件
| **GatewaySubnet** | NSGs are not supported on `GatewaySubnet`. Associating an NSG may cause VPN and ExpressRoute gateways to stop functioning. || **AzureBastionSubnet** | NSG on Bastion subnet requires specific inbound/outbound rules (see [Azure Bastion NSG](https://learn.microsoft.com/azure/bastion/bastion-nsg)). || **Application Gateway** | NSG on App Gateway subnet must allow `GatewayManager` service tag on ports `65200–65535` (v2) and health probe traffic. |
references/resources/ai-ml.md:13来自说明文档打开原文件
|----------|----------------|------------------|--------------|------------|| Cognitive Services | [2025-06-01](https://learn.microsoft.com/azure/templates/microsoft.cognitiveservices/accounts?pivots=deployment-language-bicep) | [Custom subdomain names](https://learn.microsoft.com/azure/ai-services/cognitive-services-custom-subdomains) | [Naming rules](https://learn.microsoft.com/azure/azure-resource-manager/management/resource-name-rules#microsoftcognitiveservices) | [All API versions](https://learn.microsoft.com/azure/templates/microsoft.cognitiveservices/allversions) || ML Workspace | [2025-06-01](https://learn.microsoft.com/azure/templates/microsoft.machinelearningservices/workspaces?pivots=deployment-language-bicep) | [ML Services](https://learn.microsoft.com/azure/templates/microsoft.machinelearningse 
运行命令
references/deployment.md:27来自说明文档打开原文件
```bash# Validate first (applies to both scopes)
references/deployment.md:41来自说明文档打开原文件
```bash# What-if preview
references/deployment.md:57来自说明文档打开原文件
PowerShell:```powershell
读取文件
references/phases/3-research-resources.md:29来自说明文档打开原文件
1. Read the relevant resource reference file to get its ARM type, API version, and CAF prefix. Use [resources/README.md](../resources/README.md) as the index to help you find the right file (e.g., `resources/compute-infra.md` for AKS, `reso 2. Read the relevant pairing constraint file using [constraints/README.md](../constraints/README.md) as the index. Each category file is <2K tokens, you must read the whole file for all resources in that category.3. **Required** — for every resource, spawn a general-purpose sub-agent to fetch its naming rules. Pass the naming rules URL from the resource file and instruct the sub-agent to call `microsoft_docs_fetch` and return only the min/max length 
读取了多少行
1,843
文件校验值(用于核对版本)
3c5ad8a8a0ebd3dc11f3d2218dd3487974b3a999797c5cff64534b43522f96e3