DotNetOpenAuth
使用して実装しなければならないシナリオと、対処しなければならない特定のフローに対する答えを見つけるのが非常に困難です。
下の図では、MVC サイトと API の両方を制御しています。API は、私の承認サーバーであり、リソース サーバーでもあります。
ユーザー名とパスワードの流れ
ユーザーが自分のシステムにローカル アカウントを作成した場合、ユーザー名とパスワードの資格情報を処理してサイトにログインさせ、それをトークン エンドポイントに渡し、その後、HandleTokenRequest
クライアントがリソースへのアクセスを開始するためのアクセス トークンとリフレッシュ トークンを取得するために、承認サーバーの
OpenID の流れ
現在途方に暮れているフローは、ユーザーが Google 資格情報を使用してサイトにログインすることを決定した場合です (たとえば)。このシナリオでは、API で自分の承認サーバーからアクセス トークンとリフレッシュ トークンを付与するにはどうすればよいでしょうか?
API Token エンドポイントへのリクエストには何を含めますか?
ライブラリWebServerClient
の一部であるクラスから継承する独自の API クライアントを作成しました。DotNetOpenAuth
呼び出されたトークンを処理するためのインターフェースが提供されているのを見てきましたが、IServiceProviderTokenManager
それは私のような API クライアントの実装ではなく、OpenID プロバイダーのシナリオで使用されているようです。クライアント側で API トークンを所有していますが、それも確認したいですか?
Web サイトと API の両方が同じセキュリティ データベースに完全にアクセスできますが、リソースが保持されているデータベースにアクセスできるのは API だけです。