LdapRealmForm.java

00001 /*
00002  * JOnAS: Java(TM) Open Application Server
00003  * Copyright (C) 1999 Bull S.A.
00004  * Contact: jonas-team@objectweb.org
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Lesser General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2.1 of the License, or any later version.
00010  *
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with this library; if not, write to the Free Software
00018  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
00019  * USA
00020  *
00021  * --------------------------------------------------------------------------
00022  * $Id: LdapRealmForm.java,v 1.6 2004/03/19 14:31:48 sauthieg Exp $
00023  * --------------------------------------------------------------------------
00024  */
00025 
00026 package org.objectweb.jonas.webapp.jonasadmin.security;
00027 
00028 import java.util.List;
00029 
00030 import javax.servlet.http.HttpServletRequest;
00031 
00032 import org.apache.struts.action.ActionError;
00033 import org.apache.struts.action.ActionErrors;
00034 import org.apache.struts.action.ActionMapping;
00035 import org.objectweb.jonas.webapp.jonasadmin.Jlists;
00036 
00040 public class LdapRealmForm extends FactoryRealmForm {
00041 
00042 // --------------------------------------------------------- Constants
00043 
00044 // --------------------------------------------------------- Properties variables
00045 
00046     private String authenticationMode = null;
00047     private String baseDn = null;
00048     private String initialContextFactory = null;
00049     private String language = null;
00050     private String providerUrl = null;
00051     private String referral = null;
00052     private String roleDn = null;
00053     private String roleNameAttribute = null;
00054     private String roleSearchFilter = null;
00055     private String securityAuthentication = null;
00056     private String securityCredentials = null;
00057     private String securityPrincipal = null;
00058     private String securityProtocol = null;
00059     private String stateFactories = null;
00060     private String userDn = null;
00061     private String userPasswordAttribute = null;
00062     private String userRolesAttribute = null;
00063     private String userSearchFilter = null;
00064     private String algorithm = null;
00065 
00066     private List securityAuthenticationLdapValues = Jlists.getSecurityAuthenticationLdapValues();
00067     private List authenticationModeLdapValues = Jlists.getAuthenticationModeLdapValues();
00068     private List securityAlgorithms = Jlists.getSecurityAlgorithms();
00069 
00070 // --------------------------------------------------------- Public Methods
00071 
00079     public void reset(ActionMapping mapping, HttpServletRequest request) {
00080         super.reset(mapping, request);
00081 
00082         authenticationMode = "bind";
00083         baseDn = null;
00084         initialContextFactory = "com.sun.jndi.ldap.LdapCtxFactory";
00085         language = null;
00086         providerUrl = "ldap://localhost:389";
00087         referral = null;
00088         roleDn = null;
00089         roleNameAttribute = "cn";
00090         roleSearchFilter = "uniqueMember={0}";
00091         securityAuthentication = "simple";
00092         securityCredentials = null;
00093         securityPrincipal = null;
00094         securityProtocol = null;
00095         stateFactories = null;
00096         userDn = null;
00097         userPasswordAttribute = "userPassword";
00098         userRolesAttribute = "memberOf";
00099         userSearchFilter = "uid={0}";
00100     }
00101 
00113     public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
00114         ActionErrors oErrors = new ActionErrors();
00115         if ((getName() == null) || (getName().length() == 0)) {
00116             oErrors.add("name", new ActionError("error.security.factory.ldap.realm.name.required"));
00117         }
00118         if ((baseDn == null) || (baseDn.length() == 0)) {
00119             oErrors.add("baseDn"
00120                 , new ActionError("error.security.factory.ldap.realm.baseDn.required"));
00121         }
00122         if ((initialContextFactory == null) || (initialContextFactory.length() == 0)) {
00123             oErrors.add("initialContextFactory"
00124                 , new ActionError("error.security.factory.ldap.realm.initialContextFactory.required"));
00125             initialContextFactory = "com.sun.jndi.ldap.LdapCtxFactory";
00126         }
00127         if ((providerUrl == null) || (providerUrl.length() == 0)) {
00128             oErrors.add("providerUrl"
00129                 , new ActionError("error.security.factory.ldap.realm.providerUrl.required"));
00130             providerUrl = "ldap://localhost:389";
00131         }
00132         if ((roleNameAttribute == null) || (roleNameAttribute.length() == 0)) {
00133             oErrors.add("roleNameAttribute"
00134                 , new ActionError("error.security.factory.ldap.realm.roleNameAttribute.required"));
00135             roleNameAttribute = "cn";
00136         }
00137         if ((roleSearchFilter == null) || (roleSearchFilter.length() == 0)) {
00138             oErrors.add("roleSearchFilter"
00139                 , new ActionError("error.security.factory.ldap.realm.roleSearchFilter.required"));
00140             roleSearchFilter = "uniqueMember={0}";
00141         }
00142         if ((userPasswordAttribute == null) || (userPasswordAttribute.length() == 0)) {
00143             oErrors.add("userPasswordAttribute"
00144                 , new ActionError("error.security.factory.ldap.realm.userPasswordAttribute.required"));
00145             userPasswordAttribute = "userPassword";
00146         }
00147         if ((userRolesAttribute == null) || (userRolesAttribute.length() == 0)) {
00148             oErrors.add("userRolesAttribute"
00149                 , new ActionError("error.security.factory.ldap.realm.userRolesAttribute.required"));
00150             userRolesAttribute = "memberOf";
00151         }
00152         if ((userSearchFilter == null) || (userSearchFilter.length() == 0)) {
00153             oErrors.add("userSearchFilter"
00154                 , new ActionError("error.security.factory.ldap.realm.userSearchFilter.required"));
00155             userSearchFilter = "uid={0}";
00156         }
00157         return oErrors;
00158     }
00159 
00160 // --------------------------------------------------------- Properties Methods
00161 
00162     public String getAuthenticationMode() {
00163         return authenticationMode;
00164     }
00165 
00166     public void setAuthenticationMode(String authenticationMode) {
00167         this.authenticationMode = authenticationMode;
00168     }
00169 
00170     public String getBaseDn() {
00171         return baseDn;
00172     }
00173 
00174     public void setBaseDn(String baseDn) {
00175         this.baseDn = baseDn;
00176     }
00177 
00178     public String getInitialContextFactory() {
00179         return initialContextFactory;
00180     }
00181 
00182     public void setInitialContextFactory(String initialContextFactory) {
00183         this.initialContextFactory = initialContextFactory;
00184     }
00185 
00186     public String getLanguage() {
00187         return language;
00188     }
00189 
00190     public void setLanguage(String language) {
00191         this.language = language;
00192     }
00193 
00194     public String getProviderUrl() {
00195         return providerUrl;
00196     }
00197 
00198     public void setProviderUrl(String providerUrl) {
00199         this.providerUrl = providerUrl;
00200     }
00201 
00202     public String getReferral() {
00203         return referral;
00204     }
00205 
00206     public void setReferral(String referral) {
00207         this.referral = referral;
00208     }
00209 
00210     public String getRoleDn() {
00211         return roleDn;
00212     }
00213 
00214     public void setRoleDn(String roleDn) {
00215         this.roleDn = roleDn;
00216     }
00217 
00218     public String getRoleNameAttribute() {
00219         return roleNameAttribute;
00220     }
00221 
00222     public void setRoleNameAttribute(String roleNameAttribute) {
00223         this.roleNameAttribute = roleNameAttribute;
00224     }
00225 
00226     public String getRoleSearchFilter() {
00227         return roleSearchFilter;
00228     }
00229 
00230     public void setRoleSearchFilter(String roleSearchFilter) {
00231         this.roleSearchFilter = roleSearchFilter;
00232     }
00233 
00234     public String getSecurityAuthentication() {
00235         return securityAuthentication;
00236     }
00237 
00238     public void setSecurityAuthentication(String securityAuthentication) {
00239         this.securityAuthentication = securityAuthentication;
00240     }
00241 
00242     public String getSecurityCredentials() {
00243         return securityCredentials;
00244     }
00245 
00246     public void setSecurityCredentials(String securityCredentials) {
00247         this.securityCredentials = securityCredentials;
00248     }
00249 
00250     public String getSecurityPrincipal() {
00251         return securityPrincipal;
00252     }
00253 
00254     public void setSecurityPrincipal(String securityPrincipal) {
00255         this.securityPrincipal = securityPrincipal;
00256     }
00257 
00258     public String getSecurityProtocol() {
00259         return securityProtocol;
00260     }
00261 
00262     public void setSecurityProtocol(String securityProtocol) {
00263         this.securityProtocol = securityProtocol;
00264     }
00265 
00266     public String getStateFactories() {
00267         return stateFactories;
00268     }
00269 
00270     public void setStateFactories(String stateFactories) {
00271         this.stateFactories = stateFactories;
00272     }
00273 
00274     public String getUserDn() {
00275         return userDn;
00276     }
00277 
00278     public void setUserDn(String userDn) {
00279         this.userDn = userDn;
00280     }
00281 
00282     public String getUserPasswordAttribute() {
00283         return userPasswordAttribute;
00284     }
00285 
00286     public void setUserPasswordAttribute(String userPasswordAttribute) {
00287         this.userPasswordAttribute = userPasswordAttribute;
00288     }
00289 
00290     public String getUserRolesAttribute() {
00291         return userRolesAttribute;
00292     }
00293 
00294     public void setUserRolesAttribute(String userRolesAttribute) {
00295         this.userRolesAttribute = userRolesAttribute;
00296     }
00297 
00298     public String getUserSearchFilter() {
00299         return userSearchFilter;
00300     }
00301 
00302     public void setUserSearchFilter(String userSearchFilter) {
00303         this.userSearchFilter = userSearchFilter;
00304     }
00305 
00306     public List getSecurityAuthenticationLdapValues() {
00307         return securityAuthenticationLdapValues;
00308     }
00309 
00310     public List getAuthenticationModeLdapValues() {
00311         return authenticationModeLdapValues;
00312     }
00313 
00314     public String getAlgorithm() {
00315         return algorithm;
00316     }
00317 
00318     public void setAlgorithm(String algorithm) {
00319         this.algorithm = algorithm;
00320     }
00321 
00322     public List getSecurityAlgorithms() {
00323         return securityAlgorithms;
00324     }
00325 
00326 }

Generated on Tue Feb 15 15:05:30 2005 for JOnAS by  doxygen 1.3.9.1