List of usage examples for org.springframework.web.servlet.view InternalResourceView InternalResourceView
public InternalResourceView(String url, boolean alwaysInclude)
From source file:com.oscgc.security.saml.idp.web.contoller.MetadataController.java
@RequestMapping public ModelAndView metadataList() throws MetadataProviderException { ModelAndView model = new ModelAndView(new InternalResourceView("/WEB-INF/security/metadataList.jsp", true)); model.addObject("hostedSP", metadataManager.getHostedSPName()); model.addObject("spList", metadataManager.getSPEntityNames()); model.addObject("idpList", metadataManager.getIDPEntityNames()); model.addObject("metadata", metadataManager.getAvailableProviders()); return model; }
From source file:com.saint.spring.saml.web.MetadataController.java
@RequestMapping(value = "/login") public ModelAndView adminLogin() { ModelAndView model = new ModelAndView(new InternalResourceView("/WEB-INF/security/adminLogin.jsp", true)); return model; }
From source file:com.oscgc.security.saml.idp.web.contoller.MetadataController.java
@RequestMapping(value = "/provider") public ModelAndView displayProvider(@RequestParam("providerIndex") int providerIndex) { ModelAndView model = new ModelAndView(new InternalResourceView("/WEB-INF/security/providerView.jsp", true)); ExtendedMetadataDelegate delegate = metadataManager.getAvailableProviders().get(providerIndex); model.addObject("provider", delegate); model.addObject("providerIndex", providerIndex); return model; }
From source file:com.oscgc.security.saml.idp.web.contoller.MetadataController.java
@RequestMapping(value = "/generate") public ModelAndView generateMetadata(HttpServletRequest request) throws KeyStoreException { ModelAndView model = new ModelAndView( new InternalResourceView("/WEB-INF/security/metadataGenerator.jsp", true)); MetadataForm defaultForm = new MetadataForm(); model.addObject("availableKeys", getAvailablePrivateKeys()); defaultForm.setBaseURL(getBaseURL(request)); defaultForm.setEntityId(getEntityId(request)); defaultForm.setAlias(getEntityId(request)); defaultForm.setNameID(//from w ww . j a v a 2 s .com MetadataGenerator.defaultNameID.toArray(new String[MetadataGenerator.defaultNameID.size()])); // TODO array vs collection model.addObject("metadata", defaultForm); return model; }
From source file:com.saint.spring.saml.web.MetadataController.java
@RequestMapping(value = "/generate") public ModelAndView generateMetadata(HttpServletRequest request) throws KeyStoreException { ModelAndView model = new ModelAndView( new InternalResourceView("/WEB-INF/security/metadataGenerator.jsp", true)); MetadataForm defaultForm = new MetadataForm(); model.addObject("availableKeys", getAvailablePrivateKeys()); defaultForm.setBaseURL(getBaseURL(request)); defaultForm.setEntityId(getEntityId(request)); defaultForm.setNameID(/*from w ww.j ava 2s . c o m*/ MetadataGenerator.defaultNameID.toArray(new String[MetadataGenerator.defaultNameID.size()])); model.addObject("metadata", defaultForm); return model; }
From source file:com.oscgc.security.saml.idp.web.contoller.MetadataController.java
@RequestMapping(value = "/create") public ModelAndView createMetadata(@ModelAttribute("metadata") MetadataForm metadata, BindingResult bindingResult) throws MetadataProviderException, MarshallingException, KeyStoreException { new MetadataValidator(metadataManager).validate(metadata, bindingResult); if (bindingResult.hasErrors()) { ModelAndView modelAndView = new ModelAndView( new InternalResourceView("/WEB-INF/security/metadataGenerator.jsp", true)); modelAndView.addObject("availableKeys", getAvailablePrivateKeys()); return modelAndView; }//w w w .j a va 2s . co m MetadataGenerator generator = new MetadataGenerator(); generator.setKeyManager(keyManager); generator.setEntityId(metadata.getEntityId()); generator.setEntityAlias(metadata.getAlias()); generator.setEntityBaseURL(metadata.getBaseURL()); generator.setSignMetadata(metadata.isSignMetadata()); generator.setRequestSigned(metadata.isRequestSigned()); generator.setWantAssertionSigned(metadata.isWantAssertionSigned()); generator.setSigningKey(metadata.getSigningKey()); generator.setEncryptionKey(metadata.getEncryptionKey()); if (metadata.getTlsKey() != null && metadata.getTlsKey().length() > 0) { generator.setTlsKey(metadata.getTlsKey()); } Collection<String> bindingsSSO = new LinkedList<String>(); Collection<String> bindingsHoKSSO = new LinkedList<String>(); String defaultBinding = metadata.getSsoDefaultBinding(); int assertionConsumerIndex = 0; for (String binding : metadata.getSsoBindings()) { // Set default binding if (binding.equalsIgnoreCase(defaultBinding)) { assertionConsumerIndex = bindingsSSO.size() + bindingsHoKSSO.size(); } // Set included bindings if (AllowedSSOBindings.SSO_POST.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_POST_BINDING_URI); } else if (AllowedSSOBindings.SSO_ARTIFACT.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_ARTIFACT_BINDING_URI); } else if (AllowedSSOBindings.SSO_PAOS.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_PAOS_BINDING_URI); } else if (AllowedSSOBindings.HOKSSO_POST.toString().equalsIgnoreCase(binding)) { bindingsHoKSSO.add(SAMLConstants.SAML2_POST_BINDING_URI); } else if (AllowedSSOBindings.HOKSSO_ARTIFACT.toString().equalsIgnoreCase(binding)) { bindingsHoKSSO.add(SAMLConstants.SAML2_ARTIFACT_BINDING_URI); } } // Set bindings generator.setBindingsSSO(bindingsSSO); generator.setBindingsHoKSSO(bindingsHoKSSO); generator.setAssertionConsumerIndex(assertionConsumerIndex); // Discovery if (metadata.isIncludeDiscovery()) { generator.setIncludeDiscovery(true); generator.setIncludeDiscoveryExtension(metadata.isIncludeDiscoveryExtension()); if (metadata.getCustomDiscoveryURL() != null && metadata.getCustomDiscoveryURL().length() > 0) { generator.setCustomDiscoveryURL(metadata.getCustomDiscoveryURL()); } if (metadata.getCustomDiscoveryResponseURL() != null && metadata.getCustomDiscoveryResponseURL().length() > 0) { generator.setCustomDiscoveryResponseURL(metadata.getCustomDiscoveryResponseURL()); } } else { generator.setIncludeDiscovery(false); generator.setIncludeDiscoveryExtension(false); } generator.setNameID(Arrays.asList(metadata.getNameID())); EntityDescriptor descriptor = generator.generateMetadata(); ExtendedMetadata extendedMetadata = generator.generateExtendedMetadata(); extendedMetadata.setSecurityProfile(metadata.getSecurityProfile()); extendedMetadata.setSslSecurityProfile(metadata.getSslSecurityProfile()); extendedMetadata.setRequireLogoutRequestSigned(metadata.isRequireLogoutRequestSigned()); extendedMetadata.setRequireLogoutResponseSigned(metadata.isRequireLogoutResponseSigned()); extendedMetadata.setRequireArtifactResolveSigned(metadata.isRequireArtifactResolveSigned()); if (metadata.isStore()) { MetadataMemoryProvider memoryProvider = new MetadataMemoryProvider(descriptor); memoryProvider.initialize(); MetadataProvider metadataProvider = new ExtendedMetadataDelegate(memoryProvider, extendedMetadata); metadataManager.addMetadataProvider(metadataProvider); metadataManager.setHostedSPName(descriptor.getEntityID()); metadataManager.setRefreshRequired(true); metadataManager.refreshMetadata(); } return displayMetadata(descriptor, extendedMetadata); }
From source file:com.saint.spring.saml.web.MetadataController.java
@RequestMapping(value = "/create") public ModelAndView createMetadata(@ModelAttribute("metadata") MetadataForm metadata, BindingResult bindingResult) throws MetadataProviderException, MarshallingException, KeyStoreException { new MetadataValidator(metadataManager).validate(metadata, bindingResult); if (bindingResult.hasErrors()) { ModelAndView modelAndView = new ModelAndView( new InternalResourceView("/WEB-INF/security/metadataGenerator.jsp", true)); modelAndView.addObject("availableKeys", getAvailablePrivateKeys()); return modelAndView; }/* www . jav a2 s . c o m*/ ExtendedMetadata extendedMetadata = new ExtendedMetadata(); MetadataGenerator generator = new MetadataGenerator(); generator.setKeyManager(keyManager); generator.setExtendedMetadata(extendedMetadata); // Basic metadata properties generator.setEntityId(metadata.getEntityId()); generator.setEntityBaseURL(metadata.getBaseURL()); generator.setRequestSigned(metadata.isRequestSigned()); generator.setWantAssertionSigned(metadata.isWantAssertionSigned()); Collection<String> bindingsSSO = new LinkedList<String>(); Collection<String> bindingsHoKSSO = new LinkedList<String>(); String defaultBinding = metadata.getSsoDefaultBinding(); int assertionConsumerIndex = 0; // Set default and included bindings for (String binding : metadata.getSsoBindings()) { if (binding.equalsIgnoreCase(defaultBinding)) { assertionConsumerIndex = bindingsSSO.size() + bindingsHoKSSO.size(); } if (AllowedSSOBindings.SSO_POST.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_POST_BINDING_URI); } else if (AllowedSSOBindings.SSO_ARTIFACT.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_ARTIFACT_BINDING_URI); } else if (AllowedSSOBindings.SSO_PAOS.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_PAOS_BINDING_URI); } else if (AllowedSSOBindings.HOKSSO_POST.toString().equalsIgnoreCase(binding)) { bindingsHoKSSO.add(SAMLConstants.SAML2_POST_BINDING_URI); } else if (AllowedSSOBindings.HOKSSO_ARTIFACT.toString().equalsIgnoreCase(binding)) { bindingsHoKSSO.add(SAMLConstants.SAML2_ARTIFACT_BINDING_URI); } } // Set bindings generator.setBindingsSSO(bindingsSSO); generator.setBindingsHoKSSO(bindingsHoKSSO); generator.setAssertionConsumerIndex(assertionConsumerIndex); // Name IDs generator.setNameID(Arrays.asList(metadata.getNameID())); // Keys extendedMetadata.setSigningKey(metadata.getSigningKey()); extendedMetadata.setEncryptionKey(metadata.getEncryptionKey()); if (hasLength(metadata.getTlsKey())) { extendedMetadata.setTlsKey(metadata.getTlsKey()); } // Discovery if (metadata.isIncludeDiscovery()) { extendedMetadata.setIdpDiscoveryEnabled(true); generator.setIncludeDiscoveryExtension(metadata.isIncludeDiscoveryExtension()); if (metadata.getCustomDiscoveryURL() != null && metadata.getCustomDiscoveryURL().length() > 0) { extendedMetadata.setIdpDiscoveryURL(metadata.getCustomDiscoveryURL()); } if (metadata.getCustomDiscoveryResponseURL() != null && metadata.getCustomDiscoveryResponseURL().length() > 0) { extendedMetadata.setIdpDiscoveryResponseURL(metadata.getCustomDiscoveryResponseURL()); } } else { extendedMetadata.setIdpDiscoveryEnabled(false); generator.setIncludeDiscoveryExtension(false); } // Alias if (hasLength(metadata.getAlias())) { extendedMetadata.setAlias(metadata.getAlias()); } // Security settings extendedMetadata.setSecurityProfile(metadata.getSecurityProfile()); extendedMetadata.setSslSecurityProfile(metadata.getSslSecurityProfile()); extendedMetadata.setRequireLogoutRequestSigned(metadata.isRequireLogoutRequestSigned()); extendedMetadata.setRequireLogoutResponseSigned(metadata.isRequireLogoutResponseSigned()); extendedMetadata.setRequireArtifactResolveSigned(metadata.isRequireArtifactResolveSigned()); extendedMetadata.setSslHostnameVerification(metadata.getSslHostnameVerification()); // Metadata signing extendedMetadata.setSignMetadata(metadata.isSignMetadata()); if (hasLength(metadata.getSigningAlgorithm())) { extendedMetadata.setSigningAlgorithm(metadata.getSigningAlgorithm()); } // Generate values EntityDescriptor generatedDescriptor = generator.generateMetadata(); ExtendedMetadata generatedExtendedMetadata = generator.generateExtendedMetadata(); if (metadata.isStore()) { MetadataMemoryProvider memoryProvider = new MetadataMemoryProvider(generatedDescriptor); memoryProvider.initialize(); MetadataProvider metadataProvider = new ExtendedMetadataDelegate(memoryProvider, generatedExtendedMetadata); metadataManager.addMetadataProvider(metadataProvider); metadataManager.setHostedSPName(generatedDescriptor.getEntityID()); metadataManager.setRefreshRequired(true); metadataManager.refreshMetadata(); } return displayMetadata(generatedDescriptor, generatedExtendedMetadata); }
From source file:org.samlsample.MetadataController.java
@RequestMapping(value = "/create") public ModelAndView createMetadata(@ModelAttribute("metadata") MetadataForm metadata, BindingResult bindingResult) throws MetadataProviderException, MarshallingException, KeyStoreException { new MetadataValidator(metadataManager).validate(metadata, bindingResult); if (bindingResult != null && bindingResult.hasErrors()) { ModelAndView modelAndView = new ModelAndView( new InternalResourceView("/WEB-INF/security/metadataGenerator.jsp", true)); modelAndView.addObject("availableKeys", getAvailablePrivateKeys()); return modelAndView; }/* w ww . ja v a2 s. co m*/ ExtendedMetadata extendedMetadata = new ExtendedMetadata(); MetadataGenerator generator = new MetadataGenerator(); generator.setKeyManager(keyManager); generator.setExtendedMetadata(extendedMetadata); // Basic metadata properties generator.setEntityId(metadata.getEntityId()); generator.setEntityBaseURL(metadata.getBaseURL()); generator.setRequestSigned(metadata.isRequestSigned()); generator.setWantAssertionSigned(metadata.isWantAssertionSigned()); Collection<String> bindingsSSO = new LinkedList<String>(); Collection<String> bindingsHoKSSO = new LinkedList<String>(); String defaultBinding = metadata.getSsoDefaultBinding(); int assertionConsumerIndex = 0; // Set default and included bindings for (String binding : metadata.getSsoBindings()) { if (binding.equalsIgnoreCase(defaultBinding)) { assertionConsumerIndex = bindingsSSO.size() + bindingsHoKSSO.size(); } if (AllowedSSOBindings.SSO_POST.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_POST_BINDING_URI); } else if (AllowedSSOBindings.SSO_ARTIFACT.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_ARTIFACT_BINDING_URI); } else if (AllowedSSOBindings.SSO_PAOS.toString().equalsIgnoreCase(binding)) { bindingsSSO.add(SAMLConstants.SAML2_PAOS_BINDING_URI); } else if (AllowedSSOBindings.HOKSSO_POST.toString().equalsIgnoreCase(binding)) { bindingsHoKSSO.add(SAMLConstants.SAML2_POST_BINDING_URI); } else if (AllowedSSOBindings.HOKSSO_ARTIFACT.toString().equalsIgnoreCase(binding)) { bindingsHoKSSO.add(SAMLConstants.SAML2_ARTIFACT_BINDING_URI); } } // Set bindings generator.setBindingsSSO(bindingsSSO); generator.setBindingsHoKSSO(bindingsHoKSSO); generator.setAssertionConsumerIndex(assertionConsumerIndex); // Name IDs generator.setNameID(Arrays.asList(metadata.getNameID())); // Keys extendedMetadata.setSigningKey(metadata.getSigningKey()); extendedMetadata.setEncryptionKey(metadata.getEncryptionKey()); if (hasLength(metadata.getTlsKey())) { extendedMetadata.setTlsKey(metadata.getTlsKey()); } // Discovery if (metadata.isIncludeDiscovery()) { extendedMetadata.setIdpDiscoveryEnabled(true); generator.setIncludeDiscoveryExtension(metadata.isIncludeDiscoveryExtension()); if (metadata.getCustomDiscoveryURL() != null && metadata.getCustomDiscoveryURL().length() > 0) { extendedMetadata.setIdpDiscoveryURL(metadata.getCustomDiscoveryURL()); } if (metadata.getCustomDiscoveryResponseURL() != null && metadata.getCustomDiscoveryResponseURL().length() > 0) { extendedMetadata.setIdpDiscoveryResponseURL(metadata.getCustomDiscoveryResponseURL()); } } else { extendedMetadata.setIdpDiscoveryEnabled(false); generator.setIncludeDiscoveryExtension(false); } // Alias if (hasLength(metadata.getAlias())) { extendedMetadata.setAlias(metadata.getAlias()); } // Security settings extendedMetadata.setSecurityProfile(metadata.getSecurityProfile()); extendedMetadata.setSslSecurityProfile(metadata.getSslSecurityProfile()); extendedMetadata.setRequireLogoutRequestSigned(metadata.isRequireLogoutRequestSigned()); extendedMetadata.setRequireLogoutResponseSigned(metadata.isRequireLogoutResponseSigned()); extendedMetadata.setRequireArtifactResolveSigned(metadata.isRequireArtifactResolveSigned()); extendedMetadata.setSslHostnameVerification(metadata.getSslHostnameVerification()); // Metadata signing extendedMetadata.setSignMetadata(metadata.isSignMetadata()); if (hasLength(metadata.getSigningAlgorithm())) { extendedMetadata.setSigningAlgorithm(metadata.getSigningAlgorithm()); } // Generate values EntityDescriptor generatedDescriptor = generator.generateMetadata(); ExtendedMetadata generatedExtendedMetadata = generator.generateExtendedMetadata(); if (metadata.isStore()) { MetadataMemoryProvider memoryProvider = new MetadataMemoryProvider(generatedDescriptor); memoryProvider.initialize(); MetadataProvider metadataProvider = new ExtendedMetadataDelegate(memoryProvider, generatedExtendedMetadata); metadataManager.addMetadataProvider(metadataProvider); metadataManager.setHostedSPName(generatedDescriptor.getEntityID()); metadataManager.setRefreshRequired(true); metadataManager.refreshMetadata(); } return displayMetadata(generatedDescriptor, generatedExtendedMetadata); }
From source file:com.oscgc.security.saml.idp.web.contoller.MetadataController.java
protected ModelAndView displayMetadata(EntityDescriptor entityDescriptor, ExtendedMetadata extendedMetadata) throws MarshallingException { MetadataForm metadata = new MetadataForm(); String fileName = getFileName(entityDescriptor); metadata.setLocal(extendedMetadata.isLocal()); metadata.setSecurityProfile(extendedMetadata.getSecurityProfile()); metadata.setSslSecurityProfile(extendedMetadata.getSslSecurityProfile()); metadata.setSerializedMetadata(getMetadataAsString(entityDescriptor)); metadata.setConfiguration(getConfiguration(fileName, extendedMetadata)); metadata.setEntityId(entityDescriptor.getEntityID()); metadata.setAlias(extendedMetadata.getAlias()); metadata.setRequireArtifactResolveSigned(extendedMetadata.isRequireArtifactResolveSigned()); metadata.setRequireLogoutRequestSigned(extendedMetadata.isRequireLogoutRequestSigned()); metadata.setRequireLogoutResponseSigned(extendedMetadata.isRequireLogoutResponseSigned()); metadata.setEncryptionKey(extendedMetadata.getEncryptionKey()); metadata.setSigningKey(extendedMetadata.getSigningKey()); metadata.setTlsKey(extendedMetadata.getTlsKey()); // TODO other fields discovery, nameIDs ModelAndView model = new ModelAndView(new InternalResourceView("/WEB-INF/security/metadataView.jsp", true)); model.addObject("metadata", metadata); model.addObject("storagePath", fileName); return model; }
From source file:com.saint.spring.saml.web.MetadataController.java
protected ModelAndView displayMetadata(EntityDescriptor entityDescriptor, ExtendedMetadata extendedMetadata) throws MarshallingException { MetadataForm metadata = new MetadataForm(); String fileName = getFileName(entityDescriptor); metadata.setLocal(extendedMetadata.isLocal()); metadata.setSecurityProfile(extendedMetadata.getSecurityProfile()); metadata.setSslSecurityProfile(extendedMetadata.getSslSecurityProfile()); metadata.setSerializedMetadata(getMetadataAsString(entityDescriptor, extendedMetadata)); metadata.setConfiguration(getConfiguration(fileName, extendedMetadata)); metadata.setEntityId(entityDescriptor.getEntityID()); metadata.setAlias(extendedMetadata.getAlias()); metadata.setRequireArtifactResolveSigned(extendedMetadata.isRequireArtifactResolveSigned()); metadata.setRequireLogoutRequestSigned(extendedMetadata.isRequireLogoutRequestSigned()); metadata.setRequireLogoutResponseSigned(extendedMetadata.isRequireLogoutResponseSigned()); metadata.setEncryptionKey(extendedMetadata.getEncryptionKey()); metadata.setSigningKey(extendedMetadata.getSigningKey()); metadata.setTlsKey(extendedMetadata.getTlsKey()); metadata.setSslHostnameVerification(extendedMetadata.getSslHostnameVerification()); metadata.setSignMetadata(extendedMetadata.isSignMetadata()); metadata.setSigningAlgorithm(extendedMetadata.getSigningAlgorithm()); metadata.setIncludeDiscovery(extendedMetadata.isIdpDiscoveryEnabled()); metadata.setCustomDiscoveryURL(extendedMetadata.getIdpDiscoveryResponseURL()); metadata.setCustomDiscoveryResponseURL(extendedMetadata.getIdpDiscoveryURL()); // TODO other fields nameIDs ModelAndView model = new ModelAndView(new InternalResourceView("/WEB-INF/security/metadataView.jsp", true)); model.addObject("metadata", metadata); model.addObject("storagePath", fileName); return model; }