- Rename AshAuthentication strategy from :oidc :rauthy to :oidc :oidc; generated actions are now register_with_oidc / sign_in_with_oidc. - Update config keys (:rauthy → :oidc) in dev.exs and runtime.exs. - Update default_redirect_uri to /auth/user/oidc/callback everywhere. - Rename Mv.Accounts helper functions accordingly. - Update Mv.Secrets, AuthController, link_oidc_account_live and all tests. - Update docker-compose.prod.yml, .env.example, README and docs. IMPORTANT: OIDC providers must be updated to use the new redirect URI /auth/user/oidc/callback instead of /auth/user/rauthy/callback.
33 lines
985 B
Elixir
33 lines
985 B
Elixir
defmodule Mv.Accounts do
|
|
@moduledoc """
|
|
AshAuthentication specific domain to handle Authentication for users.
|
|
|
|
## Resources
|
|
- `User` - User accounts with authentication methods (password, OIDC)
|
|
- `Token` - Session tokens for authentication
|
|
|
|
## Public API
|
|
The domain exposes these main actions:
|
|
- User CRUD: `create_user/1`, `list_users/0`, `update_user/2`, `destroy_user/1`
|
|
- Authentication: `create_register_with_oidc/1`, `read_sign_in_with_oidc/1`
|
|
"""
|
|
use Ash.Domain,
|
|
extensions: [AshAdmin.Domain, AshPhoenix]
|
|
|
|
admin do
|
|
show? true
|
|
end
|
|
|
|
resources do
|
|
resource Mv.Accounts.User do
|
|
define :create_user, action: :create_user
|
|
define :list_users, action: :read
|
|
define :update_user, action: :update_user
|
|
define :destroy_user, action: :destroy
|
|
define :create_register_with_oidc, action: :register_with_oidc
|
|
define :read_sign_in_with_oidc, action: :sign_in_with_oidc
|
|
end
|
|
|
|
resource Mv.Accounts.Token
|
|
end
|
|
end
|