# `AshAuthentication.Supervisor`
[🔗](https://github.com/team-alembic/ash_authentication/blob/main/lib/ash_authentication/supervisor.ex#L5)

Starts and manages any processes required by AshAuthentication.

Add to your application supervisor:

## Example

```elixir
defmodule MyApp.Application do
  use Application

  def start(_type, _args) do
    children = [
      {AshAuthentication.Supervisor, otp_app: :my_app}
    ]

    Supervisor.start_link(children, strategy: :one_for_one, name: MyApp.Supervisor)
  end
end
```

The supervisor also checks configuration which cannot be checked when the
resources compile. It refuses to start when a resource uses the audit log
add-on with `ip_privacy_mode :hash` and no IP salt is configured. See
`AshAuthentication.AddOn.AuditLog.IpPrivacy`.

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
