Vous pouvez utiliser l'élément <quickStartSecurity>
pour activer rapidement une configuration de sécurité simple (un seul utilisateur) pour
Liberty.
Pourquoi et quand exécuter cette tâche
Vous pouvez configurer un serveur Liberty sécurisé et une application Web en effectuant quelques étapes de configuration de base. Les actions de configuration dans Liberty sont dynamiques, ce qui signifie que les mises à jour apportées à la configuration
prennent effet sans qu'il ne soit nécessaire de redémarrer le serveur.
Procédure
- Créez et démarrez votre serveur.
- Include the appSecurity-2.0 and servlet-3.0 features in the server.xml file.
The server.xml file
is in the server directory of myNewServer, for
example, wlp\usr\servers\myNewServer\server.xml.
<featureManager>
<feature>appSecurity-2.0</feature>
<feature>servlet-3.0</feature>
</featureManager>
- Définissez la combinaison nom d'utilisateur/mot de passe à laquelle vous
donnez le rôle Administrator pour les activités de gestion
du serveur.
<quickStartSecurity userName="Bob" userPassword="bobpwd" />
Remarque : Choose a user name and password that are meaningful to you.
Never use the name and password in the example for your applications.
- Configure the deployment descriptor with relevant security
constraints to protect web resource. For example, use <auth-constraint> and <role-name> elements to define a role that
can access web resource.
The following example
web.xml file shows that access to all the URIs in the
application is protected by the
testing role.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app id="myWebApp">
<!-- SERVLET DEFINITIONS -->
<servlet id="Default">
<servlet-name>myWebApp</servlet-name>
<servlet-class>com.web.app.MyWebAppServlet</servlet-class>
<load-on-startup/>
</servlet>
<!-- SERVLET MAPPINGS -->
<servlet-mapping id="ServletMapping_Default">
<servlet-name>myWebApp</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<!-- SECURITY ROLES -->
<security-role>
<role-name>testing</role-name>
</security-role>
<!-- SECURITY CONSTRAINTS -->
<security-constraint>
<web-resource-collection>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>testing</role-name>
</auth-constraint>
</security-constraint>
<!-- AUTHENTICATION METHOD: Basic authentication -->
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
</web-app>
- Configurez votre application dans le fichier server.xml.
Dans l'exemple suivant, l'utilisateur
Bob est mappé
au rôle
testing de l'application :
<application type="war" id="myWebApp" name="myWebApp"
location="${server.config.dir}/apps/myWebApp.war">
<application-bnd>
<security-role name="testing">
<user name="Bob" />
</security-role>
</application-bnd>
</application>
- Accédez à votre application et connectez-vous avec le nom d'utilisateur Bob. L'URL par défaut de l'application myWebApp est http://localhost:9080/myWebApp
Résultats
Votre application est à présent sécurisée.