Skip to content

Conversation

@MWG-Logan
Copy link
Owner

@MWG-Logan MWG-Logan commented Dec 24, 2025

This pull request updates both the API and documentation to align with a new authentication architecture using Azure Static Web Apps (SWA) and Azure AD (Entra ID). The main change is that Azure Functions now use AuthorizationLevel.Anonymous, with authentication and access control enforced at the SWA layer. The documentation is extensively revised to reflect this, clarify the authentication flow, describe the Blazor frontend, and provide deployment and architectural details. These changes improve security, streamline authentication, and make the project easier to deploy and maintain.

Authentication Architecture Updates:

  • Changed Azure Functions endpoints in ProjectCompletionReportFunction.cs to use AuthorizationLevel.Anonymous instead of Function, trusting authentication from SWA. [1] [2]
  • Updated documentation (README.md, docs/architecture.md, docs/deployment.md, docs/frontend.md) to describe authentication flow: SWA enforces Azure AD login, blocks unauthenticated requests, and forwards only authenticated requests to Functions. No function keys needed; session managed by SWA cookies. [1] [2] [3] [4]

Project Structure and Frontend Improvements:

  • Revised README.md and architecture docs to describe the Blazor WebAssembly frontend, its features (interactive visualization, PDF export, Azure AD integration), and the new shared DTO project for contracts. [1] [2] [3] [4]

Security and Data Handling Enhancements:

  • Clarified that sensitive data is stored in Azure App Settings (with Key Vault references in production) and that report payloads do not transmit raw credentials. [1] [2]

Deployment and Configuration Documentation:

  • Added step-by-step deployment instructions for integrated and separate SWA/Functions setups, including authentication provider configuration and build/deploy commands.

Future Enhancements and Roadmap:

  • Updated roadmap to include visual analytics, additional export formats, caching, and user-level access control based on ConnectWise permissions. [1] [2]

Updated HTTP trigger authorization level from 'Function' to 'Anonymous' for project completion report functions.
Copilot AI review requested due to automatic review settings December 24, 2025 14:30
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request changes the HTTP trigger authorization level from Function to Anonymous for two Azure Functions endpoints that generate project completion reports. This change removes authentication requirements, allowing unrestricted public access to these endpoints.

Key Changes:

  • Removed function key authentication from the project completion report generation endpoint
  • Removed function key authentication from the PDF generation endpoint

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@MWG-Logan
Copy link
Owner Author

@copilot this seems to prompt a need for readme and documentation updates. Please fully update the docs based on the current state of the application. Auth has changed (to expecting SWA linked to the function), a minimal Blazor front-end is now implemented, and anything else you can find.

@github-actions
Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://mango-river-0addcf70f-29.eastus2.2.azurestaticapps.net

Copy link
Contributor

Copilot AI commented Dec 24, 2025

@MWG-Logan I've opened a new pull request, #30, to work on those changes. Once the pull request is ready, I'll request review from you.

…30)

* Initial plan

* Update documentation to reflect SWA authentication and implemented Blazor frontend

Co-authored-by: MWG-Logan <[email protected]>

---------

Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: MWG-Logan <[email protected]>
@github-actions
Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://mango-river-0addcf70f-29.eastus2.2.azurestaticapps.net

@MWG-Logan MWG-Logan merged commit 05a2c00 into main Dec 24, 2025
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants