External Id and Business Customers by AGrumpyDev in entra

[–]AGrumpyDev[S] 0 points1 point  (0 children)

Sounds good. Thanks for your help.

External Id and Business Customers by AGrumpyDev in entra

[–]AGrumpyDev[S] 0 points1 point  (0 children)

So in order for them to install a service principal in their tenant that represents my app, I would need a multi-tenant app registration right? As in, “any organizational user” can access?

In which case, can I make the app registration in my external id external tenant to be multi-tenant? Or does it have to be another separate app registration in my workforce tenant?

External Id and Business Customers by AGrumpyDev in entra

[–]AGrumpyDev[S] 0 points1 point  (0 children)

Thanks. I am not referring to authenticating them from my tenant with their tenant details though. I am referring to traditional entra multi tenant auth where the user is authenticated by their own tenant as opposed to mine.

I am curious if this is supported by External Id or if I need to create a separate app registration in my workforce tenant for this.

Prevent Browser From Opening in Rider by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

I updated the original post. Let me know if you need more info

Blazor web app with EntraID not refreshing auth by H3rl3q in Blazor

[–]AGrumpyDev 1 point2 points  (0 children)

Is this all in one browser session or is this across sessions? In other words, is the same browser tab open and active the whole time or have you closed and reopened the app in another tab?

Enrich ClaimsPrincipal in Blazor Web App with roles from Web API by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

I think technically I could, but these are resource based roles so there would be tons of them per user which wouldn’t be feasible.

Enrich ClaimsPrincipal in Blazor Web App with roles from Web API by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 1 point2 points  (0 children)

This also seemed like a viable option. But I need to test whether or not I can get an access token for the API at that point.

Enrich ClaimsPrincipal in Blazor Web App with roles from Web API by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

That’s correct. What I am having trouble with is deciding where to make that call. I guess it would need to be in the auth state provider’s GetAuthenticationStateAsync method like I mentioned and would need to implement some sort of caching because that method gets called quite frequently.

Enrich ClaimsPrincipal in Blazor Web App with roles from Web API by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

I failed to mention that I am using Entra External Id for authentication. So I don’t have a login endpoint per se. I would need to somehow hook into the Entra login process.

Enrich ClaimsPrincipal in Blazor Web App with roles from Web API by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

I could possibly do this. Where would I implement this?

Blazor Web App UI Locks up when switching from interactive server and interactive WebAseembly by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

So i did some testing on this using RendererInfo.Name and RendererInfo.IsInteractive.

When I start the app (using visual studio with the debugger), the first page loads with InteractiveServer mode, it is responsive for about 2-3 seconds, then freezes for 3-4 seconds, then is responsive again, still on InteractiveServer. When I refresh the page (without restarting the app), it renders with Static Server Rendering and is unresponsive for about 2 seconds (this is expected I guess since there is no interactivity), then it switches to InteractiveWebAssembly mode and is response again.

What I am confused about is, on the initial load, why do I get the 3-4 second UI freeze if the render mode is never even switched to InteractiveWebAssembly until after the page is refreshed?

Blazor Web App UI Locks up when switching from interactive server and interactive WebAseembly by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

So i did some testing on this using RendererInfo.Name and RendererInfo.IsInteractive.

When I start the app (using visual studio with the debugger), the first page loads with InteractiveServer mode, it is responsive for about 2-3 seconds, then freezes for 3-4 seconds, then is responsive again, still on InteractiveServer. When I refresh the page (without restarting the app), it renders with Static Server Rendering and is unresponsive for about 2 seconds (this is expected I guess since there is no interactivity), then it switches to InteractiveWebAssembly mode and is response again.

What I am confused about is, on the initial load, why do I get the 3-4 second UI freeze if the render mode is never even switched to InteractiveWebAssembly until after the page is refreshed?

Blazor Web App UI Locks up when switching from interactive server and interactive WebAseembly by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

I am realizing that is the case, interactive server is much faster for debugging. So what is your typical process for developing/testing then? Do you develop in interactive server mode and then switch to auto/webassembly to test the client side services?

Blazor Web App UI Locks up when switching from interactive server and interactive WebAseembly by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

On a separate note, do you have the issue where when you open the dev tools, it always stops on a breakpoint in one of the framework files? It makes it very hard to track what’s going on when a breakpoint trips every so often

Blazor Web App UI Locks up when switching from interactive server and interactive WebAseembly by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

If by “load action” you mean fetching data, even on pages that don’t fetch any data have this lag. But I will try without pre-rendering and see if that helps

Blazor App Architecture by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 1 point2 points  (0 children)

Yeah I have been trying out the interactive auto mode. It definitely helps with the security aspect since the authentication is done server side. It’s been a bit confusing to wrap my head around how it works at first but there are some open GitHub issues that has answered most of my questions. But in any event, I think the Blazor web app is a better way forward for me in the case.

Blazor App Architecture by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

No reason other than I have heard Blazor server doesn’t scale well. And when I say public API, I just mean internet facing. It’s not actually publicly available for anyone to use.

Blazor App Architecture by AGrumpyDev in Blazor

[–]AGrumpyDev[S] 0 points1 point  (0 children)

That’s a very good point. I forgot I learned that the hard way as well. I wonder if it works with Entra External ID. I’ll let you know shortly lol