0

IdentityServer4 を使用して Web API セキュリティを作成しています。コンソール マネージャーで次の構文を入力して、identityserver4 パッケージをインストールしました。Install-Package IdentityServer4 -Pre. 正常にインストールされます。今、私は自分のプロジェクトでそれを参照できません。インストール後の私の project.json コードは次のとおりです。

{
    "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"
    ]
}

だから今、私は次のコードでクライアントクラスを作成しました:

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
                }
            };
        }
    }
}

だから私は多くのエラーが発生します。マウスを最初のクライアントに合わせると、表示される唯一のオプションは Add Package IdentityServer3 2.1.1 です。

では、IdentityServer3 2.1.1 の代わりに IdentityServer4 を参照するにはどうすればよいですか

ご連絡をお待ちしております。

ありがとう、ソマド

4

1 に答える 1

5

これらのフレームワークは完全に時代遅れです。

identityserver4 を使用するには、(少なくとも)netcoreapp 1.0いくつかの依存関係が追加されたフレームワークに依存する必要があります。project.json のフレームワークを次のように置き換えます。

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

サンプルも参照してください。ツールが古くなっているか、古いプロジェクトを再び開いていると思います。ASP.NET Core では多くのことが変更されました。

于 2016-09-28T12:53:28.783 に答える