Указание файла конфигурации JAAS в локальном приложении - PullRequest
0 голосов
/ 27 сентября 2018

Вот предыстория: я делаю проект на базе данных.Я пытаюсь использовать службу аутентификации и авторизации Java (JAAS) для создания системы входа в систему.Я пытаюсь объединить этот учебник (https://docs.oracle.com/javase/7/docs/technotes/guides/security/jaas/tutorials/GeneralAcnOnly.html#SampleAcnClass) с моим проектом.

Я не могу понять, как указать конфигурацию входа в систему непосредственно в моем проекте java. До сих пор 2 способа указания конфигурации входа::

  1. в командной строке
  2. внутри файла свойств ценных бумаг Java

Оба из них не будут работать, так как я должен представить проект и, следовательно,У меня не будет возможности ввести команду или изменить файл свойств ценных бумаг моего грейдера.

Есть ли другой способ указать конфигурацию входа в свой проект (например, в *. java файл)?

TLDR: как мне указать конфигурацию входа (файлы *. Config ) в моем проекте (*. Java файлы)?

1 Ответ

0 голосов
/ 30 сентября 2018

Вы можете ссылаться на собственную конфигурацию входа в систему во время выполнения через java.lang.System.setProperty("java.security.auth.login.config", "=<your_config_resource_url>").Обратите внимание, что начальный знак равенства значения будет препятствовать обработке любых других настроек, на которые ссылаются соответствующие свойства файла java.security.Также обратите внимание, что значение является URL-адресом, поэтому оно не ограничивается ресурсами локальной файловой системы.

Для более детального управления во время выполнения вы также можете изменить любое свойство java.security через java.security.Security#setProperty.

* 1008.* В крайнем случае, когда вам нужен радикально другой синтаксис и / или возможности обработки, вы также можете установить свой собственный javax.security.auth.login.Configuration, либо непосредственно подклассифицируя базовый класс, либо создав подкласс javax.security.auth.login.ConfigurationSpi и упаковывая / выставляяэто к среде выполнения безопасности как java.security.Provider.
...