2016-06-09 64 views
0

我使用org.springframework.security.saml.metadata.MetadataGenerator添加自定義元素的元數據發生器

MetadataGenerator metadataGenerator = new MetadataGenerator(); ExtendedMetadata extendedMetadata = new ExtendedMetadata(); metadataGenerator.setExtendedMetadata(extendedMetadata);

身份提供商(IDP)產生metadata.xml中需要有特定於該IDP屬性。 我沒有看到任何方式將自定義屬性添加到元數據生成器。

有沒有辦法做到這一點?

回答

1

您將需要擴展MetadataGenerator。優先選擇的方法是buildSPSSODescriptorbuildExtensions

+0

像這樣的東西? '''擴展擴展= super.buildExtensions(entityBaseURL,entityAlias); extensions.getUnknownXMLObjects()。add(object);''' 如果是這樣,那麼我應該擴展實現XMLObject的特定抽象類嗎? org.opensaml.xml.AbstractXMLObject是否正確? – egaga

+0

以下是包含自定義屬性的元數據示例文件:http://esuomi.fi/wp-content/uploads/2016/02/metadata.xml – egaga

+0

要添加ContactPerson,這是唯一的方法嗎? public EntityDescriptor generateMetadata(){ EntityDescriptor entityDescriptor = super.generateMetadata(); ContactPersonBuilder builder = new ContactPersonBuilder(); ContactPerson contactPerson = builder.buildObject(); SurNameBuilder build = new SurNameBuilder(); SurName surName = build.buildObject(); surName.setName(「My surname」); contactPerson.setSurName(surName); entityDescriptor.getContactPersons()。add(contactPerson); return entityDescriptor; } – egaga

相關問題