protected String getHostedSpName(ExtendedMetadataDelegate provider) throws MetadataProviderException { String key = getSpName(provider); ExtendedMetadata extendedMetadata = getExtendedMetadata(key, provider); if (extendedMetadata.isLocal()) { return key; } else { return null; } }
protected String getProviderAlias(ExtendedMetadataDelegate provider) throws MetadataProviderException { List<String> stringSet = parseProvider(provider); for (String key : stringSet) { // Verify extended metadata ExtendedMetadata extendedMetadata = getExtendedMetadata(key, provider); if (extendedMetadata != null) { if (extendedMetadata.isLocal()) { // Parse alias String alias = extendedMetadata.getAlias(); if (alias != null) { // Verify alias is valid SAMLUtil.verifyAlias(alias, key); return alias; } else { log.debug("Local entity {} doesn't have an alias", key); } } else { log.debug("Remote entity {} available", key); } } else { log.debug("No extended metadata available for entity {}", key); } } return null; } /**
protected String getHostedSpName(ExtendedMetadataDelegate provider) throws MetadataProviderException { List<String> stringSet = parseProvider(provider); for (String key : stringSet) { RoleDescriptor spRoleDescriptor = provider.getRole(key, SPSSODescriptor.DEFAULT_ELEMENT_NAME, SAMLConstants.SAML20P_NS); if (spRoleDescriptor != null) { ExtendedMetadata extendedMetadata = getExtendedMetadata(key, provider); if (extendedMetadata != null) { if (extendedMetadata.isLocal()) { return key; } } } } return null; }
@Override public String getEntityIdForAlias(String entityAlias) throws MetadataProviderException { if (entityAlias == null) { return null; } String entityId = null; for (String idp : getIDPEntityNames()) { ExtendedMetadata extendedMetadata = getExtendedMetadata(idp); if (extendedMetadata.isLocal() && entityAlias.equals(extendedMetadata.getAlias())) { if (entityId != null && !entityId.equals(idp)) { throw new MetadataProviderException("Alias " + entityAlias + " is used both for entity " + entityId + " and " + idp); } else { entityId = idp; } } } for (String sp : getSPEntityNames()) { ExtendedMetadata extendedMetadata = getExtendedMetadata(sp); if (extendedMetadata.isLocal() && entityAlias.equals(extendedMetadata.getAlias())) { if (entityId != null && !entityId.equals(sp)) { throw new MetadataProviderException("Alias " + entityAlias + " is used both for entity " + entityId + " and " + sp); } else { entityId = sp; } } } return entityId; }
if (extendedMetadata.isLocal() && entityAlias.equals(extendedMetadata.getAlias())) { if (entityId != null && !entityId.equals(idp)) { throw new MetadataProviderException("Alias " + entityAlias + " is used both for entity " + entityId + " and " + idp); if (extendedMetadata.isLocal() && entityAlias.equals(extendedMetadata.getAlias())) { if (entityId != null && !entityId.equals(sp)) { throw new MetadataProviderException("Alias " + entityAlias + " is used both for entity " + entityId + " and " + sp);
if (extendedMetadata.isLocal()) {
if (extendedMetadata.isLocal() && extendedMetadata.isSignMetadata()) { Credential credential = keyManager.getCredential(extendedMetadata.getSigningKey()); String signingAlgorithm = extendedMetadata.getSigningAlgorithm();