Skip to content
Data
Skill

/power-bi-security

Configure row-level security (RLS) roles, object-level security, and perspectives for Power BI semantic models using pbi-cli. Invoke this skill whenever the user mentions "security", "RLS", "row-level security", "access control", "data restrictions", "who can see", "filter by

From plugin
pbi-cli
49113 skills

Claude Code

$ npx -y skills add MinaSaad1/pbi-cli --skill power-bi-security --agent claude-code

SKILL.md

power-bi-security.SKILL.md
name: Power BI Security
description: Configure row-level security (RLS) roles, object-level security, and perspectives for Power BI semantic models using pbi-cli. Invoke this skill whenever the user mentions "security", "RLS", "row-level security", "access control", "data restrictions", "who can see", "filter by user", "perspectives", "limit visibility", or wants to restrict data access by role.
tools: pbi-cli

Power BI Security Skill

Manage row-level security (RLS) and perspectives for Power BI models.

Prerequisites

pipx install pbi-cli-tool
pbi-cli skills install
pbi connect

Security Roles (RLS)

# List all security roles
pbi security-role list

# Get role details
pbi security-role get "Regional Manager"

# Create a new role
pbi security-role create "Regional Manager" \
  --description "Restricts data to user's region"

# Delete a role
pbi security-role delete "Regional Manager"

Perspectives

Perspectives control which tables and columns are visible to users:

# List all perspectives
pbi perspective list

# Create a perspective
pbi perspective create "Sales View"

# Delete a perspective
pbi perspective delete "Sales View"

Workflow: Set Up RLS

# 1. Create roles
pbi security-role create "Sales Team" --description "Sales data only"
pbi security-role create "Finance Team" --description "Finance data only"

# 2. Verify roles were created
pbi --json security-role list

# 3. Export full model for version control (includes roles)
pbi database export-tmdl ./model-backup/

Workflow: Create User-Focused Perspectives

# 1. Create perspectives for different audiences
pbi perspective create "Executive Dashboard"
pbi perspective create "Sales Detail"
pbi perspective create "Finance Overview"

# 2. Verify
pbi --json perspective list

Common RLS Patterns

Region-Based Security

Create a role that filters by the authenticated user's region:

pbi security-role create "Region Filter" \
  --description "Users see only their region's data"

Then define table permissions with DAX filter expressions in the model (via TMDL or Power BI Desktop).

Department-Based Security

pbi security-role create "Department Filter" \
  --description "Users see only their department's data"

Manager Hierarchy

pbi security-role create "Manager View" \
  --description "Managers see their direct reports' data"

Best Practices

  • Create roles with clear, descriptive names
  • Always add descriptions explaining the access restriction
  • Export model as TMDL for version control (`pbi database export-tmdl`)
  • Test RLS thoroughly before publishing to production
  • Use perspectives to simplify the model for different user groups
  • Document role-to-group mappings externally (RLS roles map to Azure AD groups in Power BI Service)
  • Use `--json` output for automated security audits: `pbi --json security-role list`
Read more
@minasaad1
Ships withpbi-cli

Power BI CLI - semantic models (.NET TOM) and PBIR reports for token-efficient AI agent usage, built for Claude Code

Stars on GitHub

Momentum

stars in total
491
Star history of MinaSaad1/pbi-cli on GitHub, a chart by star-history.com

Other skills on pbi-cli.

power-bi-custom-visuals

power-bi-custom-visual…

Vibe-code Power BI custom visuals end-to-end: scaffold a TypeScript project, iterate on src/visual.ts and capabilities.json,…

@minasaad1@minasaad1Install Skill
power-bi-dax

power-bi-dax

Write, execute, and optimize DAX queries and measures for Power BI semantic models using pbi-cli. Invoke this skill whenever the…

@minasaad1@minasaad1Install Skill
power-bi-deployment

power-bi-deployment

Import and export TMDL/TMSL formats, manage model lifecycle with transactions, and version-control Power BI semantic models using…

@minasaad1@minasaad1Install Skill
power-bi-diagnostics

power-bi-diagnostics

Troubleshoot Power BI model performance, trace query execution, manage caches, and verify the pbi-cli environment using pbi-cli.…

@minasaad1@minasaad1Install Skill
power-bi-docs

power-bi-docs

Auto-document Power BI semantic models by extracting metadata, generating documentation, and cataloging all model objects using…

@minasaad1@minasaad1Install Skill
power-bi-filters

power-bi-filters

Add, remove, and manage page-level and visual-level filters on Power BI PBIR reports using pbi-cli. Invoke this skill whenever…

@minasaad1@minasaad1Install Skill

More skills from other plugins.

context-loader
Auto-invoked

context-loader

Search memories from earlier Pi sessions in this repository. Use it when earlier work may already explain the code, error,…

mem06d69k
@mem0ai@mem0aiInstall Skill
analyzing-ai-citations

analyzing-ai-citations

Answer AI citation and answer engine optimization (AEO) questions in PostHog: whether AI answer engines (ChatGPT, Claude, and an…

posthog13d41k
@posthog@posthogInstall Skill

Questions about power-bi-security.

Which coding agents can use power-bi-security?
power-bi-security installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.