Merge branch 'auth-modernize' into 'main'
Various 3rd-party auth providers improvements Closes #506 et #989 See merge request framasoft/mobilizon!1221
This commit is contained in:
commit
d2ebe86c9f
@ -46,7 +46,7 @@ export default class ProviderValidate extends Vue {
|
|||||||
id: userId,
|
id: userId,
|
||||||
email: userEmail,
|
email: userEmail,
|
||||||
isLoggedIn: true,
|
isLoggedIn: true,
|
||||||
role: ICurrentUserRole.USER,
|
role: userRole,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
const { data } = await this.$apollo.query<{ loggedUser: IUser }>({
|
const { data } = await this.$apollo.query<{ loggedUser: IUser }>({
|
||||||
|
@ -7,6 +7,14 @@ defmodule Mobilizon.Web.AuthController do
|
|||||||
require Logger
|
require Logger
|
||||||
plug(:put_layout, false)
|
plug(:put_layout, false)
|
||||||
|
|
||||||
|
config = Application.get_env(:mobilizon, Mobilizon.Web.Endpoint, [])
|
||||||
|
|
||||||
|
plug(Plug.Session,
|
||||||
|
store: :cookie,
|
||||||
|
key: "_auth_callback",
|
||||||
|
signing_salt: Keyword.get(config, :secret_key_base)
|
||||||
|
)
|
||||||
|
|
||||||
plug(Ueberauth)
|
plug(Ueberauth)
|
||||||
|
|
||||||
@spec request(Plug.Conn.t(), map()) :: Plug.Conn.t()
|
@spec request(Plug.Conn.t(), map()) :: Plug.Conn.t()
|
||||||
|
@ -20,7 +20,7 @@ defmodule Mobilizon.Web.AuthView do
|
|||||||
Tag.tag(:meta, name: "auth-refresh-token", content: refresh_token),
|
Tag.tag(:meta, name: "auth-refresh-token", content: refresh_token),
|
||||||
Tag.tag(:meta, name: "auth-user-id", content: user_id),
|
Tag.tag(:meta, name: "auth-user-id", content: user_id),
|
||||||
Tag.tag(:meta, name: "auth-user-email", content: user_email),
|
Tag.tag(:meta, name: "auth-user-email", content: user_email),
|
||||||
Tag.tag(:meta, name: "auth-user-role", content: user_role),
|
Tag.tag(:meta, name: "auth-user-role", content: String.upcase(to_string(user_role))),
|
||||||
Tag.tag(:meta, name: "auth-user-actor-id", content: user_actor_id)
|
Tag.tag(:meta, name: "auth-user-actor-id", content: user_actor_id)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
6
mix.exs
6
mix.exs
@ -180,10 +180,8 @@ defmodule Mobilizon.Mixfile do
|
|||||||
{:ueberauth_github, "~> 0.8.1"},
|
{:ueberauth_github, "~> 0.8.1"},
|
||||||
{:ueberauth_facebook, "~> 0.9"},
|
{:ueberauth_facebook, "~> 0.9"},
|
||||||
{:ueberauth_google, "~> 0.10.1"},
|
{:ueberauth_google, "~> 0.10.1"},
|
||||||
{:ueberauth_keycloak_strategy,
|
{:ueberauth_keycloak_strategy, "~> 0.3.0"},
|
||||||
git: "https://github.com/tcitworld/ueberauth_keycloak.git", branch: "upgrade-deps"},
|
{:ueberauth_gitlab_strategy, "~> 0.4.0"},
|
||||||
{:ueberauth_gitlab_strategy,
|
|
||||||
git: "https://github.com/tcitworld/ueberauth_gitlab.git", branch: "upgrade-deps"},
|
|
||||||
{:ecto_shortuuid, "~> 0.1"},
|
{:ecto_shortuuid, "~> 0.1"},
|
||||||
{:tesla, "~> 1.4.0"},
|
{:tesla, "~> 1.4.0"},
|
||||||
{:sitemapper, "~> 0.6"},
|
{:sitemapper, "~> 0.6"},
|
||||||
|
4
mix.lock
4
mix.lock
@ -132,9 +132,9 @@
|
|||||||
"ueberauth": {:hex, :ueberauth, "0.7.0", "9c44f41798b5fa27f872561b6f7d2bb0f10f03fdd22b90f454232d7b087f4b75", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "2efad9022e949834f16cc52cd935165049d81fa9e925690f91035c2e4b58d905"},
|
"ueberauth": {:hex, :ueberauth, "0.7.0", "9c44f41798b5fa27f872561b6f7d2bb0f10f03fdd22b90f454232d7b087f4b75", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "2efad9022e949834f16cc52cd935165049d81fa9e925690f91035c2e4b58d905"},
|
||||||
"ueberauth_facebook": {:hex, :ueberauth_facebook, "0.9.0", "c0b03c33903d1d23db1a13eb2d31238d64f32ee35b5bd51491e24d40168c0bff", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "f2a0fc914a194431b4578b16cba7a2cfce2298f7cfbefb3aa744283cf1eb47ff"},
|
"ueberauth_facebook": {:hex, :ueberauth_facebook, "0.9.0", "c0b03c33903d1d23db1a13eb2d31238d64f32ee35b5bd51491e24d40168c0bff", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "f2a0fc914a194431b4578b16cba7a2cfce2298f7cfbefb3aa744283cf1eb47ff"},
|
||||||
"ueberauth_github": {:hex, :ueberauth_github, "0.8.1", "0be487b5afc29bc805fa5e31636f37c8f09d5159ef73fc08c4c7a98c9cfe2c18", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7.0", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "143d6130b945ea9bdbd0ef94987f40788f1d7e8090decbfc0722773155e7a74a"},
|
"ueberauth_github": {:hex, :ueberauth_github, "0.8.1", "0be487b5afc29bc805fa5e31636f37c8f09d5159ef73fc08c4c7a98c9cfe2c18", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7.0", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "143d6130b945ea9bdbd0ef94987f40788f1d7e8090decbfc0722773155e7a74a"},
|
||||||
"ueberauth_gitlab_strategy": {:git, "https://github.com/tcitworld/ueberauth_gitlab.git", "9fc5d30b5d87ff7cdef293a1c128f25777dcbe59", [branch: "upgrade-deps"]},
|
"ueberauth_gitlab_strategy": {:hex, :ueberauth_gitlab_strategy, "0.4.0", "96605d304ebb87ce508eccbeb1f94da9ea1c9da20d8913771b6cf24a6cc6c633", [:mix], [{:oauth2, "~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7.0", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "e86e2e794bb063c07c05a6b1301b73f2be3ba9308d8f47ecc4d510ef9226091e"},
|
||||||
"ueberauth_google": {:hex, :ueberauth_google, "0.10.1", "db7bd2d99d2ff38e7449042a08d9560741b0dcaf1c31191729b97188b025465e", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7.0", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "b799f547d279bb836e1f7039fc9fbb3a9d008a695e2a25bd06bffe591a168ba1"},
|
"ueberauth_google": {:hex, :ueberauth_google, "0.10.1", "db7bd2d99d2ff38e7449042a08d9560741b0dcaf1c31191729b97188b025465e", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7.0", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "b799f547d279bb836e1f7039fc9fbb3a9d008a695e2a25bd06bffe591a168ba1"},
|
||||||
"ueberauth_keycloak_strategy": {:git, "https://github.com/tcitworld/ueberauth_keycloak.git", "d892f0f9daf9e0023319b69ac2f7c2c6edff2b14", [branch: "upgrade-deps"]},
|
"ueberauth_keycloak_strategy": {:hex, :ueberauth_keycloak_strategy, "0.3.0", "262f25ae9a38886e13a954919a873ae6ea9adf73cf8875eec74b945f0b2c7b2b", [:mix], [{:oauth2, "~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "d1a0abad08cd5e39722a9899200583b03ac63fee0c264799018ef06eb989db31"},
|
||||||
"ueberauth_twitter": {:hex, :ueberauth_twitter, "0.4.1", "92f88b1ad50322cdda719b439bb7f93b225dc0315723117bc25c782e627c8f33", [:mix], [{:httpoison, "~> 1.0", [hex: :httpoison, repo: "hexpm", optional: false]}, {:oauther, "~> 1.1", [hex: :oauther, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "83ca8ea3e1a3f976f1adbebfb323b9ebf53af453fbbf57d0486801a303b16065"},
|
"ueberauth_twitter": {:hex, :ueberauth_twitter, "0.4.1", "92f88b1ad50322cdda719b439bb7f93b225dc0315723117bc25c782e627c8f33", [:mix], [{:httpoison, "~> 1.0", [hex: :httpoison, repo: "hexpm", optional: false]}, {:oauther, "~> 1.1", [hex: :oauther, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.7", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "83ca8ea3e1a3f976f1adbebfb323b9ebf53af453fbbf57d0486801a303b16065"},
|
||||||
"unicode_util_compat": {:hex, :unicode_util_compat, "0.7.0", "bc84380c9ab48177092f43ac89e4dfa2c6d62b40b8bd132b1059ecc7232f9a78", [:rebar3], [], "hexpm", "25eee6d67df61960cf6a794239566599b09e17e668d3700247bc498638152521"},
|
"unicode_util_compat": {:hex, :unicode_util_compat, "0.7.0", "bc84380c9ab48177092f43ac89e4dfa2c6d62b40b8bd132b1059ecc7232f9a78", [:rebar3], [], "hexpm", "25eee6d67df61960cf6a794239566599b09e17e668d3700247bc498638152521"},
|
||||||
"unsafe": {:hex, :unsafe, "1.0.1", "a27e1874f72ee49312e0a9ec2e0b27924214a05e3ddac90e91727bc76f8613d8", [:mix], [], "hexpm", "6c7729a2d214806450d29766abc2afaa7a2cbecf415be64f36a6691afebb50e5"},
|
"unsafe": {:hex, :unsafe, "1.0.1", "a27e1874f72ee49312e0a9ec2e0b27924214a05e3ddac90e91727bc76f8613d8", [:mix], [], "hexpm", "6c7729a2d214806450d29766abc2afaa7a2cbecf415be64f36a6691afebb50e5"},
|
||||||
|
Loading…
Reference in New Issue
Block a user