fix: verbose? now prints auth log

This commit is contained in:
Zach Daniel 2020-05-09 16:24:41 -04:00
parent 1278eaedbd
commit 91a4a668bf
No known key found for this signature in database
GPG key ID: C377365383138D4B
2 changed files with 21 additions and 0 deletions

View file

@ -15,6 +15,17 @@ defmodule Ash.Authorization.Report do
no_steps_configured: false
]
def report_from_engine(engine) do
report(%__MODULE__{
scenarios: engine.scenarios,
requests: engine.requests,
facts: engine.facts,
authorized?: engine.authorized?,
state: engine.data,
api: engine.api
})
end
def report(%{no_steps_configured: %Ash.Engine.Request{} = request}) do
"forbidden:\n" <>
request.name <> ": no authorization steps configured. Resource: #{request.resource}"

View file

@ -55,9 +55,19 @@ defmodule Ash.Engine do
api: engine.api
)
if engine.verbose? do
report = Ash.Authorization.Report.report_from_engine(new_engine)
Logger.info(report)
end
add_error(new_engine, :__engine__, error)
%{state: :complete} = new_engine ->
if engine.verbose? do
report = Ash.Authorization.Report.report_from_engine(new_engine)
Logger.info(report)
end
new_engine
new_engine when new_engine == engine ->