PowerApps Portal Archives -

Category Archives: PowerApps Portal

Seamlessly Generating and Downloading SSRS Reports in MFA-Enabled Power Pages Environments

Generating SSRS (SQL Server Reporting Services) reports from within Power Pages becomes more complex in environments secured by Multi-Factor Authentication (MFA). Traditional approaches that work in basic environments tend to fail silently or inconsistently when MFA, session tokens, or cookie-based auth are involved. In this blog, I’ll share a real-world solution where a Project-based SSRS report was generated securely, sent via email, and optionally downloaded — all within the constraints of a Power Pages + Power Automate architecture in a Dynamics 365 MFA-protected environment. Step 1: Pre-Outline Brief Pain Points Solved: Step 2: Core Content Scenario Overview Problem Statement Standard HTTP-based retrieval of SSRS reports using the Reserved.ReportViewerWebControl.axd endpoint fails in MFA-protected environments due to missing browser session cookies. This often results in 302 redirects or HTML-based error messages that cannot be processed by Power Automate. Initial Approach and Issue A flow was constructed to: The Project ID is captured from Power Pages and passed to a Power Automate flow using an HTTP trigger, which is initiated when a user clicks a button on the portal—triggered via embedded JavaScript. Build the SSRS report URL dynamically. Compose -> PDF Download Start – Index -> Compose -> PDF Download String Length -> Compose -> PDF Download URL -> (Replaced the PrintOnOpen=true parameter with PrintOnOpen=false in the report export URL to prevent the print dialog from automatically appearing when the PDF is opened) Perform an HTTP GET request to download the report. This failed consistently on the first try due to the report session page not being fully ready or authenticated, especially in an MFA environment. Working Solution: Retry with Delay in Power Automate To overcome the session-based delay, we implemented a retry pattern inside Power Automate: Outcome: The flow fails the first time (as expected), but succeeds on the second or third retry as the session becomes valid and the SSRS report is available. Power Automate Configuration Highlights: Added a Scope block after the first HTTP request and set the Configure run after to Skipped and Failed If needed, you can add the third delay if the second one fails. Benefits of This Approach: To conclude, sometimes, achieving reliability in secure environments isn’t about complex code—it’s about using the right orchestration patterns. By strategically delaying and retrying the HTTP request to SSRS within Power Automate, we achieved consistent, secure report generation that works even under MFA constraints. 🔗 Need help implementing this retry-based flow in your environment?Reach out to CloudFronts—we help businesses implement scalable, reliable solutions every day. You can contact us directly at transform@cloudfronts.com.

Share Story :

Power Pages + Power Automate: Retrieve SharePoint Files via HTTP Trigger Flow

When building a Power Pages site to fetch SharePoint files, I initially relied on the official Power Pages flow trigger—“When Power Pages calls a flow.” However, the flow didn’t trigger reliably when initiated from the site. Despite proper configurations, the trigger wouldn’t execute consistently, leading to broken file fetch operations. To overcome this, I replaced the unreliable trigger with a Power Automate flow using an HTTP request trigger. This method allowed me to invoke the flow through a JavaScript function executed on page load, passing the required record ID dynamically. The HTTP approach not only worked reliably but also gave me more control over the request and response. This blog post outlines that workaround, from setting up the HTTP-triggered flow to integrating it seamlessly with Power Pages. Background and the Problem Power Pages provides a native trigger to call Power Automate flows. While ideal in theory, this approach often fails in practice due to: After spending time investigating these issues without consistent results, I decided to switch to a more controlled and universally reliable method using a HTTP trigger. My Workaround – HTTP Trigger Flow Power Automate Flow Setup: Trigger:Start with the “When an HTTP request is received” trigger. Define the request schema to accept a recordId— in this case, an orderId. Compose (Request Variables):Add a Compose action to extract the incoming ID. List Rows – Document Locations:Use Dataverse → List rows to retrieve the SharePoint Document Location related to the Order (based on the passed orderId). This assumes your files are stored in folders linked to Dataverse records. Condition – Check If Folder Exists:Use a Condition to check if any document location was found: If record exists → proceed, If no records found → terminate the flow (folder doesn’t exist). Compose – Relative URL: Compose – Folder Path:Combine the folder path: Get Files (SharePoint):Use the SharePoint Get files (properties only) action with the dynamic path set to the DocumentPath variable. Return Response:Format the SharePoint file metadata (Name, Link, Type) and send it back using the Response action. JavaScript (Executed on Page Load) Why This Works: Pros: Cons: To conclude, if you’ve faced reliability issues with native Power Pages flow triggers, the HTTP request method can be a game-changer. It enabled me to deliver a seamless experience for retrieving SharePoint files, and it can do the same for your project. In future iterations, I plan to enhance this by adding bearer token authentication and caching metadata for even faster performance. Want to integrate Power Automate flows reliably with Power Pages? Reach out to CloudFronts—we help businesses implement scalable, reliable Power Platform solutions every day. You can contact us directly at transform@cloudfronts.com.

Share Story :

The Hidden Power of ‘View Page Source’ – Debug Your Power Pages Like a Pro

Debugging Power Pages (formerly Power Apps Portals) can be tricky, especially when errors don’t show up clearly. One underrated but powerful method is using the browser’s “View Page Source” feature to uncover hidden issues. In this blog, we’ll explore how to use HTML source code inspection to diagnose problems in Power Pages, including: Use Case Imagine you’ve built a customer portal with dynamic content using Liquid templates, but: Manually checking each element is time-consuming. Instead, use these two pro techniques to pinpoint issues fast. Method 1: Debugging Using “View Page Source” Step 1: Access the Page Source Step 2: Check for Liquid Rendering Errors Power Pages uses Liquid templates to render dynamic content. If a Liquid snippet fails, it may appear as: Example: Debugging a Broken FetchXML Query Consider this Liquid Code in your Portal page but the data does not render In the page source, look for: This tells you the issue is table permissions, not the query itself. Method 2: Debugging Using Hidden <div> Tags If you need real-time frontend debugging, inject hidden <div> tags to display variables. Add a Hidden Debug <div> Place this in your Liquid template: Inspect with Browser DevTools <div> Example: Debugging a Missing Username If {{ user.fullname }} appears blank: Results Let’s test it – In this case, my fetchXML result is not rendering, so I wanted to verify if I have the necessary roles as well as the user information. By using your browser’s “View Page Source” feature and strategically placed hidden debug <div> tags, you can quickly uncover hidden Liquid errors, verify data rendering, and troubleshoot Power Pages issues more efficiently. These simple yet powerful techniques eliminate guesswork, help identify permission problems, and let you validate variables without disrupting the user experience – ultimately saving you valuable development time while maintaining cleaner, more reliable portals. (Pro Tip: Combine these methods with browser DevTools for even deeper debugging capabilities!) We hope you found this blog useful, and if you would like to discuss anything, you can reach out to us at transform@cloudfonts.com.

Share Story :

Unlock the Power of Power Pages: Building Websites with Dynamics 365

Power Pages, which was earlier known as Power Apps Portals, a powerful low-code platform from Microsoft, allows you to create websites seamlessly integrated with Dynamics 365. Whether you’re building a customer portal, a partner collaboration site, or an internal application, Power Pages makes it easy to deliver rich web experiences. Here’s a beginner-friendly guide to help you create your first Power Pages site. What is the difference between Normal Websites and Websites Created by Power Pages? Getting Started with Power Pages: Sign in to Power Pages:To get started, sign in to the Power Pages platform using your Microsoft account. If you don’t have one, create a new account. Once signed in, you’ll be taken to the Power Pages home screen where you can begin creating your site. Create a New Site:You can start by creating a site from scratch. Choose the “Start from blank” option or use one of the available templates to speed up your development process. Templates are pre-built designs that you can customize to fit your needs. Choose a Site Name and Web Address:Select a site name that reflects the purpose of the site (e.g., “Customer Portal” or “Partner Collaboration Site”). Choose an appropriate web address (URL) that aligns with your business branding. Power Pages will guide you through the process of selecting a domain name and integrating it with your site. Configure Site Settings:Once your site is created, you’ll be able to configure various settings such as branding, theme, and layout. Power Pages provides an intuitive interface where you can adjust these settings with minimal effort. Click to edit the Power Pages using the Studio. Design and Edit Your Site:Click to open and edit your site using Power Pages Studio. This drag-and-drop interface makes it easy to add content such as text, images, forms, and data from your Dynamics 365 system. The Studio allows you to customize the site’s design, layout, and interactive elements to create a rich user experience. Let’s add a section and select the column as per your wish. Select ‘List’ Select the table and the list of records you want to see in your Webpage This appears after adding the List. There is a notification to set up permissions on the list. Click on + New permission. Let’s Add roles and click Save. Now click Sync followed by Preview. Sync feature is to make sure that the changes made in the Power Pages Studio are reflected across the platform whereas Preview feature allows you to see a live, interactive version of your website before publishing it. This gives you the opportunity to review and test how the site will look and function for end users. Also, there is another way of editing and designing Power Pages. Why do we need Power Pages Management? While Power Pages Studio is designed for creating and designing websites, focusing on content, layout, and interactivity, the Power Pages Management App provides a separate interface for managing the operational, security, and administrative aspects of the site. Key Functions of Power Pages Management: The separation of responsibilities between the design and management aspects ensures that both designers and administrators can focus on their respective tasks without compromising the site’s functionality, security, or scalability. This division enhances the overall efficiency and flexibility of managing a Power Pages website. Happy Developing! We hope you found this blog useful, and if you would like to discuss anything, you can reach out to us at transform@cloudfonts.com

Share Story :

Setting Up Authentication and Security in Power Pages

Power Apps Pages, part of the Microsoft Power Platform, allows you to create responsive web applications that can be accessed by both internal and external users. Setting up authentication and security is crucial to ensure that only authorized users can access your application and its data. In this blog, we’ll walk you through the steps to set up authentication and security in Power Apps Pages. In this blog, we’ll cover the essentials of setting up security in Power Pages. Step 1: Configure Authentication Click on Power Pages sites and then select your portal. There is another way of authenticating your Power Pages Set Up Identity Providers using Azure For Azure AD: Enable Authentication Step 2: Setting Up Security Start by navigating to Power Pages Studio. Choose the site where you want to set up authentication. Click the ellipses (three dots) next to the Preview button and select ‘Power Pages Management’ in Power Pages Studio. This will take you to the Power Pages Management interface where you can make various administrative changes. Select the ellipses and click Web Roles Click on New to create a new web role. Name the role , in this case, (‘FreeSpirit Global Admin’) and save it. Web Page Access Control Rule in Power Pages is a security feature that defines which users or roles can access specific web pages on a site. This rule ensures that only authorized users can view or interact with restricted content, protecting sensitive data and maintaining site security. Add Web Roles to the Web Page Access Control Rule Step 3: Configure Page Security Navigating Page Settings in Power Pages Studio Go to Power Pages Studio -> Select the ellipses and Page Settings -> Go to Permissions and add the Role of the viewer Securing Power Pages using Power Pages Management Assigning Web Roles to Contact. Make sure the Form is set to Portal Contact. Select Web Roles from the Related drop-down Add Existing Web Role or create a new one if you want Table Permissions using Power Pages Management Navigate to Security > Table Permissions. Click on New to create a new table permission. Specify the table (entity) and the permission type (Read, Write, etc.). Assign the permission to a web role. Secure Individual Pages In the Portals Management App, navigate to Web Pages. Select the page you want to secure. Under the Permissions tab, add the web role that should have access to this page. Step 4: Additional Security Settings Set Up Multi-Factor Authentication (MFA) For added security, configure MFA in your Azure AD. Go to the Azure AD portal. Navigate to Security > Multi-Factor Authentication and follow the setup instructions. Configure IP Restrictions You can restrict access to your Power Apps Pages based on IP addresses. In the Portals Admin Center, navigate to Site Settings. Add new site settings for IP restrictions and specify the allowed IP addresses. Review and Monitor Security Logs Regularly review security logs for any suspicious activity. In the Azure AD portal, navigate to Monitoring > Sign-ins to review sign-in activity. Conclusion Setting up authentication and security in Power Apps Pages ensures that your application and its data are protected from unauthorized access. By configuring identity providers, creating security roles, setting up appropriate permissions, and implementing additional security measures like MFA and IP restrictions, you can manage who accesses your portal and what they can do within it. Follow these steps to create a secure and robust Power Apps Page for your users. By following this guide, you can ensure your Power Apps Pages are secure and provide a seamless experience for your users. Happy Building! We hope you found this blog useful, and if you would like to discuss anything, you can reach out to us at transform@cloudfonts.com.

Share Story :

Seamlessly Redirecting Users to Subpages in Power Pages: A Complete Guide

When developing web applications, one of the most common features you might need is the ability to dynamically redirect users to different subpages based on certain conditions, such as whether they are logged in or not. This ensures a smooth and personalized experience for users navigating your portal. In this guide, we’ll walk through how to set up redirection in Power Pages based on user authentication. Whether you’re building a public-facing portal or a member-only dashboard, this solution will help you ensure that users land on the right page based on their status. In our example, we want to redirect users based on their authentication status: By default, when users access your Power Pages portal, they land on the homepage. In this case, you want to check if the user is logged in and redirect them accordingly. We’ll use a Web Template in Power Pages. This template will contain the necessary JavaScript to check if the user is logged in and redirect them based on that. P.S. These below lines are included from the Default Studio Template. Don’t forget to include in your code. Next, create a Page Template and add the newly created Web Template. Go to Web Pages and update the Page Template as well. Click Save. And voila! The default landing page appears as soon as I access the website. With this simple solution, you can enhance the user experience by ensuring that visitors to your Power Pages portal are always directed to the content that’s most relevant to them. Happy Building! We hope you found this blog useful, and if you would like to discuss anything, you can reach out to us at transform@cloudfonts.com

Share Story :

Editing Components on the Power Apps Portal’s Sign In Page

Posted On March 10, 2022 by Vidit Gholam Posted in Tagged in

The Sign In Page of a Power Apps Portal looks something like the image as shown below.  The components shown in different colors in the below image are on the portals login page, we cannot access the backend code of these components but we can rename disable enable these components so let’s see how to do this.  When you provision your power apps portal with the portal a “Portal Management” Model-driven app is also being deployed in your environments.  In this Portal Management app, there are site settings using which you can enable/disable the Sign in Page Components    Below is the list of site settings whose values (true/false) enable or disable components on the sign-in page.   Authentication/Registration/AzureADLoginEnabled – Enables / Disables Azure AD Button.  Authentication/Registration/ExternalLoginEnabled – Enables / Disables Externa SignIn Section  Authentication/Registration/Enabled – Enables / Disables the registration section.   Authentication/Registration/InvitationEnabled – Enables / Disables the invitaion redeem button   Authentication/Registration/LocalLoginEnabled – Enables / Disables the local login section   Authentication/Registration/OpenRegistrationEnabled – Enables / Disables Registration button.  Search/Enabled – Enables / Disabled search icon on the screen.  Hope this helps!  Thank you. 

Share Story :

What are Short Cuts in PowerApps Portal

Introduction: Shortcuts are used to place child nodes(child links) throughout the portal’s sitemap(navigation) which simply points to other nodes that exist in your sitemap, or to URLs external to your portal. Use Case: We have two parent pages- “Hardware” and “Support”.  Both are child pages of another page- “Home”.  “Support” page has a child page named- “Support Create”.  Let’s say we want to add the “Support Create” child page under “Hardware” in the Sitemap(navigation). Steps to create a shortcut Go to the “Portal Management” app. Go to Shortcuts Click on “+New” to create new record Enter following details on the form Attribute Details: Name: Name for the shortcut. For internal use only. Website: The website that the shortcut belongs to. Parent Page: The parent webpage of the shortcut entity in the sitemap. The shortcut will be added to the sitemap as a child of this page. External URL: URL outside of your organization. Web Page: internal webpage of the portal Web File: web file of the portal Title: The title for the shortcut. This is the name that will appear in the sitemap and child navigation view areas. If left blank, the title (or name) of the target entity will be shown instead. After adding all the details save the record Navigate to the portal to see changes you should see new child node named “Raise Support” under “Hardware” If you click on “Raise Support” it will redirect you to the “Create New Support” page NOTE: A shortcut can only have value in one of the ‘Target’ fields (External URL, Web Page, Web File). If more than one target attribute exists for a shortcut, the shortcut will just take the first one, ignoring all others.  Reference Article: https://docs.microsoft.com/en-us/powerapps/maker/portals/configure/place-child-nodes

Share Story :

SEARCH BLOGS:

FOLLOW CLOUDFRONTS BLOG :


Secured By miniOrange