2016-09-28 2 views
0

Ich erstelle eine Web-API-Sicherheit mit IdentityServer4. Ich habe das Paket identityserver4 installiert, indem ich die folgende Syntax in den Konsolenmanager eingegeben habe: Install-Package IdentityServer4 -Pre. Es wird erfolgreich installiert. Jetzt kann ich es in meinem Projekt nicht mehr referenzieren. Hier ist meine project.json Code nach der Installation:IdentityServer4 Probleme

{ 
    "webroot": "wwwroot", 
    "version": "1.0.0-*", 

    "dependencies": { 
     "Microsoft.AspNet.Server.IIS": "1.0.0-beta5", 
     "Microsoft.AspNet.Server.WebListener": "1.0.0-beta5", 
     "IdentityServer4": "1.0.0-rc1-update2" 
    }, 

    "commands": { 
     "web": "Microsoft.AspNet.Hosting --config hosting.ini" 
    }, 

    "frameworks": { 
     "dnx451": { }, 
     "dnxcore50": { } 
    }, 

    "publishExclude": [ 
     "node_modules", 
     "bower_components", 
     "**.xproj", 
     "**.user", 
     "**.vspscc" 
    ], 
    "exclude": [ 
     "wwwroot", 
     "node_modules", 
     "bower_components" 
    ] 
} 

So dass ich jetzt eine Client-Klasse mit dem folgenden Code erstellt haben:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Threading.Tasks; 

namespace LearningIdentityServer4.OAuth 
{ 
    public class Clients 
    { 
     public static IEnumerable<Client> Get() 
     { 
      return new[] 
      { 
       new Client 
       { 
        ClientId = "myApi", 
        ClientSecrets = new List<Secret> 
        { 
         new Secret("secret".Sha256()) 
        }, 
        ClientName = "My lovely Api", 
        Flow = Flows.ResourceOwner, 
        AllowedScope = 
        { 
         Constants.StandardScope.OpenId, 
         "read" 
        }, 
        Enabled = true 
       } 
      }; 
     } 
    } 
} 

So bekomme ich viele Fehler. Wenn ich meine Maus schweben über lasst uns den ersten Client sagen, ich nur die Optionen immer bin, ist also Package IdentityServer3 2.1.1

hinzufügen Wie verweisen ich die IdentityServer4 statt IdentityServer3 2.1.1

Ich würde mich darauf, von dir zu hören.

Danke, Somad

Antwort

4

Diese Frameworks sind total veraltet.

Um den identityserver4 zu verwenden, müssen Sie (mindestens) von netcoreapp 1.0 Framework mit einigen zusätzlichen Abhängigkeiten abhängig sein. ersetzen Sie Ihre Frameworks in Ihrem project.json auf die folgenden:

"frameworks": { 
"netcoreapp1.0": { 
    "imports": [ 
    "dotnet5.6", 
    "portable-net45+win8" 
    ] 
} 
}, 

Auch die samples sehen. Ich gehe davon aus, dass entweder Ihre Werkzeuge veraltet sind oder Sie wieder ein altes Projekt eröffnen. Viele Dinge haben sich mit ASP.NET Core geändert.

Verwandte Themen