Authorization に Oauth 2 を使用する Rails アプリケーションを開発しました。現在、API 呼び出しにアクセスするために、access_token を URL パラメータとして渡していますが、トークンはヘッダーとして渡すこともできると聞きました。access_token を渡すためのベスト プラクティスとその理由はどれですか?
Oauth サポートに Devise + Doorkeeper を使用しています。
私にいくつかの提案をください..
Authorization に Oauth 2 を使用する Rails アプリケーションを開発しました。現在、API 呼び出しにアクセスするために、access_token を URL パラメータとして渡していますが、トークンはヘッダーとして渡すこともできると聞きました。access_token を渡すためのベスト プラクティスとその理由はどれですか?
Oauth サポートに Devise + Doorkeeper を使用しています。
私にいくつかの提案をください..
ヘッダーとして、コントローラーで次のように作成できます。
before_filter :authenticate
protected
def current_user
@current_user
end
def authenticate
token = request.env["HTTP_ACCESS_TOKEN"]
@current_user = User.where(authentication_token: token).first if token.present?
unless token && current_user.present?
#error handling goes here.
end
end
ヘッダーに access_token が存在するのはよくあることです。見てください: ヘッダーは何のためにあるのでしょうか? これらは、リクエストに関するメタ情報用です。アクセストークンは間違いなくメタ情報です。
私の答えが完全かどうかはわかりません。私が知らない落とし穴がいくつかある可能性があります。私が間違っている場合は修正してください。