Iam Audit
briiirussell/cybersecurity-skills
Audit, design, and migrate Identity and Access Management — cloud provider IAM (AWS, GCP, Azure), identity providers (Okta, Entra ID / Azure AD, Auth0, Google Workspace), application authorization…
Guidance for Microsoft Entra Conditional Access (CA) and multifactor authentication — the Zero Trust policy engine that enforces grant/block decisions based on user, device, location, app, and risk…
$ npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install vinayaklatthe/microsoft-security-skills conditional-access-mfa --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/vinayaklatthe/microsoft-security-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/conditional-access-mfa .claude/skills/conditional-access-mfa && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "conditional-access-mfa" agent skill from https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfa into .claude/skills/conditional-access-mfa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conditional-access-mfa", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfaType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install vinayaklatthe/microsoft-security-skills conditional-access-mfa --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinayaklatthe/microsoft-security-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/conditional-access-mfa .agents/skills/conditional-access-mfa && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "conditional-access-mfa" agent skill from https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfa into .agents/skills/conditional-access-mfa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conditional-access-mfa", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install vinayaklatthe/microsoft-security-skills conditional-access-mfa --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinayaklatthe/microsoft-security-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/conditional-access-mfa .cursor/skills/conditional-access-mfa && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "conditional-access-mfa" agent skill from https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfa into .cursor/skills/conditional-access-mfa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conditional-access-mfa", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/vinayaklatthe/microsoft-security-skills.git --path skills/conditional-access-mfa--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install vinayaklatthe/microsoft-security-skills conditional-access-mfa --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinayaklatthe/microsoft-security-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/conditional-access-mfa .gemini/skills/conditional-access-mfa && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "conditional-access-mfa" agent skill from https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfa into .gemini/skills/conditional-access-mfa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conditional-access-mfa", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install vinayaklatthe/microsoft-security-skills conditional-access-mfaInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/vinayaklatthe/microsoft-security-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/conditional-access-mfa .github/skills/conditional-access-mfa && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "conditional-access-mfa" agent skill from https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfa into .github/skills/conditional-access-mfa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conditional-access-mfa", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install vinayaklatthe/microsoft-security-skills conditional-access-mfa --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinayaklatthe/microsoft-security-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/conditional-access-mfa .opencode/skills/conditional-access-mfa && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "conditional-access-mfa" agent skill from https://github.com/vinayaklatthe/microsoft-security-skills/tree/main/skills/conditional-access-mfa into .opencode/skills/conditional-access-mfa/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "conditional-access-mfa", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
conditional-access-mfaGuidance for Microsoft Entra Conditional Access (CA) and multifactor authentication — the Zero Trust policy engine that enforces grant/block decisions based on user, device, location, app, and risk…
Conditional Access Mfa is an agent skill from vinayaklatthe/microsoft-security-skills. Guidance for Microsoft Entra Conditional Access (CA) and multifactor authentication — the Zero Trust policy engine that enforces grant/block decisions based on user, device, location, app, and risk signals. Covers a baseline 6-policy set, authentication strengths for phishing-resistant MFA, report-only rollout, break-glass exclusions, session controls, and policy lifecycle. WHEN: Conditional Access, MFA enforcement, require compliant device, block legacy authentication, Zero Trust access policy…
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs, covering Authentication, Policy and terms drafting and Authorization and RBAC. It works with Microsoft Entra ID, Microsoft Azure and Microsoft 365. The repository describes itself as: Curated Microsoft Security skills for AI agents - Defender, Sentinel, Entra, Purview, Intune, Security Copilot. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 15f16df. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
learn.microsoft.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Conditional Access Mfa loads about 1.8k tokens when it runs. Until then it costs about 222 tokens; SKILL.md has 758 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from vinayaklatthe/microsoft-security-skills at commit 15f16df, republished under its MIT licence (© vinayaklatthe). 758 words, ~1,835 tokens.
.claude/skills/conditional-access-mfa/SKILL.md (or your agent's skills folder).Conditional Access (CA) is the Zero Trust policy engine in Entra. It evaluates signals - user /group, device state, location, application, sign-in risk - and enforces grant, block, or grant-with-controls (MFA, compliant device, session controls). MFA without CA is rare; the two are designed together.
Enforcing adaptive, identity-centric access controls across Microsoft 365 and any Entra- integrated app. Use this skill for the baseline policy set and any new policy rollout.
Do not use this skill for risk detection (entra-id-protection), just-in-time admin
elevation (azure-pim), or app-side OAuth permissions (entra-id).
Every Entra tenant in 2026 should have these six policies as the minimum, in this order.
| # | Policy | Scope | Grant control |
|---|---|---|---|
| 1 | Require MFA for admins | All Entra admin roles | MFA + phishing-resistant strength |
| 2 | Require MFA for all users | All users (excl. break-glass) | MFA |
| 3 | Block legacy authentication | All users | Block |
| 4 | Require compliant device for M365 | All users, M365 apps | Compliant OR hybrid-joined |
| 5 | Risk-based CA - sign-in risk High | All users | MFA (requires EID P2) |
| 6 | Risk-based CA - user risk High | All users | Secure password change (requires EID P2) |
Rule of thumb: if a tenant doesn't have all 6, it is below the 2026 Microsoft baseline. Policies 5 and 6 require Entra ID P2; substitute with risk-based authentication strength on E3 if needed.
Inventory before authoring — Export current sign-in logs to understand baseline:
per-app MFA usage, legacy auth volume, device compliance, named locations in use.
Don't author policies on assumed traffic patterns.
Verify: Sign-ins workbook shows per-app MFA % and legacy auth count.
Use authentication strengths, not just "Require MFA" — Authentication strengths let you require phishing-resistant methods (FIDO2 passkey, Windows Hello for Business, certificate-based) for high-value scopes. Plain "Require MFA" accepts SMS - still phishable. Verify: admin policy grant control uses the built-in Phishing-resistant MFA authentication strength, not generic MFA.
Always report-only first — New policies in report-only mode for at least 7 days. Use What If to model specific user + app scenarios. Promote to On only after the report-only results show no surprises. Verify: policy report-only impact > 0 sign-ins evaluated (otherwise policy isn't matching anything - bad scope).
Exclude break-glass on every policy — Two cloud-only emergency accounts excluded from
every policy, monitored on every sign-in. Document the exclusion list and review monthly.
Verify: Conditional Access Insights workbook shows break-glass exclusion applied to all
enforcing policies.
Session controls where needed — Sign-in frequency for sensitive apps, persistent browser block on shared devices, app-enforced restrictions for Exchange/SharePoint, Conditional Access App Control for in-session monitoring.
Policy register — Maintain a register (CSV or Sentinel watchlist) with policy intent, owner, exclusions, last review. CA policies drift without this.
Author the baseline 6-policy Conditional Access set for a new Entra tenant.Require phishing-resistant MFA (FIDO2/WHfB) for all Entra admin roles.Block legacy authentication and report on which apps still use it.Roll out a new "require compliant device for Exchange" policy safely with report-only.Why are users getting MFA-prompted constantly - tune sign-in frequency.Exclude our break-glass accounts from every CA policy and alert on their sign-ins.© vinayaklatthe, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/conditional-access-mfa of vinayaklatthe/microsoft-security-skills.
Open the folder on GitHubat commit 15f16df
Conditional Access Mfa next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Conditional Access Mfa this skillvinayaklatthe/microsoft-security-skills | 175 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Iam Auditbriiirussell/cybersecurity-skills | 413 | — | ~3.1k | Automated safety check: Notes | MIT | |
| Auditing Azure Active Directory Configurationmukul975/Anthropic-Cybersecurity-Skills | 34k | — | ~3k | Automated safety check: Pass | Apache-2.0 | |
| Apex Entra App Registrationjonathan-vella/apex | 217 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Entra Agent Idmicrosoft/GitHub-Copilot-for-Azure | 255 | 2 repos | ~4k | Automated safety check: Pass | MIT | |
| Microsoft Azure Webjobs Extensions Authentication Events Dotnetmicrosoft/skills | 3.1k | 5 repos | ~3.8k | Automated safety check: Pass | MIT |
briiirussell/cybersecurity-skills
Audit, design, and migrate Identity and Access Management — cloud provider IAM (AWS, GCP, Azure), identity providers (Okta, Entra ID / Azure AD, Auth0, Google Workspace), application authorization…
mukul975/Anthropic-Cybersecurity-Skills
Auditing Microsoft Entra ID (Azure Active Directory) configuration to identify risky authentication policies, overly permissive role assignments, stale accounts, conditional access gaps, and guest…
jonathan-vella/apex
WORKFLOW SKILL — Guides Microsoft Entra ID app registration, OAuth 2.0 authentication, and MSAL integration.
microsoft/GitHub-Copilot-for-Azure
Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant)…
microsoft/skills
Microsoft Entra Authentication Events SDK for .NET. An agent skill from microsoft/skills.
secondsky/sap-skills
Develops and administers SAP Build Work Zone, advanced edition digital workplace solutions.
vinayaklatthe/microsoft-security-skills
Guidance for designing secure APIs on Azure - authentication, authorization, gateway controls, input validation, rate limiting, secret management, and runtime threat detection - aligned to OWASP API…
vinayaklatthe/microsoft-security-skills
Guidance for securing Azure App Service web apps and APIs — managed identity, Easy Auth with Microsoft Entra ID, network isolation via private endpoints + VNet integration, HTTPS / TLS hardening…
vinayaklatthe/microsoft-security-skills
Guidance for Azure Arc — projecting on-premises, multicloud (AWS/GCP), and edge servers, Kubernetes, and data services into Azure Resource Manager for unified governance, security, and management.
vinayaklatthe/microsoft-security-skills
Guidance for secure remote VM management in Azure using Azure Bastion combined with Defender for Cloud just-in-time (JIT) VM access.
vinayaklatthe/microsoft-security-skills
Guidance for Azure Confidential Computing — protecting data in use through hardware-based Trusted Execution Environments (TEEs).
vinayaklatthe/microsoft-security-skills
Guidance for Azure DDoS Protection — Network Protection (per-VNet) and IP Protection (per public IP) tiers built on the same always-on Microsoft platform.
Categories
Guidance for Microsoft Entra Conditional Access (CA) and multifactor authentication — the Zero Trust policy engine that enforces grant/block decisions based on user, device, location, app, and risk…. Conditional Access Mfa is an agent skill from vinayaklatthe/microsoft-security-skills. Guidance for Microsoft Entra Conditional Access (CA) and multifactor authentication — the Zero Trust policy engine that enforces grant/block decisions based on user, device, location, app, and risk signals.
Conditional Access Mfa fits situations like: risk-based detection signal sources (use entra-id-protection); PIM activation (use azure-pim).
Run `npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a claude-code`. Or copy the skill folder (skills/conditional-access-mfa in vinayaklatthe/microsoft-security-skills) into .claude/skills/conditional-access-mfa in your project. Claude Code loads it when a task matches its description.
Run `npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a codex`. Or copy the skill folder (skills/conditional-access-mfa in vinayaklatthe/microsoft-security-skills) into .agents/skills/conditional-access-mfa in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add vinayaklatthe/microsoft-security-skills --skill conditional-access-mfa -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/conditional-access-mfa, .gemini/skills/conditional-access-mfa, .github/skills/conditional-access-mfa and .opencode/skills/conditional-access-mfa in your project.
SKILL.md names no scripts, command-line tools or credentials: Conditional Access Mfa is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: learn.microsoft.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Conditional Access Mfa is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Conditional Access Mfa: Iam Audit (briiirussell/cybersecurity-skills, 413 stars), Auditing Azure Active Directory Configuration (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Apex Entra App Registration (jonathan-vella/apex, 217 stars) and Entra Agent Id (microsoft/GitHub-Copilot-for-Azure, 255 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
vinayaklatthe (a GitHub user) maintains it in vinayaklatthe/microsoft-security-skills, which has 175 GitHub stars. The repository holds 50 skills in this directory. The repository was last updated on June 18, 2026.
Source: vinayaklatthe/microsoft-security-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.