▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/DevAuth Neo
DevAuth Neo

DevAuth Neo

Authenticate Minecraft accounts in development environments

64
0

Authenticate Minecraft accounts in development environments.

This is a "reincarnation" of DevAuth but improved, updated and available directly as a Fabric mod.

Usage

Adding the mod

via Maven Central (default)

Add the following to build.gradle:

dependencies {
    modLocalRuntime 'net.litetex.mcm:dev-auth-neo:<version>'
    // Further documentation: https://wiki.fabricmc.net/documentation:fabric_loom
}
via Modrinth

Add the following to build.gradle:

repositories {
    // https://support.modrinth.com/en/articles/8801191-modrinth-maven
    exclusiveContent {
        forRepository {
            maven {
                name = "Modrinth"
                url = "https://api.modrinth.com/maven"
            }
        }
        filter {
            includeGroup 'maven.modrinth'
        }
    }
}

dependencies {
    modLocalRuntime 'maven.modrinth:dev-auth-neo:<version>'
    // Further documentation: https://wiki.fabricmc.net/documentation:fabric_loom
}

Quickstart

IMPORTANT: DevAuth is disabled by default, in order to be unobtrusive.
The simplest way to enable it is by setting the corresponding system property: -Ddevauth.enabled=1

  • When launching for the first time you will be prompted to enter your credentials
    • You will also get hints on what to do in the console/logs when required
  • After the authentication was successful the generated tokens will be stored in microsoft_accounts.json
    • Future logins will try to reuse these tokens
  • The tokens are then delegated to the game and it starts as usual

Configuration

The configuration is dynamically loaded from (sorted by highest priority)
  • Environment variables
    • prefixed with DEVAUTH_
    • all properties are in UPPERCASE and use _ instead of . or -
  • System properties
    • prefixed with devauth.
  • A configuration file located in ~/.dev-auth-neo/config.json
Full list of configuration options

General

PropertyTypeDefaultNotes
enabledboolfalse
accountString-If not set:
Will be prompted via the console
account-typeStringmicrosoftCurrently only Microsoft is supported
force-handle-all-tokens-as-expiredboolfalseHandles all existing tokens as if they have expired and refreshes them
state-dirStringAutomatically determined
~/.dev-auth-neo)
The directory where the login information of the provider will be saved
cache-profile-info-minutesint360
6h
How long should fetched profile information(uuid and name) be cached?

Microsoft Grant-Flow options

NOTE: All grant-flow options are additionally prefixed with microsoft.oauth2.
For example predefined-provider must therefore be defined as devauth.microsoft.oauth2.predefined-provider

PropertyTypeDefaultNotes
grant-flowStringauth-code-embeddedSee bellow for available flows
client-idStringautomatically determinedDesigned as general purpose override for e.g. a custom provider
scopesList<String>automatically determined

auth-code-embedded Auth Code flow using an embedded browser

  • This login mechanism is identical to the one used by Minecraft's launcher
    • Therefore selected by default
  • This workflow downloads and installs a Chromium browser using CEF (Chromium Embedded Framework)
    • The download is around 150MB
    • It's installed by default into ~/.dev-auth-neo/jcef
PropertyTypeDefaultNotes
use-temporary-cache-dirbooltrueCreates and uses a temporary directory for the browser cache.
If this is set to false all browser information (cookies, cache) and also possible logins will be persisted!
redirect-uriStringautomatically determinedDesigned as general purpose override for e.g. a custom provider

auth-code-external Auth Code flow using an external browser

  • Same as auth-code-embedded however this can be done with the system browser
  • Starts an integrated webserver to get the tokens at the end of the flow
  • ⚠ This flow depends on 3rd party clients / launchers
    • These clients are totally dependent on Mojangs explicit approval and can - although unlikely to happen - be blocked at any time for any reason by them
    • The 3rd party can change or delete their client without warning
    • The 3rd party might be able to see your login activity
    • Available 3rd parties:
PropertyTypeDefaultNotes
predefined-providerStringdevauth
open-system-browserbooltrueShould the system browser be automatically opened with the sign in page?
redirect-portintautomatically determinedPort used for the integrated webserver
redirect-uriStringautomatically determinedDesigned as general purpose override for e.g. a custom provider

device-code Device Code flow

  • This flow generates a short code that needs to be verified online with the an account
  • ⚠ This flow depends on 3rd party clients / launchers
    • These clients are totally dependent on Mojangs explicit approval and can - although unlikely to happen - be blocked at any time for any reason by them
    • The 3rd party can change or delete their client without warning
    • The 3rd party might be able to see your login activity
    • Available 3rd parties:
PropertyTypeDefaultNotes
predefined-providerStringmultimc

FAQ

How do I delete the login information?

Delete %USERPROFILE%\.dev-auth-neo (Windows) or ~/.dev-auth-neo (Linux)

I want to switch to another account

What's the easiest way to do this?

Set -Ddevauth.account=otherAccountName

Security?

The tokens are stored in a file on the disk in above specified folder. As with all data on your PC, you as a user are responsible for keeping them secure.

You can revoke tokens in the Microsoft account settings.

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Клиент

Создатели

Детали

Лицензия:LGPL-3.0-or-later
Опубликован:2 месяца назад
Обновлён:3 дня назад
Главная