IdentityServer / IdentityServer4

OpenID Connect and OAuth 2.0 Framework for ASP.NET Core
https://identityserver.io
Apache License 2.0
9.23k stars 4.02k forks source link

Question: Running Identity Server 4 in .Net 4.5.2 #1185

Closed AdamRiddick closed 7 years ago

AdamRiddick commented 7 years ago

I'm looking to run Identity Server 4 in .Net 4,5,2, as its suggested here; Identity Server 4 Platforms.

Is there a sample created that shows Identity Server 4 running in this context?

Mardoxx commented 7 years ago

Just change set your target framework to use net452 moniker.

AdamRiddick commented 7 years ago

@Mardoxx Thanks for the reply.

To this point I have created a .Net Framework 4.5.2 Library and imported the required Identity Server packages.

The problem I am facing is trying to get Identity Server 4 running targetting .Net 4.5.2 as a virtual app within IIS without the .Net Code Runtime installed. I can see from the Identity Server 4 codebase that the configuration is done against the IApplicationBuilder interface, which is injected into the WebHostBuilder startup methods. Is there an alternative method to configure Identity Server 4, or is it bound to the IApplicationBuilder, and thus requiring the AspNetCoreModule to run within IIS ?

The reason I'm looking for samples is to discover if it can be used in this context

Mardoxx commented 7 years ago

Good question. I was under the impression that ASP.NET Core libraries target net core and net framework (it's a little more complicated than this, but I don't fully understand it to be able to explain it in a manner I am satisfied with) and that AspNetCoreModule is only required to run net core apps under net core runtime?

So if you target the full framework, it should "just work" without any additional IIS configuration/modules running under net framework.

I believe the confusion lies with the damn "Core" name, ASP.Net Core ~framework~ uhh collection of libraries, despite its name, can target and "compile" to a normal .NET Framework app which will run on normal net framework.

AdamRiddick commented 7 years ago

That was also my understanding.

I'm struggling with the configuration, which is what spurred me to try and locate a sample of something similar.

In order to get the IApplicationBuilder implementation needed to configure Identity Server 4, i'm using the Startup against the WebHostBuilder, which I am configuring using Kestrel. In order to get the startup to fire the .Net Framework 4.5.2 library has an output type of exe, and this is where it is falling over, as without the AspNetCoreModule IIS won't manage the process.

I may be going about this in the wrong way, so any assistance is appreciated.

leastprivilege commented 7 years ago

https://docs.microsoft.com/en-us/aspnet/core/publishing/iis

Mardoxx commented 7 years ago

Is this necessary even if you are targeting net framework?

leastprivilege commented 7 years ago

What is necessary?

The deployment model of asp.net core is slightly different compared to asp.net.old. It always uses Kestrel and the aspnet core module for IIS - regardless which target runtime is used.

Mardoxx commented 7 years ago

Ahh thanks, that answers my question then!

daddydrac commented 6 years ago

Can I use IDServer4 + .NET 4.5 to connect to ADFS?

leastprivilege commented 6 years ago

IS4 requires .NET 4.6.1 or .NET Core 2.0

lock[bot] commented 4 years ago

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.