当前位置: 首页>>代码示例>>Java>>正文


Java LogoutResponse.setID方法代码示例

本文整理汇总了Java中org.opensaml.saml2.core.LogoutResponse.setID方法的典型用法代码示例。如果您正苦于以下问题:Java LogoutResponse.setID方法的具体用法?Java LogoutResponse.setID怎么用?Java LogoutResponse.setID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.opensaml.saml2.core.LogoutResponse的用法示例。


在下文中一共展示了LogoutResponse.setID方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: buildLogoutResponse

import org.opensaml.saml2.core.LogoutResponse; //导入方法依赖的package包/类
public LogoutResponse buildLogoutResponse(String id, String status, String statMsg)
        throws SSOAgentException {

    LogoutResponse logoutResp = new LogoutResponseBuilder().buildObject();
    logoutResp.setID(SSOAgentUtils.createID());
    logoutResp.setInResponseTo(id);

    IssuerBuilder issuerBuilder = new IssuerBuilder();
    Issuer issuer = issuerBuilder.buildObject();
    issuer.setValue(ssoAgentConfig.getSAML2().getSPEntityId());
    logoutResp.setIssuer(issuer);

    logoutResp.setStatus(buildStatus(status, statMsg));
    logoutResp.setIssueInstant(new DateTime());
    logoutResp.setDestination(ssoAgentConfig.getSAML2().getIdPURL());

    SSOAgentUtils.setSignatureValue(logoutResp, XMLSignature.ALGO_ID_SIGNATURE_RSA,
            new X509CredentialImpl(ssoAgentConfig.getSAML2().getSSOAgentX509Credential()));

    return logoutResp;
}
 
开发者ID:wso2-extensions,项目名称:identity-agent-sso,代码行数:22,代码来源:SAML2SSOManager.java

示例2: testFindSaml20IdpConnectorToUseToProcessResponses

import org.opensaml.saml2.core.LogoutResponse; //导入方法依赖的package包/类
/**
 * The SP receive à LogoutResponse from the IdP. Which IdPConnector to choose ?
 * @throws Exception
 */
@Test
public void testFindSaml20IdpConnectorToUseToProcessResponses() throws Exception {
	// Mock the Original Request the response is responding to.
	Mockito.when(this.samlStorage.findAuthentication(SESSION_INDEX_1)).thenReturn(this.buildBasicSamlAuthentication());
	// Build the original request with IdpConnector1
	final IOutgoingSaml logoutRequest = this.idpConnector1.buildSaml20SingleLogoutRequest(SESSION_INDEX_1, SamlBindingEnum.SAML_20_HTTP_POST);
	Mockito.when(this.samlStorage.findRequestWaitingForResponse(REQUEST_ID)).thenReturn((IRequestWaitingForResponse) logoutRequest.getSamlQuery());
	
	
	final LogoutResponse logoutResponse = this.logoutResponseBuilder.buildObject();
	final Issuer issuer = issuerBuilder.buildObject();
	
	// Issuer
	issuer.setValue(IDP1_ENTITY_ID);
	
	// Request
	logoutResponse.setIssuer(issuer);
	logoutResponse.setID(RESPONSE_ID);
	logoutResponse.setInResponseTo(REQUEST_ID);
	
	final ISaml20IdpConnector connectorToUse = this.spProcessor.findSaml20IdpConnectorToUse(logoutResponse);
	Assert.assertNotNull("No IdPConnector to use found !", connectorToUse);
	Assert.assertEquals("Wrong IdPConnector used !", this.idpConnector1, connectorToUse);
}
 
开发者ID:mxbossard,项目名称:java-saml2-sp,代码行数:29,代码来源:OpenSaml20IntegrationTest.java

示例3: createLogoutResponse

import org.opensaml.saml2.core.LogoutResponse; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
private LogoutResponse createLogoutResponse(String id, 
                                    String code, String msg) {
    
  // Consume LogoutResponse
  LogoutResponse lresp = ((SAMLObjectBuilder<LogoutResponse>) 
            _bf.getBuilder(LogoutResponse.DEFAULT_ELEMENT_NAME)).
                                                          buildObject();
  String uid = UUID.randomUUID().toString();
  
  lresp.setID(uid);
  lresp.setInResponseTo(id);
  lresp.setIssueInstant(new DateTime());
  lresp.setVersion(SAMLVersion.VERSION_20);
  lresp.setIssuer(getIssuer());
  
  // Set status code
  Status status = ((SAMLObjectBuilder<Status>) _bf.getBuilder(
              Status.DEFAULT_ELEMENT_NAME)).buildObject();
  
  StatusCode scode = ((SAMLObjectBuilder<StatusCode>) _bf.getBuilder(
              StatusCode.DEFAULT_ELEMENT_NAME)).buildObject();
  scode.setValue(code);
  status.setStatusCode(scode);
  
  if (!msg.equals("")) {
    StatusMessage smsg = ((SAMLObjectBuilder<StatusMessage>) _bf.getBuilder(
                          StatusMessage.DEFAULT_ELEMENT_NAME)).buildObject();
    smsg.setMessage(msg);
    status.setStatusMessage(smsg);
  }
  
  lresp.setStatus(status);
  
  return lresp;
}
 
开发者ID:osbitools,项目名称:OsBiToolsWs,代码行数:37,代码来源:SamlSecurityProvider.java

示例4: fromRequest

import org.opensaml.saml2.core.LogoutResponse; //导入方法依赖的package包/类
public static OIOLogoutResponse fromRequest(OIOLogoutRequest request, String statusCode, String consent, String entityId, String destination) {
	LogoutResponse logoutResponse = SAMLUtil.buildXMLObject(LogoutResponse.class);

	logoutResponse.setID(Utils.generateUUID());
	logoutResponse.setIssueInstant(new DateTime(DateTimeZone.UTC));
	logoutResponse.setVersion(SAMLVersion.VERSION_20);
	logoutResponse.setStatus(SAMLUtil.createStatus(statusCode != null ? statusCode : StatusCode.SUCCESS_URI));
	
	if (request != null) {
		logoutResponse.setInResponseTo(request.getID());
	}
	logoutResponse.setIssuer(SAMLUtil.createIssuer(entityId));
	logoutResponse.setDestination(destination);
	if (consent != null) {
		logoutResponse.setConsent(consent);
	}
	if (statusCode != null && !StatusCode.SUCCESS_URI.equals(statusCode)) {
		log.error("Invalid <LogoutRequest>: " + consent);
	}
	try {
		if (log.isDebugEnabled()) log.debug("Validate the logoutResponse...");
		logoutResponse.validate(true);
		if (log.isDebugEnabled()) log.debug("...OK");
	} catch (ValidationException e) {
		throw new WrappedException(Layer.CLIENT, e);
	}

	return new OIOLogoutResponse(logoutResponse);
}
 
开发者ID:amagdenko,项目名称:oiosaml.java,代码行数:30,代码来源:OIOLogoutResponse.java

示例5: buildLogoutResponse

import org.opensaml.saml2.core.LogoutResponse; //导入方法依赖的package包/类
public LogoutResponse buildLogoutResponse(String id, String status, String statMsg, String destination, boolean
        isSignResponse, String tenantDomain, String responseSigningAlgorithmUri, String responseDigestAlgoUri)
        throws IdentityException {

    LogoutResponse logoutResp = new LogoutResponseBuilder().buildObject();
    logoutResp.setID(SAMLSSOUtil.createID());
    logoutResp.setInResponseTo(id);
    logoutResp.setIssuer(SAMLSSOUtil.getIssuer());
    logoutResp.setStatus(buildStatus(status, statMsg));
    logoutResp.setIssueInstant(new DateTime());
    logoutResp.setDestination(destination);

    // Currently, does not sign the error response since this message pass through a url to the error page
    if (isSignResponse && SAMLSSOConstants.StatusCodes.SUCCESS_CODE.equals(status)) {
        int tenantId;
        if (StringUtils.isEmpty(tenantDomain)) {
            tenantDomain = MultitenantConstants.SUPER_TENANT_DOMAIN_NAME;
            tenantId = MultitenantConstants.SUPER_TENANT_ID;
        } else {
            try {
                tenantId = SAMLSSOUtil.getRealmService().getTenantManager().getTenantId(tenantDomain);
            } catch (UserStoreException e) {
                throw IdentityException.error("Error occurred while retrieving tenant id from tenant domain", e);
            }

            if(MultitenantConstants.INVALID_TENANT_ID == tenantId) {
                throw IdentityException.error("Invalid tenant domain - '" + tenantDomain + "'" );
            }
        }

        try {
            PrivilegedCarbonContext.startTenantFlow();
            PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenantDomain);
            PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(tenantId);
            SAMLSSOUtil.setSignature(logoutResp, responseSigningAlgorithmUri, responseDigestAlgoUri, new
                    SignKeyDataHolder(null));
        } finally {
            PrivilegedCarbonContext.endTenantFlow();
        }
    }

    return logoutResp;
}
 
开发者ID:wso2-attic,项目名称:carbon-identity,代码行数:44,代码来源:SingleLogoutMessageBuilder.java


注:本文中的org.opensaml.saml2.core.LogoutResponse.setID方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。