Security and sharing
Workspaces and Collaboration
Description: Workspaces are the foundational containers in the Power BI Service where all your content—reports, dashboards, and semantic models—resides. They act as centralized collaboration hubs where multiple team members can work together on the same project before sharing it with a wider audience.
Why: While "My Workspace" is a personal sandbox for individual experimentation, team Workspaces are essential for enterprise environments. They allow for version control, collaborative editing, and secure management of business-critical data assets.
Types of Workspaces
Power BI categorizes workspaces based on their purpose and the level of access required by the users:
| Workspace Type | Primary Purpose |
|---|---|
| My Workspace | A personal area for individual users to build and test their own reports. |
| Team/App Workspaces | Shared areas where developers collaborate on content and eventually "publish" an App to the rest of the company. |
Workspace Permissions (Roles)
To maintain security, workspaces use roles to define what a person can do. These roles include Admin (full control), Member (can add/edit content), Contributor (can create content), and Viewer (read-only access).
Key Notes
- App Publishing: Once a report is finished in a workspace, you can bundle it into an "App." This provides a clean, professional interface for end-users that is separate from the development environment.
- Organization: It is a best practice to create different workspaces for different departments (e.g., "Finance Workspace," "Sales Workspace") to keep data organized and secure.
Row-Level Security (RLS)
Description: Row-Level Security (RLS) is a security feature that restricts data access at the row level for specific users. While a standard filter hides data on the page, RLS ensures that the unauthorized data is never even sent to the user's browser.
Why: RLS is critical when you want to share a single report with multiple people but ensure they only see the data relevant to them. For example, a Regional Manager in India should only see India’s sales, even though the underlying dataset contains global sales figures.
How RLS is Implemented
RLS is a two-step process that begins in Power BI Desktop and is finalized in the Power BI Service:
- Define Roles (Desktop): You create "Roles" and write DAX filter expressions.
Example:[Region] = "India". - Assign Members (Service): Once the report is published, you assign users (email addresses) to those specific roles.
The "View As" Feature
Testing Your Security:
Before sharing a report with RLS, you can use the "View As" button in Power BI Desktop. This allows you to simulate the experience of a specific user to confirm that they can only see the rows of data intended for them.
Key Notes
- Dynamic RLS: Advanced users can use the
USERPRINCIPALNAME()function to create "Dynamic RLS." This automatically filters data based on the email address of the person currently logged in. - Efficiency: RLS saves time because you only have to build and maintain one report for the entire company instead of creating a separate file for every region or department.
- Workspace Access: Keep in mind that RLS does not apply to Workspace Admins or Members with edit permissions; it is primarily designed for "Viewers" of the content.
🏋️ Test Yourself With Exercises
Take our quiz on Security and sharing to test your knowledge.
Browse Quizzes »