3
私はOpenIddict、JWT、リソースオーナーグラント、およびクレームベースのロールでASP.NETコアを使用しています。ポリシーを適用せずに承認が期待どおりに機能しています。OpenId Connectでのクレームベース認証
いくつかのコントローラとアクションメソッドで認可ポリシーを適用したいと思っています。すべての私のユーザーは、役割の主張を持っているので、私は起動時に次のようでした:
services.AddAuthorization(options =>
{
options.AddPolicy("Admin", p => p.RequireClaim("Admin");
});
そして私はアクションメソッドに次のようでした:「管理者」がなければ
[Authorize("Admin")]
public async Task<string> Index()
{
return "Yes";
}
、私はアクセスすることができましたリソース、 "管理者"を追加した後、私はできません。
私は、生成されたJWTトークンにユーザークレームがないため、これを前提としています。
- 私のJWTには、トークンが動作するためのユーザーロールの主張が含まれていますか?
- OpenIddictを使用して役割の申し立てを送信するにはどうすればよいですか?
私はこれを行い、トークンにロールを返しました。しかし、私は自分の意図ではなく、主張ではなく役割を要求するというポリシーを変更しなければなりませんでしたが、今はうまくいきます。ありがとうございます。 – Adam