IdentityServer4.Admin icon indicating copy to clipboard operation
IdentityServer4.Admin copied to clipboard

Connect Admin Api to the Admin UI

Open skoruba opened this issue 5 years ago • 13 comments

Currently, the Admin UI is connected to services directly from the controllers.

I am considering using Admin Api from Admin UI.

It will required some rewrite, but it should be cleaner solution.

Feedback is welcome. 👍

Thanks

skoruba avatar Jan 30 '20 08:01 skoruba

That's great! This allow us to reduce the maintenance effort and will propagate new features across all system. Remember to use HttpClientFactory and Polly for reduce HTTP connection issues.

danielmeza avatar Jan 30 '20 20:01 danielmeza

Can you describe your idea with Polly?

skoruba avatar Jan 30 '20 20:01 skoruba

@skoruba count on me when time comes for this rewrite...

Thank you

b0 avatar Feb 05 '20 12:02 b0

Would that mean in general, staying with MVC or going down the SPA route? If SPA would be an option, any thoughts on the frontend stack? Maybe it would be nice to bring some love to https://aurelia.io/

IMHO they deserve being used by great projects to showcase their stuff. :)

I have not too much experience with Aurelia, but would love to get my hands dirty if the time comes.

devployment avatar Feb 12 '20 16:02 devployment

I want to work still with MVC. Thanks

skoruba avatar Feb 12 '20 17:02 skoruba

@devployment I have a lot of experience with aurelia, and it is a awesome JS framework, but it is JS. Although since the project is oriented to rest noting stop us to build a different UI stack. Personally I will chose something closed to the .net world like Blazor, but for now MVC is just fine.

danielmeza avatar Feb 12 '20 21:02 danielmeza

I agree with you @danielmeza - thanks for feedback. Maybe I will consider some rewrite but in the future, current solution with MVC is stable. 👍🏼

skoruba avatar Feb 12 '20 21:02 skoruba

In my opinion Admin and Admin Api projects can be merged.

Connecting Admin to Api will cause unnecessary navigation, auth steps. That will cause unnecessary delay and complexity. Merging two projects into one and execute all the business logic in common services will be more simple.

Api endpoints can serve under a logical route base name like "/Api/*".

mehyaa avatar Apr 01 '20 10:04 mehyaa

@mehyaa I agree with you. This merge will required bigger rewrite, so I will work on this issue in Q3 of this year - help with this is really welcome. 👍

skoruba avatar Apr 01 '20 10:04 skoruba

Hey @skoruba! Do you want to merge the projects or use the Api on AdminUI for the moment?

vicentt avatar Jul 27 '20 16:07 vicentt

any progress on this?

raminassar avatar Dec 29 '21 13:12 raminassar

Unfortunately not, currently postponed, I am working on new features to Duende IdentityServer Admin UI.

skoruba avatar Dec 29 '21 13:12 skoruba

Can you describe your idea with Polly?

@skoruba Not @danielmeza, but I know what he's talking about and fully agree. Since no one addressed your question: Polly is a 3rd party transient fault handling framework for .NET that is fully endorsed by Micsosoft, so much as that they introduced their own extension packages for Polly as part of .NET, including some to add retries and other forms of transient fault handling to the HttpClientFactory pattern.

The HttpClientFactory pattern along with Polly is the new and preferred way of injecting HttpClients into classes (over the old way of making it static, or worse, constructed with every instance). More here on using it with Polly.

Nick Chapsas (@Elfocrash) made a great and quick video recently on implementing it in a new .NET project if you want to dive in.

jdmallen avatar Nov 07 '22 13:11 jdmallen