0

を使用してアプリケーションを作成しようとしています

  1. ドットネット コア 1.0
  2. MySQL をデータ ストアとして
  3. 認証と認可
  4. エンティティ フレームワーク
  5. Ubuntu 16 マシン

エンティティ フレームワークを使用して MySQL データベースからデータをフェッチするサンプル API の作成に成功しました。次に、電子メールをユーザー名とパスワードとして使用する認証を紹介したいと思います。

さまざまなブログからいくつかの方法を試しましたが、これを達成できませんでした。

私が達成しようとしているのは、ユーザーがユーザー名とパスワードを送信してAPIにログインするAPIのカスタム認証です。ログイン Api は、アクセス トークンと更新トークンを返します。このアクセス トークンを使用して、ユーザーは他の API を呼び出すことができます。

後で、Google と Facebook の認証も追加したいと考えています。

これを行う方法はありますか?

4

2 に答える 2

1

達成したいことはすべて可能です。ただし、いくつかの注意事項があります。

はい、できます。デフォルトでは、identityserver 4 でオフになっているリソース所有者許可を使用する必要があります。これの理由は、ユーザー資格情報をアプリケーションに渡すことはアンチパターンであり、通常はレガシーシステムをサポートするためにあり、資格情報が信頼されていないソースから来る可能性があるため、明示的な意味でユーザーを認証しないためだと思います(例として)。助成金の一般的な価値については、こちらをご覧ください。ここでサンプルを見つけることができます。

より安全なパターンは、クライアントと API 間の信頼を保証できない場合に適した Implicit Flow などを使用することです。

ソーシャルログインに関しては、これは可能です。オンラインにはたくさんのサンプルがありますが、ここに公式ドキュメントがあります。

于 2016-09-29T10:09:15.270 に答える