This commit is contained in:
shimingxy
2019-11-06 23:28:59 +08:00
parent 623d6551c8
commit 3ce501aa86
167 changed files with 2293 additions and 1946 deletions

View File

@@ -5,7 +5,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.maxkey.authz.saml.common.AuthnRequestInfo;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.opensaml.common.SignableSAMLObject;
import org.opensaml.common.binding.SAMLMessageContext;
import org.opensaml.saml2.metadata.Endpoint;
@@ -34,7 +34,7 @@ public interface BindingAdapter {
public void setRelayState(String relayState);
public SAML20Details getSaml20Details();
public AppsSAML20Details getSaml20Details();
public AuthnRequestInfo getAuthnRequestInfo();

View File

@@ -6,7 +6,7 @@ import java.security.KeyStore;
import javax.servlet.http.HttpServletRequest;
import org.maxkey.crypto.keystore.KeyStoreLoader;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.opensaml.common.binding.SAMLMessageContext;
import org.opensaml.ws.message.decoder.MessageDecodingException;
import org.opensaml.ws.security.SecurityPolicyResolver;
@@ -29,9 +29,9 @@ public interface ExtractBindingAdapter {
public void buildSecurityPolicyResolver(KeyStore trustKeyStore);
public void setSaml20Detail(SAML20Details saml20Detail);
public void setSaml20Detail(AppsSAML20Details saml20Detail);
public SAML20Details getSaml20Detail();
public AppsSAML20Details getSaml20Detail();
public KeyStoreLoader getKeyStoreLoader();

View File

@@ -7,7 +7,7 @@ import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.maxkey.authz.saml.common.TrustResolver;
import org.maxkey.crypto.keystore.KeyStoreLoader;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.opensaml.common.binding.BasicSAMLMessageContext;
import org.opensaml.common.binding.SAMLMessageContext;
import org.opensaml.common.binding.decoding.SAMLMessageDecoder;
@@ -35,7 +35,7 @@ public class ExtractPostBindingAdapter implements ExtractBindingAdapter, Initial
protected KeyStoreLoader keyStoreLoader;
protected CredentialResolver credentialResolver;
protected SAML20Details saml20Detail;
protected AppsSAML20Details saml20Detail;
public ExtractPostBindingAdapter() {
@@ -119,11 +119,11 @@ public class ExtractPostBindingAdapter implements ExtractBindingAdapter, Initial
}
@Override
public void setSaml20Detail(SAML20Details saml20Detail) {
public void setSaml20Detail(AppsSAML20Details saml20Detail) {
this.saml20Detail=saml20Detail;
}
public SAML20Details getSaml20Detail() {
public AppsSAML20Details getSaml20Detail() {
return saml20Detail;
}

View File

@@ -11,7 +11,7 @@ import org.maxkey.authz.saml.common.AuthnRequestInfo;
import org.maxkey.authz.saml.common.TrustResolver;
import org.maxkey.crypto.keystore.KeyStoreLoader;
import org.maxkey.crypto.keystore.KeyStoreUtil;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.opensaml.common.SignableSAMLObject;
import org.opensaml.common.binding.BasicSAMLMessageContext;
import org.opensaml.common.binding.decoding.SAMLMessageDecoder;
@@ -209,7 +209,7 @@ public class PostBindingAdapter implements BindingAdapter, InitializingBean{
}
@Override
public SAML20Details getSaml20Details() {
public AppsSAML20Details getSaml20Details() {
return extractBindingAdapter.getSaml20Detail();
}
}

View File

@@ -25,8 +25,8 @@ import org.maxkey.authz.saml20.provider.xml.AuthnResponseGenerator;
import org.maxkey.authz.saml20.xml.SAML2ValidatorSuite;
import org.maxkey.constants.LOGINTYPE;
import org.maxkey.crypto.keystore.KeyStoreLoader;
import org.maxkey.dao.service.Saml20DetailsService;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.dao.service.AppsSaml20DetailsService;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.maxkey.web.WebContext;
import org.opensaml.common.binding.SAMLMessageContext;
import org.opensaml.common.binding.security.IssueInstantRule;
@@ -80,7 +80,7 @@ public class ConsumerEndpoint {
private ExtractBindingAdapter extractBindingAdapter;
@Autowired
private Saml20DetailsService saml20DetailsService;
private AppsSaml20DetailsService saml20DetailsService;
@Autowired
@Qualifier("issueInstantRule")
@@ -200,7 +200,7 @@ public class ConsumerEndpoint {
*/
private void initCredential(String spId) throws Exception {
// 1. 获取 sp keyStore
SAML20Details saml20Details = saml20DetailsService.get(spId);
AppsSAML20Details saml20Details = saml20DetailsService.get(spId);
if (saml20Details == null) {
// TODO
logger.error("spid[" + spId + "] not exists");

View File

@@ -11,7 +11,7 @@ import org.maxkey.authz.saml.common.AuthnRequestInfo;
import org.maxkey.authz.saml.common.EndpointGenerator;
import org.maxkey.authz.saml20.BindingAdapter;
import org.maxkey.authz.saml20.provider.xml.AuthnResponseGenerator;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.maxkey.web.WebContext;
import org.opensaml.saml2.core.Response;
import org.opensaml.saml2.metadata.Endpoint;
@@ -47,7 +47,7 @@ public class AssertionEndpoint {
logger.debug("saml20 assertion start.");
bindingAdapter = (BindingAdapter) request.getSession().getAttribute("samlv20Adapter");
logger.debug("saml20 assertion get session samlv20Adapter "+bindingAdapter);
SAML20Details saml20Details = bindingAdapter.getSaml20Details();
AppsSAML20Details saml20Details = bindingAdapter.getSaml20Details();
AuthnRequestInfo authnRequestInfo = bindingAdapter.getAuthnRequestInfo();

View File

@@ -10,8 +10,8 @@ import org.maxkey.authz.saml20.BindingAdapter;
import org.maxkey.authz.saml20.ExtractBindingAdapter;
import org.maxkey.crypto.keystore.KeyStoreLoader;
import org.maxkey.crypto.keystore.KeyStoreUtil;
import org.maxkey.dao.service.Saml20DetailsService;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.dao.service.AppsSaml20DetailsService;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.maxkey.web.WebContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -52,7 +52,7 @@ public class IdpInitEndpoint {
private KeyStoreLoader keyStoreLoader;
@Autowired
private Saml20DetailsService saml20DetailsService;
private AppsSaml20DetailsService saml20DetailsService;
/**
*
@@ -70,7 +70,7 @@ public class IdpInitEndpoint {
HttpServletResponse response,
@PathVariable("appid") String appId)throws Exception {
logger.debug("SAML IDP init , app id is "+appId);
SAML20Details saml20Details = saml20DetailsService.get(appId);
AppsSAML20Details saml20Details = saml20DetailsService.get(appId);
if (saml20Details == null) {
logger.error("samlId[" + appId + "] Error .");

View File

@@ -10,8 +10,8 @@ import org.maxkey.authz.saml20.BindingAdapter;
import org.maxkey.authz.saml20.ExtractBindingAdapter;
import org.maxkey.authz.saml20.xml.SAML2ValidatorSuite;
import org.maxkey.crypto.keystore.KeyStoreUtil;
import org.maxkey.dao.service.Saml20DetailsService;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.dao.service.AppsSaml20DetailsService;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.maxkey.web.WebContext;
import org.opensaml.common.binding.SAMLMessageContext;
import org.opensaml.saml2.core.AuthnRequest;
@@ -55,7 +55,7 @@ public class SingleSignOnEndpoint {
private SAML2ValidatorSuite validatorSuite;
@Autowired
private Saml20DetailsService saml20DetailsService;
private AppsSaml20DetailsService saml20DetailsService;
@RequestMapping(value = "/authz/saml20/{appid}", method=RequestMethod.POST)
public ModelAndView authorizePost(
@@ -89,7 +89,7 @@ public class SingleSignOnEndpoint {
}
public void extractSaml20Detail(ExtractBindingAdapter extractBindingAdapter,String samlId) throws Exception{
SAML20Details saml20Details = saml20DetailsService.get(samlId);
AppsSAML20Details saml20Details = saml20DetailsService.get(samlId);
if (saml20Details == null) {
logger.error("Request SAML APPID [" + samlId + "] is not exist .");

View File

@@ -11,7 +11,7 @@ import org.maxkey.authz.saml.service.IDService;
import org.maxkey.authz.saml.service.TimeService;
import org.maxkey.authz.saml20.xml.IssuerGenerator;
import org.maxkey.constants.BOOLEAN;
import org.maxkey.domain.apps.SAML20Details;
import org.maxkey.domain.apps.AppsSAML20Details;
import org.opensaml.Configuration;
import org.opensaml.saml2.core.Assertion;
import org.opensaml.saml2.core.EncryptedAssertion;
@@ -55,7 +55,7 @@ public class AuthnResponseGenerator {
}
public Response generateAuthnResponse( SAML20Details saml20Details,
public Response generateAuthnResponse( AppsSAML20Details saml20Details,
AuthnRequestInfo authnRequestInfo,
String nameIdValue,
String clientAddress,