Как снять маску с пароля, маскированного командой маски Elytrons - PullRequest
0 голосов
/ 04 октября 2019

Я использую WildFly и храню пароли в моем standalone.xml. В последнее время я начал хранить наши пароли в хранилище учетных данных. Пароль, используемый для доступа к этому хранилищу учетных данных, маскируется с помощью команды маски Elytron.bat. У WildFly нет проблем с использованием этого маскированного пароля, но я также получаю доступ к хранилищам учетных данных программно, и здесь маскированный пароль, похоже, не работает.

Я пытался использовать класс MaskedPassword и PasswordFactory. Однако классу MaskedPassword нужна переменная с именем initialKeyMaterial, которую я не знаю.

Вот код, который я использую:

val passwordFactory = PasswordFactory.getInstance(MaskedPassword.ALGORITHM_MASKED_MD5_DES, new 
         WildFlyElytronPasswordProvider)

val rawPassword = MaskedPassword.createRaw(MaskedPassword.ALGORITHM_MASKED_MD5_DES, "keyMaterial".toCharArray, 25,
        "salt".toCharArray().map(_.toByte), "myPassword".toCharArray().map(_.toByte))

val unmaskedPassword = passwordFactory.translate(rawPassword)

1 Ответ

0 голосов
/ 17 октября 2019

Исходный ключевой материал по умолчанию установлен как «somearbitrarycrazystringthatesnotmatter». Вы должны быть в состоянии указать это и использовать MaskedPassword

...