aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/helpers')
-rw-r--r--lib/pleroma/helpers/auth_helper.ex17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/pleroma/helpers/auth_helper.ex b/lib/pleroma/helpers/auth_helper.ex
new file mode 100644
index 000000000..6e29c006a
--- /dev/null
+++ b/lib/pleroma/helpers/auth_helper.ex
@@ -0,0 +1,17 @@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
+defmodule Pleroma.Helpers.AuthHelper do
+ alias Pleroma.Web.Plugs.OAuthScopesPlug
+
+ @doc """
+ Skips OAuth permissions (scopes) checks, assigns nil `:token`.
+ Intended to be used with explicit authentication and only when OAuth token cannot be determined.
+ """
+ def skip_oauth(conn) do
+ conn
+ |> Plug.Conn.assign(:token, nil)
+ |> OAuthScopesPlug.skip_plug()
+ end
+end