在本地应用程序中指定 JAAS 配置文件
Specifying JAAS config file in a local application
这是背景故事:
我正在做一个类似数据库的项目。我正在尝试使用 Java 身份验证和授权服务 (JAAS) 创建登录系统。我正在尝试将本教程 (https://docs.oracle.com/javase/7/docs/technotes/guides/security/jaas/tutorials/GeneralAcnOnly.html#SampleAcnClass) 与我的项目合并。
我不知道如何在我的 java 项目中指定登录配置。到目前为止,指定登录配置的 2 种方式是:
- 在命令行上
- 在 Java 证券 属性 文件中
两者都不起作用,因为我必须提交项目,因此没有机会输入命令或修改我的评分者的证券 属性 文件。
有没有其他方法可以在我的项目中指定登录配置(即在 *.java 文件中)?
TLDR:如何在我的项目中指定登录配置(*.config 文件)(*.java 个文件)?
您可以通过java.lang.System.setProperty("java.security.auth.login.config", "=<your_config_resource_url>")
在运行时引用您自己的登录配置。请注意,该值的前导等号将阻止处理 java.security
文件的相应属性引用的任何其他配置。另请注意,该值为 URL,因此它不限于本地文件系统资源。
为了在运行时进行更精细的控制,您还可以通过 java.security.Security#setProperty
.
修改任何 java.security
属性
作为最后的手段,当需要完全不同的语法 and/or 处理能力时,您也可以安装自己的自定义 javax.security.auth.login.Configuration
,或者通过直接子 classing基础 class,或通过子classing javax.security.auth.login.ConfigurationSpi
和 wrapping/exposing 将其作为 java.security.Provider
.
传递给安全运行时
这是背景故事: 我正在做一个类似数据库的项目。我正在尝试使用 Java 身份验证和授权服务 (JAAS) 创建登录系统。我正在尝试将本教程 (https://docs.oracle.com/javase/7/docs/technotes/guides/security/jaas/tutorials/GeneralAcnOnly.html#SampleAcnClass) 与我的项目合并。
我不知道如何在我的 java 项目中指定登录配置。到目前为止,指定登录配置的 2 种方式是:
- 在命令行上
- 在 Java 证券 属性 文件中
两者都不起作用,因为我必须提交项目,因此没有机会输入命令或修改我的评分者的证券 属性 文件。
有没有其他方法可以在我的项目中指定登录配置(即在 *.java 文件中)?
TLDR:如何在我的项目中指定登录配置(*.config 文件)(*.java 个文件)?
您可以通过java.lang.System.setProperty("java.security.auth.login.config", "=<your_config_resource_url>")
在运行时引用您自己的登录配置。请注意,该值的前导等号将阻止处理 java.security
文件的相应属性引用的任何其他配置。另请注意,该值为 URL,因此它不限于本地文件系统资源。
为了在运行时进行更精细的控制,您还可以通过 java.security.Security#setProperty
.
java.security
属性
作为最后的手段,当需要完全不同的语法 and/or 处理能力时,您也可以安装自己的自定义 javax.security.auth.login.Configuration
,或者通过直接子 classing基础 class,或通过子classing javax.security.auth.login.ConfigurationSpi
和 wrapping/exposing 将其作为 java.security.Provider
.