Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F56225028
ensure_authenticated_plug.ex
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
915 B
Referenced Files
None
Subscribers
None
ensure_authenticated_plug.ex
View Options
# Pleroma: A lightweight social networking server
# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule
Pleroma.Plugs.EnsureAuthenticatedPlug
do
import
Plug.Conn
import
Pleroma.Web.TranslationHelpers
alias
Pleroma.User
use
Pleroma.Web
,
:plug
def
init
(
options
)
do
options
end
@impl
true
def
perform
(
%{
assigns
:
%{
auth_credentials
:
%{
password
:
_
},
user
:
%
User
{
multi_factor_authentication_settings
:
%{
enabled
:
true
}}
}
}
=
conn
,
_
)
do
conn
|>
render_error
(
:forbidden
,
"Two-factor authentication enabled, you must use a access token."
)
|>
halt
()
end
def
perform
(%{
assigns
:
%{
user
:
%
User
{}}}
=
conn
,
_
)
do
conn
end
def
perform
(
conn
,
_
)
do
conn
|>
render_error
(
:forbidden
,
"Invalid credentials."
)
|>
halt
()
end
end
File Metadata
Details
Attached
Mime Type
text/x-ruby
Expires
Fri, Apr 3, 9:44 PM (12 h, 51 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1223904
Default Alt Text
ensure_authenticated_plug.ex (915 B)
Attached To
Mode
rPUBE pleroma-upstream
Attached
Detach File
Event Timeline
Log In to Comment