私は現在、リソース指向のRESTfulWebサービスとなる会社の新しいパートナー/パブリックAPIの指定に取り組んでいます。現時点で欠けているパズルのピースは、認証/承認です。
要件は次のとおりです。
- 最初は、サーバー間環境で機能する必要があります。たとえば、サーバーアプリケーションは、APIを呼び出しているユーザーを認識できるように、サーバーアプリケーション自体を識別できる必要があります。
- 将来的には、ユーザーアカウントになりすますことを許可したいと考えています。そのため、識別されるサーバーには、限られた期間のユーザーアカウントを表すトークンが含まれるようになります。
OAuthは、(2)トークンを取得し、ユーザーが資格情報を入力して認証するWebサイトにリダイレクトし、そのトークンを使用してアプリケーションとユーザーの両方を識別/認証するワークフローで理想的と思われます。
しかし、私が読んだことから、それが(1)に適しているかどうかはわかりません-つまり、有効なユーザー固有のトークンがなく、したがって必要のない呼び出し元のアプリケーションを識別するためだけにOAuthを使用できる方法はありますか?資格情報を入力するためにWebページにリダイレクトされますか?