本文整理汇总了Java中org.opensaml.saml2.core.AudienceRestriction类的典型用法代码示例。如果您正苦于以下问题:Java AudienceRestriction类的具体用法?Java AudienceRestriction怎么用?Java AudienceRestriction使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
AudienceRestriction类属于org.opensaml.saml2.core包,在下文中一共展示了AudienceRestriction类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testChildElementsMarshall
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/** {@inheritDoc} */
public void testChildElementsMarshall() {
QName qname = new QName(SAMLConstants.SAML20_NS, Conditions.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
Conditions conditions = (Conditions) buildXMLObject(qname);
QName oneTimeUserQName = new QName(SAMLConstants.SAML20_NS, OneTimeUse.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
conditions.getConditions().add((Condition) buildXMLObject(oneTimeUserQName));
QName audienceRestrictionQName = new QName(SAMLConstants.SAML20_NS, AudienceRestriction.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
for (int i = 0; i < audienceRestrictionCount; i++) {
conditions.getAudienceRestrictions().add((AudienceRestriction) buildXMLObject(audienceRestrictionQName));
}
conditions.getConditions().add((Condition) buildXMLObject(oneTimeUserQName));
QName proxyRestrictionQName = new QName(SAMLConstants.SAML20_NS, ProxyRestriction.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
conditions.getConditions().add((Condition) buildXMLObject(proxyRestrictionQName));
assertEquals(expectedChildElementsDOM, conditions);
}
示例2: getSAMLBuilder
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
private static XMLObjectBuilderFactory getSAMLBuilder() throws ConfigurationException {
if (builderFactory == null) {
// OpenSAML 2.3
DefaultBootstrap.bootstrap();
builderFactory = Configuration.getBuilderFactory();
nameIdBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(NameID.DEFAULT_ELEMENT_NAME);
confirmationMethodBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(SubjectConfirmationData.DEFAULT_ELEMENT_NAME);
subjectConfirmationBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(SubjectConfirmation.DEFAULT_ELEMENT_NAME);
subjectBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(Subject.DEFAULT_ELEMENT_NAME);
attrStatementBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(AttributeStatement.DEFAULT_ELEMENT_NAME);
audienceRestrictionnBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(AudienceRestriction.DEFAULT_ELEMENT_NAME);
audienceBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(Audience.DEFAULT_ELEMENT_NAME);
authStatementBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(AuthnStatement.DEFAULT_ELEMENT_NAME);
authContextBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(AuthnContext.DEFAULT_ELEMENT_NAME);
authContextClassRefBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(AuthnContextClassRef.DEFAULT_ELEMENT_NAME);
issuerBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(Issuer.DEFAULT_ELEMENT_NAME);
assertionBuilder = (SAMLObjectBuilder) getSAMLBuilder().getBuilder(Assertion.DEFAULT_ELEMENT_NAME);
}
return builderFactory;
}
示例3: processChildElement
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/** {@inheritDoc} */
protected void processChildElement(XMLObject parentObject, XMLObject childObject) throws UnmarshallingException {
AudienceRestriction audienceRestriction = (AudienceRestriction) parentObject;
if (childObject instanceof Audience) {
audienceRestriction.getAudiences().add((Audience) childObject);
} else {
super.processChildElement(parentObject, childObject);
}
}
示例4: validateAudienceRestriction
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/**
* Validate the AudienceRestriction of SAML2 Response
*
* @param assertion SAML2 Assertion
* @return validity
*/
protected void validateAudienceRestriction(Assertion assertion) throws SSOAgentException {
if (assertion != null) {
Conditions conditions = assertion.getConditions();
if (conditions != null) {
List<AudienceRestriction> audienceRestrictions = conditions.getAudienceRestrictions();
if (audienceRestrictions != null && !audienceRestrictions.isEmpty()) {
boolean audienceFound = false;
for (AudienceRestriction audienceRestriction : audienceRestrictions) {
if (audienceRestriction.getAudiences() != null && !audienceRestriction.getAudiences().isEmpty()
) {
for (Audience audience : audienceRestriction.getAudiences()) {
if (ssoAgentConfig.getSAML2().getSPEntityId().equals(audience.getAudienceURI())) {
audienceFound = true;
break;
}
}
}
if (audienceFound) {
break;
}
}
if (!audienceFound) {
throw new SSOAgentException("SAML2 Assertion Audience Restriction validation failed");
}
} else {
throw new SSOAgentException("SAML2 Response doesn't contain AudienceRestrictions");
}
} else {
throw new SSOAgentException("SAML2 Response doesn't contain Conditions");
}
}
}
示例5: getAudience
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
public Collection<String> getAudience() {
List<String> audiences = new ArrayList<String>();
if (assertion.getConditions() == null) return audiences;
for (AudienceRestriction audienceRestriction : assertion.getConditions().getAudienceRestrictions()) {
for (Audience audience : audienceRestriction.getAudiences()) {
audiences.add(audience.getAudienceURI());
}
}
return audiences;
}
示例6: createAudienceCondition
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/**
* Create SAML Conditions with an audience element.
*
* @param audienceURI
* The value of the audience element
* @return The SAML Conditions with the given audience element
*/
public static Conditions createAudienceCondition(String audienceURI) {
Audience audience = buildXMLObject(Audience.class);
audience.setAudienceURI(audienceURI);
AudienceRestriction audienceRestriction = buildXMLObject(AudienceRestriction.class);
audienceRestriction.getAudiences().add(audience);
Conditions conditions = buildXMLObject(Conditions.class);
conditions.getAudienceRestrictions().add(audienceRestriction);
return conditions;
}
示例7: testCreateAudienceCondition
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
@Test
public void testCreateAudienceCondition() {
Conditions ac = SAMLUtil.createAudienceCondition("uri");
assertNotNull(ac);
assertEquals(1, ac.getConditions().size());
assertNull(ac.getNotBefore());
assertNull(ac.getNotOnOrAfter());
assertNull(ac.getProxyRestriction());
assertNull(ac.getOneTimeUse());
AudienceRestriction ar = ac.getAudienceRestrictions().get(0);
assertEquals(1, ar.getAudiences().size());
Audience audience = ar.getAudiences().get(0);
assertEquals("uri", audience.getAudienceURI());
}
示例8: validateAudienceRestriction
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/**
* Validate the AudienceRestriction of SAML2 Response
*
* @param assertion SAML2 Assertion
* @return validity
*/
private void validateAudienceRestriction(Assertion assertion) throws SAMLSSOException {
if (assertion != null) {
Conditions conditions = assertion.getConditions();
if (conditions != null) {
List<AudienceRestriction> audienceRestrictions = conditions.getAudienceRestrictions();
if (audienceRestrictions != null && !audienceRestrictions.isEmpty()) {
for (AudienceRestriction audienceRestriction : audienceRestrictions) {
if (CollectionUtils.isNotEmpty(audienceRestriction.getAudiences())) {
boolean audienceFound = false;
for (Audience audience : audienceRestriction.getAudiences()) {
if (properties.get(IdentityApplicationConstants.Authenticator.SAML2SSO.SP_ENTITY_ID)
.equals(audience.getAudienceURI())) {
audienceFound = true;
break;
}
}
if (!audienceFound) {
throw new SAMLSSOException("SAML Assertion Audience Restriction validation failed");
}
} else {
throw new SAMLSSOException("SAML Response's AudienceRestriction doesn't contain Audiences");
}
}
} else {
throw new SAMLSSOException("SAML Response doesn't contain AudienceRestrictions");
}
} else {
throw new SAMLSSOException("SAML Response doesn't contain Conditions");
}
}
}
示例9: validateAudienceRestrictionInAssertion
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/**
* Validate the AudienceRestriction of SAML2 Assertion
*
* @param assertion SAML2 Assertion
* @return validity
*/
public boolean validateAudienceRestrictionInAssertion(Assertion assertion) {
if (assertion != null) {
Conditions conditions = assertion.getConditions();
if (conditions != null) {
List<AudienceRestriction> audienceRestrictions = conditions.getAudienceRestrictions();
if (audienceRestrictions != null && !audienceRestrictions.isEmpty()) {
for (AudienceRestriction audienceRestriction : audienceRestrictions) {
if (audienceRestriction.getAudiences() != null && audienceRestriction.getAudiences().size() > 0) {
for (Audience audience : audienceRestriction.getAudiences()) {
String spId = org.wso2.carbon.identity.authenticator.saml2.sso.common.Util.getServiceProviderId();
if (spId == null) {
org.wso2.carbon.identity.authenticator.saml2.sso.common.Util.initSSOConfigParams();
spId = org.wso2.carbon.identity.authenticator.saml2.sso.common.Util.getServiceProviderId();
}
if (spId != null) {
if (spId.equals(audience.getAudienceURI())) {
return true;
}
} else {
log.warn("No SAML2 service provider ID defined.");
}
}
} else {
log.warn("SAML2 Response's AudienceRestriction doesn't contain Audiences");
}
}
} else {
log.error("SAML2 Response doesn't contain AudienceRestrictions");
}
} else {
log.error("SAML2 Response doesn't contain Conditions");
}
}
return false;
}
示例10: populateRequiredData
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
protected void populateRequiredData() {
super.populateRequiredData();
AudienceRestriction audienceRestriction = (AudienceRestriction) target;
Audience audience = (Audience) buildXMLObject(new QName(SAMLConstants.SAML20_NS, Audience.DEFAULT_ELEMENT_LOCAL_NAME,
SAMLConstants.SAML20_PREFIX));
audienceRestriction.getAudiences().add(audience);
}
示例11: testAudienceFailure
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/**
* Tests absent Audience failure.
*
* @throws ValidationException
*/
public void testAudienceFailure() throws ValidationException {
AudienceRestriction audienceRestriction = (AudienceRestriction) target;
audienceRestriction.getAudiences().clear();
assertValidationFail("Audience list empty, should raise a Validation Exception");
}
示例12: testSingleElementMarshall
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/** {@inheritDoc} */
public void testSingleElementMarshall() {
QName qname = new QName(SAMLConstants.SAML20_NS, AudienceRestriction.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
AudienceRestriction audienceRestriction = (AudienceRestriction) buildXMLObject(qname);
assertEquals(expectedDOM, audienceRestriction);
}
示例13: testChildElementsMarshall
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
/** {@inheritDoc} */
public void testChildElementsMarshall() {
QName qname = new QName(SAMLConstants.SAML20_NS, AudienceRestriction.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
AudienceRestriction audienceRestriction = (AudienceRestriction) buildXMLObject(qname);
QName audienceQName = new QName(SAMLConstants.SAML20_NS, Audience.DEFAULT_ELEMENT_LOCAL_NAME, SAMLConstants.SAML20_PREFIX);
for (int i = 0; i < expectedAudienceCount; i++) {
audienceRestriction.getAudiences().add((Audience) buildXMLObject(audienceQName));
}
assertEquals(expectedChildElementsDOM, audienceRestriction);
}
示例14: buildConditions
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
private Conditions buildConditions() throws IllegalAccessException {
Conditions conditions = buildXMLObjectDefaultName(Conditions.class);
conditions.setNotBefore(new DateTime().minusDays(2));
conditions.setNotOnOrAfter(new DateTime().plusDays(2));
AudienceRestriction audienceRestriction = buildXMLObjectDefaultName(AudienceRestriction.class);
Audience audience = buildXMLObjectDefaultName(Audience.class);
audience.setAudienceURI(MockIDPSPMetadata.getAudienceUri());
audienceRestriction.getAudiences().add(audience);
conditions.getAudienceRestrictions().add(audienceRestriction);
return conditions;
}
示例15: createCondition
import org.opensaml.saml2.core.AudienceRestriction; //导入依赖的package包/类
private static Conditions createCondition() {
Conditions conditions = null;
AudienceRestriction audienceRestriction = null;
if (samlResponseData.getAudience() != null
&& samlResponseData.getAudience().length() > 0) {
Audience audience = create(Audience.DEFAULT_ELEMENT_NAME);
if (SamlResponseData.REPLACE_WITH_AUTHN_REQUEST
.equals(samlResponseData.getAudience())) {
audience.setAudienceURI(authnRequest.getIssuer().getValue());
} else {
audience.setAudienceURI(samlResponseData.getAudience());
}
audienceRestriction = create(AudienceRestriction.DEFAULT_ELEMENT_NAME);
audienceRestriction.getAudiences().add(audience);
}
if (samlResponseData.getConditionNotBefore() != null
|| samlResponseData.getConditionNotOnOrAfter() != null
|| audienceRestriction != null) {
conditions = create(Conditions.DEFAULT_ELEMENT_NAME);
if (samlResponseData.getConditionNotBefore() != null)
conditions.setNotBefore(startTime.plusMinutes(samlResponseData
.getConditionNotBefore()));
if (samlResponseData.getConditionNotOnOrAfter() != null)
conditions.setNotOnOrAfter(startTime
.plusMinutes(samlResponseData
.getConditionNotOnOrAfter()));
conditions.getAudienceRestrictions().add(audienceRestriction);
}
return conditions;
}