AshAuthentication.AddOn.AuditLog (ash_authentication v4.12.0)

View Source

Audit logging support.

Provides audit-logging support for authentication strategies by adding changes and preparations to all their actions.

In order to use this add-on you must have at least one resource configured with the AshAuthentication.AuditLogResource extension added.

Example

defmodule MyApp.Accounts.User do
  use Ash.Resource,
    extensions: [AshAuthentication],
    domain: MyApp.Accounts

  authentication do
    add_ons do
      audit_log do
        audit_log_resource MyApp.Accounts.AuditLog
      end
    end
  end
end

Summary

Types

t()

@type t() :: %AshAuthentication.AddOn.AuditLog{
  __spark_metadata__: Spark.Dsl.Entity.spark_meta(),
  audit_log_resource: Ash.Resource.t(),
  exclude_actions: [atom()],
  exclude_strategies: [atom()],
  include_actions: [atom()],
  include_fields: [atom()],
  include_strategies: [atom()],
  ip_privacy_mode: :none | :hash | :truncate | :exclude,
  ipv4_truncation_mask: pos_integer(),
  ipv6_truncation_mask: pos_integer(),
  name: atom(),
  provider: :audit_log,
  resource: Ash.Resource.t()
}

Functions

transform(entity, dsl)

Callback implementation for AshAuthentication.Strategy.Custom.transform/2.

verify(strategy, dsl)

Callback implementation for AshAuthentication.Strategy.Custom.verify/2.