Ash FrameworkAF
Ash Framework3y ago
13 replies
quartz

How to programatically add a policy to a resource?

I might be missing something here related to Spark, but how do I programatically add a policy? (e.g. using a Spark extension)

def transform(dsl_state) do
    {:ok, policy} =
      Transformer.build_entity(Ash.Policy.Authorizer, [:policies], :bypass,
        condition: Ash.Policy.Check.Builtins.always(),
        description: "Admins bypass all checks"
      )

    {:ok, check} =
      Transformer.build_entity(Ash.Policy.Authorizer, [:policies, :bypass], :authorize_if,
        check: auth_if_admin
      )
    # how do I add `check` to `policy`???
end
Was this page helpful?