1
2
3
4
5
6
7
8
9
10
11 package org.mule.test.config;
12
13 import org.mule.api.EncryptionStrategy;
14 import org.mule.api.security.SecurityManager;
15 import org.mule.security.PasswordBasedEncryptionStrategy;
16 import org.mule.security.SecretKeyEncryptionStrategy;
17 import org.mule.tck.FunctionalTestCase;
18 import org.mule.tck.security.MockEncryptionStrategy;
19 import org.mule.tck.security.TestSingleUserSecurityProvider;
20
21 import java.util.Iterator;
22
23 public class SecurityNamespaceHandlerTestCase extends FunctionalTestCase
24 {
25
26 protected String getConfigResources()
27 {
28 return "security-namespace-config.xml";
29 }
30
31 public void testSecurity()
32 {
33 SecurityManager securityManager = muleContext.getSecurityManager();
34 assertNotNull(securityManager.getProvider("dummySecurityProvider"));
35 assertTrue(securityManager.getProvider("dummySecurityProvider") instanceof TestSingleUserSecurityProvider);
36 verifyEncryptionStrategy(securityManager, "dummyEncryptionStrategy", MockEncryptionStrategy.class);
37 verifyEncryptionStrategy(securityManager, "passwordEncryptionStrategy", PasswordBasedEncryptionStrategy.class);
38 verifyEncryptionStrategy(securityManager, "secretKeyEncryptionStrategy", SecretKeyEncryptionStrategy.class);
39 }
40
41 private void verifyEncryptionStrategy(SecurityManager securityManager, String name, Class clazz)
42 {
43 Iterator strategies = securityManager.getEncryptionStrategies().iterator();
44 logger.debug("Listing strategies");
45 while (strategies.hasNext())
46 {
47 EncryptionStrategy strategy = (EncryptionStrategy) strategies.next();
48 logger.debug(strategy.getName() + " / " + strategy.toString() + " / " + strategy.getClass());
49 }
50 assertNotNull(name, securityManager.getEncryptionStrategy(name));
51 assertTrue(securityManager.getEncryptionStrategy(name).getClass().equals(clazz));
52 }
53
54 }