use of org.apache.knox.gateway.services.security.impl.DefaultCryptoService in project knox by apache.
the class ShiroDeploymentContributorTest method testDeployment.
@Test
public void testDeployment() throws IOException {
WebArchive webArchive = ShrinkWrap.create(WebArchive.class, "test-archive");
Map<String, String> providerParams = new HashMap<>();
Provider provider = new Provider();
provider.setEnabled(true);
provider.setName("shiro");
provider.setParams(providerParams);
Topology topology = new Topology();
topology.setName("Sample");
DeploymentContext context = EasyMock.createNiceMock(DeploymentContext.class);
EasyMock.expect(context.getWebArchive()).andReturn(webArchive).anyTimes();
EasyMock.expect(context.getWebAppDescriptor()).andReturn(Descriptors.create(WebAppDescriptor.class)).anyTimes();
EasyMock.expect(context.getTopology()).andReturn(topology).anyTimes();
EasyMock.replay(context);
AliasService as = EasyMock.createNiceMock(AliasService.class);
CryptoService cryptoService = new DefaultCryptoService();
((DefaultCryptoService) cryptoService).setAliasService(as);
GatewayServices gatewayServices = EasyMock.createNiceMock(GatewayServices.class);
EasyMock.expect(gatewayServices.getService(GatewayServices.CRYPTO_SERVICE)).andReturn(cryptoService).anyTimes();
ShiroDeploymentContributor contributor = new ShiroDeploymentContributor();
assertThat(contributor.getRole(), is("authentication"));
assertThat(contributor.getName(), is("ShiroProvider"));
// Just make sure it doesn't blow up.
contributor.initializeContribution(context);
contributor.contributeProvider(context, provider);
// Just make sure it doesn't blow up.
contributor.finalizeContribution(context);
assertThat(context.getWebAppDescriptor().getOrCreateSessionConfig().getOrCreateCookieConfig().isHttpOnly(), is(true));
assertThat(context.getWebAppDescriptor().getOrCreateSessionConfig().getOrCreateCookieConfig().isSecure(), is(true));
}
use of org.apache.knox.gateway.services.security.impl.DefaultCryptoService in project knox by apache.
the class DefaultGatewayServices method init.
public void init(GatewayConfig config, Map<String, String> options) throws ServiceLifecycleException {
ms = new DefaultMasterService();
ms.init(config, options);
services.put("MasterService", ms);
ks = new DefaultKeystoreService();
ks.setMasterService(ms);
ks.init(config, options);
services.put(KEYSTORE_SERVICE, ks);
DefaultAliasService alias = new DefaultAliasService();
alias.setKeystoreService(ks);
alias.setMasterService(ms);
alias.init(config, options);
services.put(ALIAS_SERVICE, alias);
DefaultCryptoService crypto = new DefaultCryptoService();
crypto.setKeystoreService(ks);
crypto.setAliasService(alias);
crypto.init(config, options);
services.put(CRYPTO_SERVICE, crypto);
DefaultTokenAuthorityService ts = new DefaultTokenAuthorityService();
ts.setAliasService(alias);
ts.setKeystoreService(ks);
ts.init(config, options);
// prolly should not allow the token service to be looked up?
services.put(TOKEN_SERVICE, ts);
JettySSLService ssl = new JettySSLService();
ssl.setAliasService(alias);
ssl.setKeystoreService(ks);
ssl.setMasterService(ms);
ssl.init(config, options);
services.put(SSL_SERVICE, ssl);
DefaultServiceRegistryService sr = new DefaultServiceRegistryService();
sr.setCryptoService(crypto);
sr.init(config, options);
services.put(SERVICE_REGISTRY_SERVICE, sr);
DefaultHostMapperService hm = new DefaultHostMapperService();
hm.init(config, options);
services.put(HOST_MAPPING_SERVICE, hm);
DefaultServerInfoService sis = new DefaultServerInfoService();
sis.init(config, options);
services.put(SERVER_INFO_SERVICE, sis);
RemoteConfigurationRegistryClientService registryClientService = RemoteConfigurationRegistryClientServiceFactory.newInstance(config);
registryClientService.setAliasService(alias);
registryClientService.init(config, options);
services.put(REMOTE_REGISTRY_CLIENT_SERVICE, registryClientService);
DefaultClusterConfigurationMonitorService ccs = new DefaultClusterConfigurationMonitorService();
ccs.setAliasService(alias);
ccs.init(config, options);
services.put(CLUSTER_CONFIGURATION_MONITOR_SERVICE, ccs);
DefaultTopologyService tops = new DefaultTopologyService();
tops.setAliasService(alias);
tops.init(config, options);
services.put(TOPOLOGY_SERVICE, tops);
DefaultServiceDefinitionRegistry sdr = new DefaultServiceDefinitionRegistry();
sdr.init(config, options);
services.put(SERVICE_DEFINITION_REGISTRY, sdr);
DefaultMetricsService metricsService = new DefaultMetricsService();
metricsService.init(config, options);
services.put(METRICS_SERVICE, metricsService);
}
use of org.apache.knox.gateway.services.security.impl.DefaultCryptoService in project knox by apache.
the class CryptoServiceTest method setupSuite.
@BeforeClass
public static void setupSuite() throws Exception {
as = new AliasService() {
@Override
public void init(GatewayConfig config, Map<String, String> options) throws ServiceLifecycleException {
}
@Override
public void start() throws ServiceLifecycleException {
}
@Override
public void stop() throws ServiceLifecycleException {
}
@Override
public void addAliasForCluster(String clusterName, String alias, String value) {
}
@Override
public char[] getPasswordFromAliasForCluster(String clusterName, String alias) {
return "password".toCharArray();
}
@Override
public char[] getPasswordFromAliasForCluster(String clusterName, String alias, boolean generate) {
return null;
}
@Override
public void generateAliasForCluster(String clusterName, String alias) {
}
@Override
public char[] getPasswordFromAliasForGateway(String alias) {
// TODO Auto-generated method stub
return null;
}
@Override
public void generateAliasForGateway(String alias) {
// TODO Auto-generated method stub
}
@Override
public Certificate getCertificateForGateway(String alias) {
// TODO Auto-generated method stub
return null;
}
@Override
public void removeAliasForCluster(String clusterName, String alias) {
}
@Override
public List<String> getAliasesForCluster(String clusterName) {
// TODO Auto-generated method stub
return null;
}
@Override
public char[] getGatewayIdentityPassphrase() throws AliasServiceException {
// TODO Auto-generated method stub
return null;
}
};
cs = new DefaultCryptoService();
((DefaultCryptoService) cs).setAliasService(as);
}
Aggregations