A Power Pages site is composed of several essential building blocks that enable businesses to publish secure, data-integrated websites. These components include both visual design elements and backend configurations like data structures, permissions, and integrations.
We’ll break these components into the following categories:
- Pages and Navigation
- Web Roles and Permissions
- Dataverse Tables
- Forms and Lists
- Authentication & Authorization
- Web Templates and Content Snippets
- Themes and Styling
- Power Pages Design Studio
- ALM and Site Administration
- Integrations and Extensions
1. Pages and Navigation
Pages
- Represent the actual web pages users see.
- Can be public or protected based on access roles.
- Created using the Power Pages Design Studio’s page builder.
- Support responsive layouts for mobile, tablet, and desktop.
Navigation
- Uses menu links to define how users move between pages.
- Automatically updates with changes in page hierarchy.
- Can show/hide based on user roles or visibility settings.
2. Web Roles and Permissions
Web Roles
- Control who can view or interact with content.
- Examples: Anonymous Users, Authenticated Users, Administrators, Custom Roles.
- Users are assigned web roles through the portal authentication system.
Table Permissions
- Govern access to Dataverse tables.
- Permissions include read, create, update, delete, append, and append to.
- You can define whether roles have access to all records or only user-owned records.
3. Dataverse Tables
- The data backbone of a Power Pages site.
- Store structured data accessible through the site (e.g., forms, views).
- Custom and standard tables can be used.
- Supports relationships, business rules, and workflows.
- Integrated tightly with Power Platform tools like Power Apps and Power Automate.
4. Forms and Lists
Forms
- Web Forms are used to display and collect data.
- Created from Dataverse forms and exposed to the website.
- Support validation, prefilled values, and conditional display rules.
Lists
- Used to display multiple records in a grid format.
- Allow sorting, filtering, and paging.
- Users can edit or delete records directly from the list (if permitted).
5. Authentication & Authorization
Authentication
- Supports multiple identity providers:
- Azure AD B2C
- Microsoft Accounts
- LinkedIn, Facebook, Google
- You can configure local registration or external login options.
Authorization
- After authentication, users get web roles assigned.
- These roles dictate what data or pages they can access.
6. Web Templates and Content Snippets
Web Templates
- Used for advanced page rendering.
- Written using Liquid templating language.
- Enable developers to inject logic and dynamic content into pages.
Content Snippets
- Store reusable content blocks (e.g., footer text, terms of service).
- Can be edited without changing page structure.
- Good for non-technical content editors.
7. Themes and Styling
- Define the visual branding of the site.
- Includes:
- Fonts, colors, and typography
- Section spacing and layout options
- Background images and button styles
- Themes can be edited using:
- Design Studio (Low-code)
- Custom CSS (Pro-code)
8. Power Pages Design Studio
- Central tool to manage site design, content, and structure.
- Divided into 4 main sections:
- Pages: Create and edit pages
- Styling: Choose or define visual themes
- Data: Connect and configure Dataverse tables, forms, and views
- Set Up: Configure site-wide settings (authentication, languages, PWA, etc.)
9. ALM and Site Administration
Application Lifecycle Management (ALM)
- Sites are part of a Power Platform environment.
- You can package and move sites using Solutions.
- Supports Dev-Test-Prod lifecycle with version control.
Administration Features
- Site visibility and access settings
- Security management
- Diagnostic logging and telemetry
- Web file and image management
10. Integrations and Extensions
Power Automate
- Automate workflows like:
- Sending emails when a form is submitted
- Creating approval flows
- Syncing data with other systems
Power BI
- Embed live dashboards and analytics inside Power Pages.
- Securely display role-based insights to authenticated users.
Custom Code
- Use JavaScript, Liquid, HTML, and CSS for deep customization.
- Add interactive elements and dynamic behaviors.
External APIs
- Integrate third-party services through REST APIs.
- Display external data or trigger external systems from portal actions.
Example Use Case: Citizen Service Portal
Component | Usage |
---|---|
Pages | Home, Contact Us, Service Request |
Web Roles | Anonymous (view info), Authenticated (submit request) |
Dataverse | Stores service request details |
Forms | Service request submission |
Lists | Citizen request history |
Authentication | Azure AD B2C with OTP |
Power Automate | Notify back-office staff on submission |
Styling | Government branding |
Admin | Track usage metrics and site performance |