| 1 17 18 package org.sape.carbon.services.security.auth.weblogic7; 19 20 import java.util.HashMap ; 21 import java.util.Map ; 22 23 import javax.security.auth.login.AppConfigurationEntry ; 24 import javax.security.auth.login.AppConfigurationEntry.LoginModuleControlFlag; 25 26 import org.sape.carbon.services.security.auth.jaas.JaasCarbonLoginModule; 27 28 import weblogic.management.security.ProviderMBean; 29 import weblogic.security.provider.PrincipalValidatorImpl; 30 import weblogic.security.spi.AuthenticationProvider; 31 import weblogic.security.spi.IdentityAsserter; 32 import weblogic.security.spi.PrincipalValidator; 33 import weblogic.security.spi.SecurityServices; 34 35 55 public class WeblogicCarbonAuthenticationProvider 56 implements AuthenticationProvider { 57 58 59 protected PrincipalValidator principalValidator; 60 61 67 protected LoginModuleControlFlag controlFlag; 68 69 70 protected String description; 71 72 76 protected String userManagerLocation; 77 78 79 89 public AppConfigurationEntry getLoginModuleConfiguration() { 90 Map options = new HashMap (); 91 92 options.put( 93 JaasCarbonLoginModule.USERMANAGER_COMPONENT_KEY, 94 userManagerLocation); 95 96 return new AppConfigurationEntry ( 97 WeblogicJaasCarbonLoginModule.class.getName(), controlFlag, 98 options); 99 } 100 101 106 public AppConfigurationEntry getAssertionModuleConfiguration() { 107 Map options = new HashMap (); 109 110 return null; 111 } 112 113 118 public PrincipalValidator getPrincipalValidator() { 119 return this.principalValidator; 120 } 121 122 127 public IdentityAsserter getIdentityAsserter() { 128 return null; 129 } 130 131 146 public void initialize( 147 ProviderMBean providerMBean, SecurityServices securityServices) { 148 this.principalValidator = new PrincipalValidatorImpl(); 149 150 WeblogicCarbonAuthenticatorMBean weblogicCarbonAuthenticatorMBean = 153 (WeblogicCarbonAuthenticatorMBean) providerMBean; 154 155 description = 158 weblogicCarbonAuthenticatorMBean.getDescription() + "\n" 159 + weblogicCarbonAuthenticatorMBean.getVersion(); 160 161 String flag = weblogicCarbonAuthenticatorMBean.getControlFlag(); 166 167 if (flag.equalsIgnoreCase("REQUIRED")) { 168 controlFlag = LoginModuleControlFlag.REQUIRED; 169 } else if (flag.equalsIgnoreCase("OPTIONAL")) { 170 controlFlag = LoginModuleControlFlag.OPTIONAL; 171 } else if (flag.equalsIgnoreCase("REQUISITE")) { 172 controlFlag = LoginModuleControlFlag.REQUISITE; 173 } else if (flag.equalsIgnoreCase("SUFFICIENT")) { 174 controlFlag = LoginModuleControlFlag.SUFFICIENT; 175 } else { 176 throw new IllegalArgumentException ( 177 "invalid flag value" + flag); 178 } 179 180 userManagerLocation = 181 weblogicCarbonAuthenticatorMBean.getUserManagerLocation(); 182 } 183 184 189 public String getDescription() { 190 return description; 191 } 192 193 196 public void shutdown() { 197 } 198 } 199 | Popular Tags |