Commit 2c303b33 authored by lain's avatar lain

Merge branch 'bugfix/oauth2-param-name' into 'develop'

oauth: support either name or username parameter with grant_type=password

Closes #180

See merge request pleroma/pleroma!219
parents 280ac243 4894b88b
......@@ -81,7 +81,7 @@ defmodule Pleroma.Web.OAuth.OAuthController do
# - investigate a way to verify the user wants to grant read/write/follow once scope handling is done
def token_exchange(
conn,
%{"grant_type" => "password", "name" => name, "password" => password} = params
%{"grant_type" => "password", "username" => name, "password" => password} = params
) do
with %App{} = app <- get_app_from_request(conn, params),
%User{} = user <- User.get_by_nickname_or_email(name),
......@@ -104,6 +104,18 @@ defmodule Pleroma.Web.OAuth.OAuthController do
end
end
def token_exchange(
conn,
%{"grant_type" => "password", "name" => name, "password" => password} = params
) do
params =
params
|> Map.delete("name")
|> Map.put("username", name)
token_exchange(conn, params)
end
defp fix_padding(token) do
token
|> Base.url_decode64!(padding: false)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment