Pumpkin-Docs/docs/en/config/authentication.md
Alexander Medvedev 091c33d073 update config
2026-09-05 09:40:41 +02:00

84 lines
3.6 KiB
Markdown

# Authentication
Pumpkin verifies accounts with Mojang's session servers to ensure players use legitimate accounts. Authentication settings are configured under `[networking.java.authentication]` and `[networking.bedrock.authentication]` in `pumpkin.toml`.
## Java Edition Authentication
:::code-group
```toml [pumpkin.toml]
[networking.java.authentication]
enabled = true
fallbacks = []
profile_by_name_fallbacks = []
profile_by_uuid_fallbacks = []
connect_timeout = 5000
read_timeout = 5000
prevent_proxy_connections = false
[networking.java.authentication.player_profile]
allow_banned_players = false
allowed_actions = ["FORCED_NAME_CHANGE", "USING_BANNED_SKIN"]
[networking.java.authentication.textures]
enabled = true
allowed_url_schemes = ["http", "https"]
allowed_url_domains = [".minecraft.net", ".mojang.com"]
[networking.java.authentication.textures.types]
skin = true
cape = true
elytra = true
```
:::
### Configuration Options
- **`enabled`**: Enables online authentication for Java clients (default: `true`).
- **`url`**: (Optional) Custom authentication URL to verify join requests (e.g., custom auth servers like Drasl). Supports `{username}` and `{server_hash}` parameters.
- **`fallbacks`**: List of fallback authentication URLs contacted if the primary/official session server is unreachable.
- **`profile_by_name_url`**: (Optional) Custom URL template to fetch player profiles by username (`{username}`).
- **`profile_by_name_fallbacks`**: Fallback URLs for looking up player profiles by username.
- **`profile_by_uuid_url`**: (Optional) Custom URL template to fetch player profiles by UUID (`{uuid}`).
- **`profile_by_uuid_fallbacks`**: Fallback URLs for looking up player profiles by UUID.
- **`connect_timeout`**: Connection timeout in milliseconds when contacting authentication servers (default: `5000`).
- **`read_timeout`**: Read timeout in milliseconds when contacting authentication servers (default: `5000`).
- **`prevent_proxy_connections`**: Whether to block connections coming from proxies or VPNs during Mojang authentication (default: `false`).
- **`prevent_proxy_connection_auth_url`**: (Optional) Custom authentication endpoint used specifically when proxy prevention is enabled.
- **`services_url`**: (Optional) Public Minecraft services URL (used for player certificates and keys).
### Player Profile Settings
- **`allow_banned_players`**: Whether to allow players flagged or banned by Mojang to connect (default: `false`).
- **`allowed_actions`**: Profile actions permitted when flagged players connect (e.g. `["FORCED_NAME_CHANGE", "USING_BANNED_SKIN"]`).
### Textures Settings
- **`enabled`**: Enables fetching and validating player skins, capes, and elytra textures (default: `true`).
- **`allowed_url_schemes`**: URL schemes permitted for texture downloads (default: `["http", "https"]`).
- **`allowed_url_domains`**: Domains permitted for texture downloads (default: `[".minecraft.net", ".mojang.com"]`).
- **`types.skin`**: Enable custom player skins (default: `true`).
- **`types.cape`**: Enable player capes (default: `true`).
- **`types.elytra`**: Enable player elytra textures (default: `true`).
## Bedrock Edition Authentication
:::code-group
```toml [pumpkin.toml]
[networking.bedrock.authentication]
enabled = true
connect_timeout = 5000
read_timeout = 5000
```
:::
### Configuration Options
- **`enabled`**: Whether Xbox Live authentication is required for Bedrock clients (default: `true`).
- **`url`**: (Optional) Custom authentication or discovery endpoint URL.
- **`connect_timeout`**: Connection timeout in milliseconds (default: `5000`).
- **`read_timeout`**: Read timeout in milliseconds (default: `5000`).