gluu
公開メンバ関数 | 静的公開変数類 | 非公開メンバ関数 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.gluu.oxtrust.ldap.service.Shibboleth3ConfService クラス
org.gluu.oxtrust.ldap.service.Shibboleth3ConfService の継承関係図
Inheritance graph
org.gluu.oxtrust.ldap.service.Shibboleth3ConfService 連携図
Collaboration graph

公開メンバ関数

boolean generateConfigurationFiles (List< GluuSAMLTrustRelationship > trustRelationships)
 
HashMap< String, Object > initAttributeResolverParamMap ()
 
String getIdpMetadataFilePath ()
 
String getIdpConfDir ()
 
String getIdpMetadataDir ()
 
String getIdpMetadataTempDir ()
 
String getIdpMetadataCredentialsDir ()
 
String getSpMetadataFilePath (String spMetaDataFN)
 
String getSpNewMetadataFileName (GluuSAMLTrustRelationship trustRel)
 
String getSpNewMetadataFileName (String inum)
 
String saveSpMetadataFile (String spMetadataFileName, byte[] data)
 
String saveSpMetadataFile (String spMetadataFileName, InputStream input)
 
String saveSpMetadataFile (String uri, String spMetadataFileName)
 
String generateSpAttributeMapFile (GluuSAMLTrustRelationship trustRelationship)
 
boolean generateSpMetadataFile (GluuSAMLTrustRelationship trustRelationship, String certificate)
 
String generateSpMetadataFileContent (GluuSAMLTrustRelationship trustRelationship, String certificate)
 
void removeSpMetadataFile (String spMetadataFileName)
 
boolean isCorrectSpMetadataFile (String spMetadataFileName)
 
String getSpAttributeMapFilePath ()
 
String getSpShibboleth3FilePath ()
 
String getSpReadMeResourceName ()
 
String getSpReadMeWindowsResourceName ()
 
String getPublicCertificate (byte[] cert)
 
String getPublicCertificate (InputStream is)
 
List< SubversionFilegetConfigurationFilesForSubversion (List< GluuSAMLTrustRelationship > trustRelationships)
 
SubversionFile getConfigurationFileForSubversion (GluuSAMLTrustRelationship trustRelationship)
 
boolean isFederationMetadata (String spMetaDataFN)
 
boolean generateIdpConfigurationFiles ()
 
void removeUnusedMetadata ()
 
void removeUnusedCredentials ()
 
boolean isCorrectMetadataFile (String spMetaDataFN)
 
void removeMetadataFile (String spMetaDataFN)
 
String getMetadataFilePath (String metadataFileName)
 
String getNewMetadataFileName (GluuSAMLFederationProposal federationProposal, List< GluuSAMLFederationProposal > allFederationProposals)
 
boolean saveMetadataFile (String metadataFileName, InputStream stream)
 
boolean saveMetadataFile (String spMetaDataURL, String metadataFileName)
 
boolean generateMetadataFiles (GluuSAMLTrustRelationship gluuSP)
 
GluuErrorHandler validateMetadata (InputStream stream) throws ParserConfigurationException, SAXException, IOException
 
boolean existsResourceUri (String URLName)
 
boolean isIdpInstalled ()
 
void addGluuSP ()
 
boolean isFederation (GluuSAMLTrustRelationship trustRelationship)
 
void saveCert (GluuSAMLTrustRelationship trustRelationship, String certificate)
 
void saveKey (GluuSAMLTrustRelationship trustRelationship, String key)
 

静的公開変数類

static final String SHIB3_IDP_METADATA_FOLDER = "metadata"
 
static final String SHIB3_IDP_IDP_METADATA_FILE = "idp-metadata.xml"
 
static final String SHIB3_IDP_SP_METADATA_FILE = "sp-metadata.xml"
 
static final String SHIB3_SP_ATTRIBUTE_MAP_FILE = "attribute-map.xml"
 
static final String SHIB3_SP_SHIBBOLETH2_FILE = "shibboleth2.xml"
 
static final String PUBLIC_CERTIFICATE_START_LINE = "-----BEGIN CERTIFICATE-----"
 
static final String PUBLIC_CERTIFICATE_END_LINE = "-----END CERTIFICATE-----"
 
static final String SHIB3_IDP_PROPERTIES_FILE = "idp.properties"
 
static final String SHIB3_IDP_TEMPMETADATA_FOLDER = "temp_metadata"
 
static final String SHIB3_IDP_SP_KEY_FILE = "spkey.key"
 
static final String SHIB3_IDP_SP_CERT_FILE = "spcert.crt"
 

非公開メンバ関数

void initAttributes (List< GluuSAMLTrustRelationship > trustRelationships)
 
HashMap< String, Object > initTrustParamMap (List< GluuSAMLTrustRelationship > trustRelationships)
 
HashMap< String, Object > initAttributeParamMap (List< GluuSAMLTrustRelationship > trustRelationships)
 
HashMap< String, Object > initCASParamMap ()
 
VelocityContext prepareVelocityContext (HashMap< String, Object > trustParams, HashMap< String, Object > attrParams, HashMap< String, Object > casParams, HashMap< String, Object > attrResolverParams, String idpMetadataFolder)
 
String getTempMetadataFilename (String idpMetadataFolder, String fileName)
 
boolean trustRelationExists (String metadataName)
 
boolean profileCofigurationExists (String credentialName)
 
boolean filterExists (String credentialName)
 

非公開変数類

AttributeService attributeService
 
TemplateService templateService
 
Logger log
 
FilterService filterService
 
ApplianceService applianceService
 
ConfigurationFactory configurationFactory
 
AppConfiguration appConfiguration
 
EncryptionService encryptionService
 
XmlService xmlService
 
ProfileConfigurationService profileConfigurationService
 
OrganizationService organizationService
 
CASService casService
 
SchemaService shemaService
 
TrustService trustService
 

静的非公開変数類

static final long serialVersionUID = 6752452480800274694L
 
static final String SHIB3_IDP = "shibboleth-idp"
 
static final String SHIB3_SP = "sp"
 
static final String SHIB3_IDP_CONF_FOLDER = "conf"
 
static final String SHIB3_IDP_METADATA_CREDENTIALS_FOLDER = SHIB3_IDP_METADATA_FOLDER + File.separator + "credentials"
 
static final String SHIB3_IDP_METADATA_PROVIDERS_FILE = "metadata-providers.xml"
 
static final String SHIB3_IDP_ATTRIBUTE_FILTER_FILE = "attribute-filter.xml"
 
static final String SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE = "attribute-resolver.xml"
 
static final String SHIB3_IDP_RELYING_PARTY_FILE = "relying-party.xml"
 
static final String SHIB3_IDP_CAS_PROTOCOL_FILE = "cas-protocol.xml"
 
static final String SHIB3_SP_READ_ME = "/WEB-INF/resources/doc/README_SP.pdf"
 
static final String SHIB3_SP_READ_ME_WINDOWS = "/WEB-INF/resources/doc/README_SP_windows.pdf"
 
static final String SHIB3_SAML_NAMEID_FILE = "saml-nameid.xml"
 
static final String SHIB3_SP_METADATA_FILE_PATTERN = "%s-sp-metadata.xml"
 
static final String SHIB3_IDP_LOGIN_CONFIG_FILE = "login.config"
 
static final String SHIB3_METADATA_FILE_PATTERN = "%s-metadata.xml"
 

詳解

Provides operations with attributes

著者
Dmitry Ognyannikov, 2016

関数詳解

◆ addGluuSP()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.addGluuSP ( )
inline

Adds Trust relationship for own shibboleth SP and restarts services after done.

著者
�Oleksiy Tataryn�
1454  {
1455  String gluuSPInum = trustService.generateInumForNewTrustRelationship();
1456  String metadataFN = getSpNewMetadataFileName(gluuSPInum);
1457  GluuSAMLTrustRelationship gluuSP = new GluuSAMLTrustRelationship();
1458  gluuSP.setInum(gluuSPInum);
1459  gluuSP.setDisplayName("gluu SP on appliance");
1460  gluuSP.setDescription("Trust Relationship for the SP");
1461  gluuSP.setSpMetaDataSourceType(GluuMetadataSourceType.FILE);
1462  gluuSP.setSpMetaDataFN(metadataFN);
1463  //TODO:
1464  gluuSP.setEntityId(StringHelper.removePunctuation(gluuSP.getInum()));
1465  gluuSP.setUrl(appConfiguration.getApplianceUrl());
1466 
1467  String certificate = "";
1468  boolean result = false;
1469  try {
1470  certificate = FileUtils.readFileToString(new File(appConfiguration.getGluuSpCert())).replaceAll("-{5}.*?-{5}", "");
1471  generateSpMetadataFile(gluuSP, certificate);
1472  result = isCorrectSpMetadataFile(gluuSP.getSpMetaDataFN());
1473 
1474  } catch (IOException e) {
1475  log.error("Failed to gluu SP read certificate file.", e);
1476  }
1477 
1478  if (result) {
1479  gluuSP.setStatus(GluuStatus.ACTIVE);
1480  String inum = gluuSP.getInum();
1481  String dn = trustService.getDnForTrustRelationShip(inum);
1482 
1483  gluuSP.setDn(dn);
1484  List<GluuCustomAttribute> customAttributes = new ArrayList<GluuCustomAttribute>();
1485  List<GluuAttribute> attributes = attributeService.getAllPersonAttributes(UserRole.ADMIN);
1486  HashMap<String, GluuAttribute> attributesByDNs = attributeService.getAttributeMapByDNs(attributes);
1487  List<String> customAttributeDNs = new ArrayList<String>();
1488  List<String> attributeNames = new ArrayList<String>();
1489 
1490  for (String attributeName : appConfiguration.getGluuSpAttributes()) {
1491  GluuAttribute attribute = attributeService.getAttributeByName(attributeName, attributes);
1492  if (attribute != null) {
1493  customAttributeDNs.add(attribute.getDn());
1494  }
1495  }
1496 
1497  customAttributes.addAll(attributeService.getCustomAttributesByAttributeDNs(customAttributeDNs, attributesByDNs));
1498  gluuSP.setReleasedCustomAttributes(customAttributes);
1499  gluuSP.setReleasedAttributes(attributeNames);
1502 
1503  GluuAppliance appliance = applianceService.getAppliance();
1504  appliance.setGluuSPTR(gluuSP.getInum());
1505  applianceService.updateAppliance(appliance);
1506  }
1507 
1508  if (result) {
1509  log.warn("gluuSP EntityID set to " + StringHelper.removePunctuation(gluuSP.getInum())
1510  + ". Shibboleth3 configuration should be updated.");
1511  } else {
1512  log.error("IDP configuration update failed. GluuSP was not generated.");
1513  }
1514  }
void updateReleasedAttributes(GluuSAMLTrustRelationship trustRelationship)
Definition: TrustService.java:299
void updateAppliance(GluuAppliance appliance)
Definition: ApplianceService.java:75
List< GluuCustomAttribute > getCustomAttributesByAttributeDNs(List< String > attributeDNs, HashMap< String, GluuAttribute > attributesByDNs)
Definition: AttributeService.java:576
GluuAppliance getAppliance(String[] returnAttributes)
Definition: ApplianceService.java:111
void addTrustRelationship(GluuSAMLTrustRelationship trustRelationship)
Definition: TrustService.java:81
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
TrustService trustService
Definition: Shibboleth3ConfService.java:172
List< GluuAttribute > getAllPersonAttributes(UserRole gluuUserRole)
Definition: AttributeService.java:74
HashMap< String, GluuAttribute > getAttributeMapByDNs(List< GluuAttribute > attributes)
Definition: AttributeService.java:595
boolean isCorrectSpMetadataFile(String spMetadataFileName)
Definition: Shibboleth3ConfService.java:862
AttributeService attributeService
Definition: Shibboleth3ConfService.java:133
void setGluuSPTR(String gluuSPTR)
Definition: GluuAppliance.java:338
boolean generateSpMetadataFile(GluuSAMLTrustRelationship trustRelationship, String certificate)
Definition: Shibboleth3ConfService.java:813
ApplianceService applianceService
Definition: Shibboleth3ConfService.java:145
String getSpNewMetadataFileName(GluuSAMLTrustRelationship trustRel)
Definition: Shibboleth3ConfService.java:703
Logger log
Definition: Shibboleth3ConfService.java:139
String getDnForTrustRelationShip(String inum)
Definition: TrustService.java:290
String generateInumForNewTrustRelationship()
Definition: TrustService.java:241

◆ existsResourceUri()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.existsResourceUri ( String  URLName)
inline
1422  {
1423 
1424  try {
1425 
1426  HttpURLConnection.setFollowRedirects(false);
1427  // note : you may also need
1428  // HttpURLConnection.setInstanceFollowRedirects(false)
1429  HttpURLConnection con = (HttpURLConnection) new URL(URLName).openConnection();
1430  con.setRequestMethod("HEAD");
1431  return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
1432 
1433  } catch (Exception e) {
1434  e.printStackTrace();
1435  return false;
1436  }
1437  }

◆ filterExists()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.filterExists ( String  credentialName)
inlineprivate
1197  {
1198 
1199  for (GluuSAMLTrustRelationship trust : trustService.getAllTrustRelationships()) {
1200  if (credentialName.equals(StringHelper.removePunctuation(trust.getInum()))) {
1201  try {
1202  filterService.parseFilters(trust);
1203  } catch (Exception e) {
1204  log.error("parseFilters exception", e);
1205  return false;
1206  }
1207  if (trust.getMetadataFilters().get("signatureValidation") != null) {
1208  return true;
1209  }
1210  }
1211  }
1212  return false;
1213  }
List< GluuSAMLTrustRelationship > getAllTrustRelationships()
Definition: TrustService.java:198
TrustService trustService
Definition: Shibboleth3ConfService.java:172
FilterService filterService
Definition: Shibboleth3ConfService.java:142
void parseFilters(GluuSAMLTrustRelationship trustRelationship)
Definition: FilterService.java:199
Logger log
Definition: Shibboleth3ConfService.java:139

◆ generateConfigurationFiles()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.generateConfigurationFiles ( List< GluuSAMLTrustRelationship trustRelationships)
inline
177  {
178 
179  log.info(">>>>>>>>>> IN Shibboleth3ConfService.generateConfigurationFiles()...");
180 
181  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
182  throw new InvalidConfigurationException("Failed to update configuration due to undefined IDP root folder");
183  }
184 
185  String idpConfFolder = getIdpConfDir();
186  String idpMetadataFolder = getIdpMetadataDir();
187 
188  // Prepare data for files
189  initAttributes(trustRelationships);
190  HashMap<String, Object> trustParams = initTrustParamMap(trustRelationships);
191  HashMap<String, Object> attrParams = initAttributeParamMap(trustRelationships);
192  HashMap<String, Object> casParams = initCASParamMap();
193  HashMap<String, Object> attrResolverParams = initAttributeResolverParamMap();
194 
195  boolean result = (trustParams != null) && (attrParams != null) && (casParams != null) && (attrResolverParams != null);
196  if (!result) {
197  log.error(">>>>>>>>>> Shibboleth3ConfService.generateConfigurationFiles() - params preparation failed, break files generation");
198  return result;
199  }
200 
201 
202  VelocityContext context = prepareVelocityContext(trustParams, attrParams, casParams, attrResolverParams, idpMetadataFolder);
203 
204  // Generate metadata-providers.xml
205  String metadataProviders = templateService.generateConfFile(SHIB3_IDP_METADATA_PROVIDERS_FILE, context);
206  // Generate attribute-resolver.xml
207  String attributeResolver = templateService.generateConfFile(SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE, context);
208 
209  // Generate attribute-filter.xml
210  String attributeFilter = templateService.generateConfFile(SHIB3_IDP_ATTRIBUTE_FILTER_FILE, context);
211  // Generate relying-party.xml
212  String relyingParty = templateService.generateConfFile(SHIB3_IDP_RELYING_PARTY_FILE, context);
213  // Generate cas-protocol.xml
214  String casProtocol = templateService.generateConfFile(SHIB3_IDP_CAS_PROTOCOL_FILE, context);
215  // Generate shibboleth2.xml
216  String shibConfig = templateService.generateConfFile(SHIB3_SP_SHIBBOLETH2_FILE, context);
217  // Generate saml-nameid.xml
218  String samlnamedConfig = templateService.generateConfFile(SHIB3_SAML_NAMEID_FILE, context);
219  // Generate handler.xml
220  // String profileHandler = templateService.generateConfFile(SHIB3_IDP_PROFILE_HADLER, context);
221 
222  // Generate attribute-map.xml
223  // String attributeMap =
224  // templateService.generateConfFile(SHIB2_SP_ATTRIBUTE_MAP, context);
225 
226  // result = (metadataProviders != null) && (attributeFilter != null) && (attributeResolver != null) && (relyingParty != null) && (shibConfig != null) && (profileHandler != null);
227  result = (metadataProviders != null) && (attributeFilter != null) && (attributeResolver != null) && (relyingParty != null) && (casProtocol != null) && (shibConfig != null);
228 
229  // Write metadata-providers.xml
230  result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_METADATA_PROVIDERS_FILE, metadataProviders);
231  // Write attribute-resolver.xml
232  result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE, attributeResolver);
233  // Write attribute-filter.xml
234  result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_ATTRIBUTE_FILTER_FILE, attributeFilter);
235  // Write relying-party.xml
236  result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_RELYING_PARTY_FILE, relyingParty);
237  // Write cas-protocol.xml
238  result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_CAS_PROTOCOL_FILE, casProtocol);
239  // Write shibboleth2.xml
240  result &= templateService.writeConfFile(getSpShibboleth3FilePath(), shibConfig);
241  // Write saml-nameid.xml
242  result &= templateService.writeConfFile(idpConfFolder + SHIB3_SAML_NAMEID_FILE, samlnamedConfig);
243 
244  // Write handler.xml
245  // result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_PROFILE_HADLER, profileHandler);
246 
247  // Write attribute-map.xml
248  // result &= templateService.writeConfFile(spConfFolder +
249  // SHIB2_SP_ATTRIBUTE_MAP, attributeMap);
250 
251  log.info(">>>>>>>>>> LEAVING Shibboleth3ConfService.generateConfigurationFiles()...");
252 
253  return result;
254  }
static final String SHIB3_SAML_NAMEID_FILE
Definition: Shibboleth3ConfService.java:110
static final String SHIB3_IDP_RELYING_PARTY_FILE
Definition: Shibboleth3ConfService.java:101
void initAttributes(List< GluuSAMLTrustRelationship > trustRelationships)
Definition: Shibboleth3ConfService.java:259
String getSpShibboleth3FilePath()
Definition: Shibboleth3ConfService.java:881
VelocityContext prepareVelocityContext(HashMap< String, Object > trustParams, HashMap< String, Object > attrParams, HashMap< String, Object > casParams, HashMap< String, Object > attrResolverParams, String idpMetadataFolder)
Definition: Shibboleth3ConfService.java:547
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680
HashMap< String, Object > initTrustParamMap(List< GluuSAMLTrustRelationship > trustRelationships)
Definition: Shibboleth3ConfService.java:294
static final String SHIB3_IDP_CAS_PROTOCOL_FILE
Definition: Shibboleth3ConfService.java:103
HashMap< String, Object > initAttributeResolverParamMap()
Definition: Shibboleth3ConfService.java:521
static final String SHIB3_SP_SHIBBOLETH2_FILE
Definition: Shibboleth3ConfService.java:107
boolean writeConfFile(String confFile, String conf)
Definition: TemplateService.java:63
HashMap< String, Object > initAttributeParamMap(List< GluuSAMLTrustRelationship > trustRelationships)
Definition: Shibboleth3ConfService.java:437
TemplateService templateService
Definition: Shibboleth3ConfService.java:136
String getIdpConfDir()
Definition: Shibboleth3ConfService.java:676
HashMap< String, Object > initCASParamMap()
Definition: Shibboleth3ConfService.java:503
static final String SHIB3_IDP_METADATA_PROVIDERS_FILE
Definition: Shibboleth3ConfService.java:98
static final String SHIB3_IDP_ATTRIBUTE_FILTER_FILE
Definition: Shibboleth3ConfService.java:99
Logger log
Definition: Shibboleth3ConfService.java:139
static final String SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE
Definition: Shibboleth3ConfService.java:100
String generateConfFile(String template, VelocityContext context)
Definition: TemplateService.java:51

◆ generateIdpConfigurationFiles()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.generateIdpConfigurationFiles ( )
inline
1035  {
1036 
1037  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
1038  throw new InvalidConfigurationException("Failed to update configuration due to undefined IDP root folder");
1039  }
1040 
1041  String idpConfFolder = getIdpConfDir();
1042 
1043  // Prepare data for files
1044  VelocityContext context = new VelocityContext();
1045  String regx = "\\s*(=>|,|\\s)\\s*";// white spaces or comma
1046  String ldapUrls[] = appConfiguration.getIdpLdapServer().split(regx);
1047  String ldapUrl = "";
1048 
1049  if(ldapUrls != null) {
1050 
1051  for (String ldapServer : ldapUrls) {
1052  if(ldapUrl.length()>1) {
1053  ldapUrl = ldapUrl + " ";
1054  }
1055  ldapUrl = ldapUrl + appConfiguration.getIdpLdapProtocol() + "://" + ldapServer;
1056  }
1057 
1058  } else {
1059  ldapUrl = appConfiguration.getIdpLdapProtocol() + "://" + appConfiguration.getIdpLdapServer();
1060  }
1061 
1062  String host = ldapUrl;
1063  String base = appConfiguration.getBaseDN();
1064  String serviceUser = appConfiguration.getIdpBindDn();
1065  String serviceCredential = "";
1066  try {
1067  serviceCredential = encryptionService.decrypt(appConfiguration.getIdpBindPassword());
1068  } catch (EncryptionException e) {
1069  log.error("Failed to decrypt bindPassword", e);
1070  e.printStackTrace();
1071  }
1072  String userField = appConfiguration.getIdpUserFields();
1073  context.put("host", host);
1074  context.put("base", base);
1075  context.put("serviceUser", serviceUser);
1076  context.put("serviceCredential", serviceCredential);
1077  context.put("userField", userField);
1078 
1079  // Generate login.config
1080  String loginConfig = templateService.generateConfFile(SHIB3_IDP_LOGIN_CONFIG_FILE, context);
1081 
1082  boolean result = (loginConfig != null);
1083 
1084  // Write login.config
1085  result &= templateService.writeConfFile(idpConfFolder + SHIB3_IDP_LOGIN_CONFIG_FILE, loginConfig);
1086 
1087  return result;
1088  }
EncryptionService encryptionService
Definition: Shibboleth3ConfService.java:154
String decrypt(String encryptedString)
Definition: EncryptionService.java:34
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_IDP_LOGIN_CONFIG_FILE
Definition: Shibboleth3ConfService.java:122
boolean writeConfFile(String confFile, String conf)
Definition: TemplateService.java:63
TemplateService templateService
Definition: Shibboleth3ConfService.java:136
String getIdpConfDir()
Definition: Shibboleth3ConfService.java:676
Logger log
Definition: Shibboleth3ConfService.java:139
String generateConfFile(String template, VelocityContext context)
Definition: TemplateService.java:51

◆ generateMetadataFiles()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.generateMetadataFiles ( GluuSAMLTrustRelationship  gluuSP)
inline

Generate metadata files needed for appliance operations: gluuSP metadata and idp metadata.

1324  {
1325 
1326  log.info(">>>>>>>>>> IN Shibboleth3ConfService.generateMetadataFiles()...");
1327 
1328  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
1329  throw new InvalidConfigurationException("Failed to update configuration due to undefined IDP root folder");
1330  }
1331 
1332  String idpMetadataFolder = getIdpMetadataDir();
1333 
1334  // Prepare data for files
1335  VelocityContext context = new VelocityContext();
1336  String idpHost = appConfiguration.getIdpUrl();
1337 
1338  context.put("idpHost", idpHost);
1339  String domain = idpHost.replaceAll(":[0-9]*$", "").replaceAll("^.*?//", "");
1340  context.put("domain", domain);
1341 
1342  context.put("orgName", appConfiguration.getOrganizationName());
1343  context.put("orgShortName", appConfiguration.getOrganizationName());
1344 
1345  try {
1346 
1347  String idpSigningCertificate = FileUtils.readFileToString(new File(appConfiguration.getIdp3SigningCert())).replaceAll("-{5}.*?-{5}", "");
1348  context.put("idpSigningCertificate", idpSigningCertificate);
1349 
1350  } catch (IOException e) {
1351  log.error("Unable to get IDP 3 signing certificate from " + appConfiguration.getIdp3SigningCert(), e);
1352  e.printStackTrace();
1353  return false;
1354  }
1355 
1356  try {
1357 
1358  String idpEncryptionCertificate = FileUtils.readFileToString(new File(appConfiguration.getIdp3EncryptionCert())).replaceAll("-{5}.*?-{5}", "");
1359  context.put("idpEncryptionCertificate", idpEncryptionCertificate);
1360 
1361  } catch (IOException e) {
1362  log.error("Unable to get IDP 3 encryption certificate from " + appConfiguration.getIdp3EncryptionCert(), e);
1363  e.printStackTrace();
1364  return false;
1365  }
1366 
1367  try {
1368 
1369  String spCertificate = FileUtils.readFileToString(new File(appConfiguration.getGluuSpCert())).replaceAll("-{5}.*?-{5}", "");
1370 
1371  if (gluuSP.getUrl() == null || "".equals(gluuSP.getUrl())) {
1372  gluuSP.setUrl(appConfiguration.getApplianceUrl());
1373  }
1374 
1375  generateSpMetadataFile(gluuSP, spCertificate);
1376 
1377  } catch (IOException e) {
1378  log.error("Unable to get SP certificate from " + appConfiguration.getGluuSpCert(), e);
1379  e.printStackTrace();
1380  return false;
1381  }
1382 
1383  // Generate idp-metadata.xml
1384  String idpMetadata = templateService.generateConfFile(SHIB3_IDP_IDP_METADATA_FILE, context);
1385 
1386  boolean result = (idpMetadata != null);
1387  // String idpMetadataName = String.format(SHIB3_IDP_METADATA_FILE_PATTERN, StringHelper.removePunctuation(organizationService.getOrganizationInum()));
1388 
1389  // Write idp-metadata.xml
1390  result &= templateService.writeConfFile(idpMetadataFolder + SHIB3_IDP_IDP_METADATA_FILE, idpMetadata);
1391 
1392  log.info(">>>>>>>>>> LEAVING Shibboleth3ConfService.generateMetadataFiles()...");
1393 
1394  return result;
1395  }
static final String SHIB3_IDP_IDP_METADATA_FILE
Definition: Shibboleth3ConfService.java:104
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680
boolean writeConfFile(String confFile, String conf)
Definition: TemplateService.java:63
TemplateService templateService
Definition: Shibboleth3ConfService.java:136
boolean generateSpMetadataFile(GluuSAMLTrustRelationship trustRelationship, String certificate)
Definition: Shibboleth3ConfService.java:813
Logger log
Definition: Shibboleth3ConfService.java:139
String generateConfFile(String template, VelocityContext context)
Definition: TemplateService.java:51

◆ generateSpAttributeMapFile()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.generateSpAttributeMapFile ( GluuSAMLTrustRelationship  trustRelationship)
inline
797  {
798 
799  List<GluuSAMLTrustRelationship> trustRelationships = Arrays.asList(trustRelationship);
800  initAttributes(trustRelationships);
801  HashMap<String, Object> attrParams = initAttributeParamMap(trustRelationships);
802 
803  if (attrParams == null) {
804  return null;
805  }
806 
807  VelocityContext context = prepareVelocityContext(null, attrParams, null, null, null);
808  String spAttributeMap = templateService.generateConfFile(SHIB3_SP_ATTRIBUTE_MAP_FILE, context);
809 
810  return spAttributeMap;
811  }
void initAttributes(List< GluuSAMLTrustRelationship > trustRelationships)
Definition: Shibboleth3ConfService.java:259
VelocityContext prepareVelocityContext(HashMap< String, Object > trustParams, HashMap< String, Object > attrParams, HashMap< String, Object > casParams, HashMap< String, Object > attrResolverParams, String idpMetadataFolder)
Definition: Shibboleth3ConfService.java:547
HashMap< String, Object > initAttributeParamMap(List< GluuSAMLTrustRelationship > trustRelationships)
Definition: Shibboleth3ConfService.java:437
TemplateService templateService
Definition: Shibboleth3ConfService.java:136
static final String SHIB3_SP_ATTRIBUTE_MAP_FILE
Definition: Shibboleth3ConfService.java:106
String generateConfFile(String template, VelocityContext context)
Definition: TemplateService.java:51

◆ generateSpMetadataFile()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.generateSpMetadataFile ( GluuSAMLTrustRelationship  trustRelationship,
String  certificate 
)
inline
813  {
814 
815  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
816  throw new InvalidConfigurationException("Failed to generate SP meta-data file due to undefined IDP root folder");
817  }
818 
819  String idpMetadataFolder = getIdpMetadataDir();
820 
821  // Generate sp-metadata.xml meta-data file
822  String spMetadataFileContent = generateSpMetadataFileContent( trustRelationship, certificate);
823  if (StringHelper.isEmpty(spMetadataFileContent)) {
824  return false;
825  }
826 
827  if (StringHelper.isEmpty(trustRelationship.getUrl())) {
828  log.error("Trust relationship URL is empty");
829  return false;
830  }
831 
832  return templateService.writeConfFile(idpMetadataFolder + trustRelationship.getSpMetaDataFN(), spMetadataFileContent);
833  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680
String generateSpMetadataFileContent(GluuSAMLTrustRelationship trustRelationship, String certificate)
Definition: Shibboleth3ConfService.java:835
boolean writeConfFile(String confFile, String conf)
Definition: TemplateService.java:63
TemplateService templateService
Definition: Shibboleth3ConfService.java:136
Logger log
Definition: Shibboleth3ConfService.java:139

◆ generateSpMetadataFileContent()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.generateSpMetadataFileContent ( GluuSAMLTrustRelationship  trustRelationship,
String  certificate 
)
inline
835  {
836 
837  VelocityContext context = new VelocityContext();
838  context.put("certificate", certificate);
839  context.put("trustRelationship", trustRelationship);
840  context.put("entityId", Util.encodeString(StringHelper.removePunctuation(trustRelationship.getInum())));
841  context.put("spHost", trustRelationship.getUrl().replaceFirst("/$", ""));
842 
843  // Generate sp-metadata.xml meta-data file
844  String spMetadataFileContent = templateService.generateConfFile(SHIB3_IDP_SP_METADATA_FILE, context);
845  return spMetadataFileContent;
846  }
static final String SHIB3_IDP_SP_METADATA_FILE
Definition: Shibboleth3ConfService.java:105
TemplateService templateService
Definition: Shibboleth3ConfService.java:136
String generateConfFile(String template, VelocityContext context)
Definition: TemplateService.java:51

◆ getConfigurationFileForSubversion()

SubversionFile org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getConfigurationFileForSubversion ( GluuSAMLTrustRelationship  trustRelationship)
inline
974  {
975 
976  if (trustRelationship.getSpMetaDataFN() == null) {
977  return null;
978  }
979 
980  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
981  throw new InvalidConfigurationException("Failed to create SubversionFile file due to undefined IDP root folder");
982  }
983 
984  String idpMetadataFolder = getIdpMetadataDir();
985 
986  return new SubversionFile(SHIB3_IDP + File.separator + SHIB3_IDP_METADATA_FOLDER, idpMetadataFolder + trustRelationship.getSpMetaDataFN());
987  }
static final String SHIB3_IDP
Definition: Shibboleth3ConfService.java:91
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_IDP_METADATA_FOLDER
Definition: Shibboleth3ConfService.java:95
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ getConfigurationFilesForSubversion()

List<SubversionFile> org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getConfigurationFilesForSubversion ( List< GluuSAMLTrustRelationship trustRelationships)
inline
942  {
943 
944  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
945  throw new InvalidConfigurationException("Failed to create SubversionFile file due to undefined IDP root folder");
946  }
947 
948  String idpConfFolder = getIdpConfDir();
949  String idpMetadataFolder = getIdpMetadataDir();
950  String idpMetadataCredentialsFolder = appConfiguration.getShibboleth3IdpRootDir() + File.separator + SHIB3_IDP_METADATA_CREDENTIALS_FOLDER + File.separator;
951  String spConfFolder = appConfiguration.getShibboleth3SpConfDir() + File.separator;
952 
953  List<SubversionFile> subversionFiles = new ArrayList<SubversionFile>();
954  subversionFiles.add(new SubversionFile(SHIB3_IDP, idpConfFolder + SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE));
955  subversionFiles.add(new SubversionFile(SHIB3_IDP, idpConfFolder + SHIB3_IDP_ATTRIBUTE_FILTER_FILE));
956  subversionFiles.add(new SubversionFile(SHIB3_IDP, idpConfFolder + SHIB3_IDP_RELYING_PARTY_FILE));
957  subversionFiles.add(new SubversionFile(SHIB3_SP, spConfFolder + SHIB3_SP_ATTRIBUTE_MAP_FILE));
958  subversionFiles.add(new SubversionFile(SHIB3_SP, spConfFolder + SHIB3_SP_SHIBBOLETH2_FILE));
959 
960  for (GluuSAMLTrustRelationship trustRelationship : trustRelationships) {
961  if (trustService.getTrustContainerFederation(trustRelationship) == null) {
962  subversionFiles.add(new SubversionFile(SHIB3_IDP + File.separator + SHIB3_IDP_METADATA_FOLDER, idpMetadataFolder
963  + trustRelationship.getSpMetaDataFN()));
964  }
965  if (trustRelationship.getMetadataFilters().containsKey("signatureValidation")) {
966  subversionFiles.add(new SubversionFile(SHIB3_IDP + File.separator + SHIB3_IDP_METADATA_CREDENTIALS_FOLDER,
967  idpMetadataCredentialsFolder + StringHelper.removePunctuation(trustRelationship.getInum())));
968  }
969  }
970 
971  return subversionFiles;
972  }
static final String SHIB3_IDP
Definition: Shibboleth3ConfService.java:91
static final String SHIB3_IDP_RELYING_PARTY_FILE
Definition: Shibboleth3ConfService.java:101
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_SP
Definition: Shibboleth3ConfService.java:92
static final String SHIB3_IDP_METADATA_FOLDER
Definition: Shibboleth3ConfService.java:95
TrustService trustService
Definition: Shibboleth3ConfService.java:172
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680
static final String SHIB3_SP_SHIBBOLETH2_FILE
Definition: Shibboleth3ConfService.java:107
static final String SHIB3_IDP_METADATA_CREDENTIALS_FOLDER
Definition: Shibboleth3ConfService.java:96
GluuSAMLTrustRelationship getTrustContainerFederation(GluuSAMLTrustRelationship trustRelationship)
Definition: TrustService.java:425
String getIdpConfDir()
Definition: Shibboleth3ConfService.java:676
static final String SHIB3_SP_ATTRIBUTE_MAP_FILE
Definition: Shibboleth3ConfService.java:106
static final String SHIB3_IDP_ATTRIBUTE_FILTER_FILE
Definition: Shibboleth3ConfService.java:99
static final String SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE
Definition: Shibboleth3ConfService.java:100

◆ getIdpConfDir()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getIdpConfDir ( )
inline
676  {
677  return appConfiguration.getShibboleth3IdpRootDir() + File.separator + SHIB3_IDP_CONF_FOLDER + File.separator;
678  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_IDP_CONF_FOLDER
Definition: Shibboleth3ConfService.java:94

◆ getIdpMetadataCredentialsDir()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getIdpMetadataCredentialsDir ( )
inline
688  {
689  return appConfiguration.getShibboleth3IdpRootDir() + File.separator + SHIB3_IDP_METADATA_CREDENTIALS_FOLDER + File.separator;
690  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_IDP_METADATA_CREDENTIALS_FOLDER
Definition: Shibboleth3ConfService.java:96

◆ getIdpMetadataDir()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getIdpMetadataDir ( )
inline
680  {
681  return appConfiguration.getShibboleth3IdpRootDir() + File.separator + SHIB3_IDP_METADATA_FOLDER + File.separator;
682  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_IDP_METADATA_FOLDER
Definition: Shibboleth3ConfService.java:95

◆ getIdpMetadataFilePath()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getIdpMetadataFilePath ( )
inline
614  {
615 
616  String filePath = getIdpMetadataDir() + SHIB3_IDP_IDP_METADATA_FILE;
617 
618  return filePath;
619 
620  /*
621  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
622  throw new InvalidConfigurationException("Failed to find IDP metadata file due to undefined IDP root folder");
623  }
624 
625  String idpConfFolder = appConfiguration.getShibboleth3IdpRootDir() + File.separator + SHIB3_IDP_CONF_FOLDER + File.separator;
626 
627  File relyingPartyFile = new File(idpConfFolder + SHIB3_IDP_RELYING_PARTY_FILE);
628  if (!relyingPartyFile.exists()) {
629  log.error("Failed to find IDP metadata file name because relaying party file '{}' doesn't exist", relyingPartyFile.getAbsolutePath());
630  return null;
631  }
632 
633  InputStream is = null;
634  InputStreamReader isr = null;
635  Document xmlDocument = null;
636  try {
637  is = FileUtils.openInputStream(relyingPartyFile);
638  isr = new InputStreamReader(is, "UTF-8");
639  try {
640  xmlDocument = xmlService.getXmlDocument(new InputSource(isr));
641  } catch (Exception ex) {
642  log.error("Failed to parse relying party file '{}'", relyingPartyFile.getAbsolutePath(), ex);
643  ex.printStackTrace();
644  }
645  } catch (IOException ex) {
646  log.error("Failed to read relying party file '{}'", relyingPartyFile.getAbsolutePath(), ex);
647  ex.printStackTrace();
648  } finally {
649  IOUtils.closeQuietly(isr);
650  IOUtils.closeQuietly(is);
651  }
652 
653  if (xmlDocument == null) {
654  return null;
655  }
656 
657  XPathFactory factory = XPathFactory.newInstance();
658  XPath xPath = factory.newXPath();
659 
660  String filePath = null;
661  try {
662  filePath = xPath.compile("/RelyingPartyGroup/MetadataProvider[@id='ShibbolethMetadata']/MetadataProvider[@id='IdPMD']/MetadataResource/@file").evaluate(xmlDocument);
663  } catch (XPathExpressionException ex) {
664  log.error("Failed to find IDP metadata file in relaying party file '{}'", relyingPartyFile.getAbsolutePath(), ex);
665  ex.printStackTrace();
666  }
667 
668  if (filePath == null) {
669  log.error("Failed to find IDP metadata file in relaying party file '{}'", relyingPartyFile.getAbsolutePath());
670  }
671 
672  return filePath;
673  */
674  }
static final String SHIB3_IDP_IDP_METADATA_FILE
Definition: Shibboleth3ConfService.java:104
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ getIdpMetadataTempDir()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getIdpMetadataTempDir ( )
inline
684  {
685  return appConfiguration.getShibboleth3IdpRootDir() + File.separator + Shibboleth3ConfService.SHIB3_IDP_TEMPMETADATA_FOLDER + File.separator;
686  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151

◆ getMetadataFilePath()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getMetadataFilePath ( String  metadataFileName)
inline
1241  {
1242 
1243  if (appConfiguration.getShibboleth3FederationRootDir() == null) {
1244  throw new InvalidConfigurationException("Failed to return meta-data file due to undefined federation root folder");
1245  }
1246 
1247  String metadataFolderName = getIdpMetadataDir();
1248  File metadataFolder = new File(metadataFolderName);
1249  if (!metadataFolder.exists()) {
1250  metadataFolder.mkdirs();
1251  }
1252 
1253  return metadataFolderName + metadataFileName;
1254  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ getNewMetadataFileName()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getNewMetadataFileName ( GluuSAMLFederationProposal  federationProposal,
List< GluuSAMLFederationProposal allFederationProposals 
)
inline
1256  {
1257 
1258  String relationshipInum = StringHelper.removePunctuation(federationProposal.getInum());
1259  return String.format(SHIB3_METADATA_FILE_PATTERN, relationshipInum);
1260  }
static final String SHIB3_METADATA_FILE_PATTERN
Definition: Shibboleth3ConfService.java:124

◆ getPublicCertificate() [1/2]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getPublicCertificate ( byte []  cert)
inline
895  {
896  if (cert == null) {
897  return null;
898  }
899 
900  ByteArrayInputStream bis = new ByteArrayInputStream(cert);
901  try {
902  return getPublicCertificate(bis);
903  } finally {
904  IOUtils.closeQuietly(bis);
905  }
906  }
String getPublicCertificate(byte[] cert)
Definition: Shibboleth3ConfService.java:895

◆ getPublicCertificate() [2/2]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getPublicCertificate ( InputStream  is)
inline
908  {
909  List<String> lines = null;
910  try {
911  lines = IOUtils.readLines(new InputStreamReader(is, "US-ASCII"));
912  } catch (IOException ex) {
913  log.error("Failed to read public key file", ex);
914  ex.printStackTrace();
915  }
916 
917  StringBuilder sb = new StringBuilder();
918 
919  boolean keyPart = false;
920  for (String line : lines) {
921  if (line.startsWith(PUBLIC_CERTIFICATE_END_LINE)) {
922  break;
923  }
924  if (keyPart) {
925  if (sb.length() > 0) {
926  sb.append("\n");
927  }
928  sb.append(line);
929  }
930  if (line.startsWith(PUBLIC_CERTIFICATE_START_LINE)) {
931  keyPart = true;
932  }
933  }
934 
935  if (sb.length() == 0) {
936  return null;
937  }
938 
939  return sb.toString();
940  }
static final String PUBLIC_CERTIFICATE_END_LINE
Definition: Shibboleth3ConfService.java:116
Logger log
Definition: Shibboleth3ConfService.java:139
static final String PUBLIC_CERTIFICATE_START_LINE
Definition: Shibboleth3ConfService.java:115

◆ getSpAttributeMapFilePath()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpAttributeMapFilePath ( )
inline
875  {
876 
877  String spConfFolder = appConfiguration.getShibboleth3SpConfDir() + File.separator;
878  return spConfFolder + SHIB3_SP_ATTRIBUTE_MAP_FILE;
879  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_SP_ATTRIBUTE_MAP_FILE
Definition: Shibboleth3ConfService.java:106

◆ getSpMetadataFilePath()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpMetadataFilePath ( String  spMetaDataFN)
inline
692  {
693 
694  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
695  throw new InvalidConfigurationException("Failed to return SP meta-data file due to undefined IDP root folder");
696  }
697 
698  String idpMetadataFolder = getIdpMetadataDir();
699  return idpMetadataFolder + spMetaDataFN;
700  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ getSpNewMetadataFileName() [1/2]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpNewMetadataFileName ( GluuSAMLTrustRelationship  trustRel)
inline
703  {
704  return getSpNewMetadataFileName(trustRel.getInum());
705  }
String getSpNewMetadataFileName(GluuSAMLTrustRelationship trustRel)
Definition: Shibboleth3ConfService.java:703

◆ getSpNewMetadataFileName() [2/2]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpNewMetadataFileName ( String  inum)
inline
707  {
708 
709  String relationshipInum = StringHelper.removePunctuation(inum);
710  return String.format(SHIB3_SP_METADATA_FILE_PATTERN, relationshipInum);
711  }
static final String SHIB3_SP_METADATA_FILE_PATTERN
Definition: Shibboleth3ConfService.java:112

◆ getSpReadMeResourceName()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpReadMeResourceName ( )
inline
887  {
888  return SHIB3_SP_READ_ME;
889  }
static final String SHIB3_SP_READ_ME
Definition: Shibboleth3ConfService.java:108

◆ getSpReadMeWindowsResourceName()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpReadMeWindowsResourceName ( )
inline
891  {
893  }
static final String SHIB3_SP_READ_ME_WINDOWS
Definition: Shibboleth3ConfService.java:109

◆ getSpShibboleth3FilePath()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getSpShibboleth3FilePath ( )
inline
881  {
882 
883  String spConfFolder = appConfiguration.getShibboleth3SpConfDir() + File.separator;
884  return spConfFolder + SHIB3_SP_SHIBBOLETH2_FILE;
885  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_SP_SHIBBOLETH2_FILE
Definition: Shibboleth3ConfService.java:107

◆ getTempMetadataFilename()

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.getTempMetadataFilename ( String  idpMetadataFolder,
String  fileName 
)
inlineprivate
756  {
757 
758  synchronized (getClass()) {
759  File possibleTemp = new File(fileName);
760  do {
761  possibleTemp = new File(idpMetadataFolder + fileName + INumGenerator.generate(2));
762  } while (possibleTemp.exists());
763  return possibleTemp.getName();
764  }
765  }

◆ initAttributeParamMap()

HashMap<String, Object> org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.initAttributeParamMap ( List< GluuSAMLTrustRelationship trustRelationships)
inlineprivate
437  {
438 
439  HashMap<String, Object> attrParams = new HashMap<String, Object>();
440 
441  // Collect attributes
442  List<GluuAttribute> attributes = new ArrayList<GluuAttribute>();
443  List<String> attributeNames = new ArrayList<String>();
444 
445  for (GluuSAMLTrustRelationship trustRelationship : trustRelationships) {
446 
447  for (GluuCustomAttribute customAttribute : trustRelationship.getReleasedCustomAttributes()) {
448 
449  GluuAttribute metadata = customAttribute.getMetadata();
450 
451  if (!attributes.contains(metadata)) {
452 
453  attributes.add(metadata);
454  String attributeName = metadata.getName();
455  attributeNames.add(attributeName);
456  }
457  }
458  }
459 
460  SchemaEntry schemaEntry = shemaService.getSchema();
461  List<AttributeTypeDefinition> attributeTypes = shemaService.getAttributeTypeDefinitions(schemaEntry, attributeNames);
462 
463  Map<String, String> attributeSAML1Strings = new HashMap<String, String>();
464  Map<String, String> attributeSAML2Strings = new HashMap<String, String>();
465 
466  for (GluuAttribute metadata : attributes) {
467 
468  String attributeName = metadata.getName();
469 
470  AttributeTypeDefinition attributeTypeDefinition = shemaService.getAttributeTypeDefinition(attributeTypes, attributeName);
471  if (attributeTypeDefinition == null) {
472  log.error("Failed to get OID for attribute name {}", attributeName);
473  return null;
474  }
475 
476  //
477  // urn::dir:attribute-def:$attribute.name
478  // urn:oid:$attrParams.attributeOids.get($attribute.name)
479  String saml1String = metadata.getSaml1Uri();
480  if (StringHelper.isEmpty(saml1String)) {
481 
482  boolean standard = metadata.isCustom() || StringHelper.isEmpty(metadata.getUrn()) || (!StringHelper.isEmpty(metadata.getUrn()) && metadata.getUrn().startsWith("urn:gluu:dir:attribute-def:"));
483  saml1String = String.format("urn:%s:dir:attribute-def:%s", standard ? "gluu" : "mace", attributeName);
484  }
485 
486  attributeSAML1Strings.put(attributeName, saml1String);
487  String saml2String = metadata.getSaml2Uri();
488 
489  if (StringHelper.isEmpty(saml2String)) {
490  saml2String = String.format("urn:oid:%s", attributeTypeDefinition.getOID());
491  }
492 
493  attributeSAML2Strings.put(attributeName, saml2String);
494  }
495 
496  attrParams.put("attributes", attributes);
497  attrParams.put("attributeSAML1Strings", attributeSAML1Strings);
498  attrParams.put("attributeSAML2Strings", attributeSAML2Strings);
499 
500  return attrParams;
501  }
SchemaService shemaService
Definition: Shibboleth3ConfService.java:169
Logger log
Definition: Shibboleth3ConfService.java:139

◆ initAttributeResolverParamMap()

HashMap<String, Object> org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.initAttributeResolverParamMap ( )
inline
521  {
522  HashMap<String, Object> attributeResolverParams = new HashMap<String, Object>();
523 
524  List<NameIdConfig> nameIdConfigs = new ArrayList<NameIdConfig>();
525  Map<String, GluuAttribute> nameIdAttributes = new HashMap<String, GluuAttribute>();
526 
527  final LdapOxTrustConfiguration conf = configurationFactory.loadConfigurationFromLdap();
528  AttributeResolverConfiguration attributeResolverConfiguration = conf.getAttributeResolverConfig();
529  if ((attributeResolverConfiguration != null) && (attributeResolverConfiguration.getNameIdConfigs() != null)) {
530  for (NameIdConfig nameIdConfig : attributeResolverConfiguration.getNameIdConfigs()) {
531  if (StringHelper.isNotEmpty(nameIdConfig.getSourceAttribute()) && nameIdConfig.isEnabled()) {
532  String attributeName = nameIdConfig.getSourceAttribute();
533  GluuAttribute attribute = attributeService.getAttributeByName(attributeName);
534 
535  nameIdConfigs.add(nameIdConfig);
536  nameIdAttributes.put(attributeName, attribute);
537  }
538  }
539  }
540 
541  attributeResolverParams.put("configs", nameIdConfigs);
542  attributeResolverParams.put("attributes", nameIdAttributes);
543 
544  return attributeResolverParams;
545  }
ConfigurationFactory configurationFactory
Definition: Shibboleth3ConfService.java:148
LdapOxTrustConfiguration loadConfigurationFromLdap(String... returnAttributes)
Definition: ConfigurationFactory.java:417
AttributeService attributeService
Definition: Shibboleth3ConfService.java:133

◆ initAttributes()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.initAttributes ( List< GluuSAMLTrustRelationship trustRelationships)
inlineprivate
259  {
260 
261  List<GluuAttribute> attributes = attributeService.getAllPersonAttributes(UserRole.ADMIN);
262  HashMap<String, GluuAttribute> attributesByDNs = attributeService.getAttributeMapByDNs(attributes);
263 
264  GluuAttribute uid = attributeService.getAttributeByName(OxConstants.UID);
265 
266  // Load attributes definition
267  for (GluuSAMLTrustRelationship trustRelationship : trustRelationships) {
268 
269  // Add first attribute uid
270  List<String> oldAttributes = trustRelationship.getReleasedAttributes();
271  List<String> releasedAttributes = new ArrayList<String>();
272 
273  if (oldAttributes != null) {
274  releasedAttributes.addAll(oldAttributes);
275  }
276 
277  if (uid != null) {
278  if (releasedAttributes.remove(uid.getDn())) {
279  releasedAttributes.add(0, uid.getDn());
280  }
281  }
282 
283  // Resolve custom attributes by DNs
284  trustRelationship.setReleasedCustomAttributes(attributeService.getCustomAttributesByAttributeDNs(releasedAttributes, attributesByDNs));
285 
286  // Set attribute meta-data
287  attributeService.setAttributeMetadata(trustRelationship.getReleasedCustomAttributes(), attributes);
288  }
289  }
List< GluuCustomAttribute > getCustomAttributesByAttributeDNs(List< String > attributeDNs, HashMap< String, GluuAttribute > attributesByDNs)
Definition: AttributeService.java:576
List< GluuAttribute > getAllPersonAttributes(UserRole gluuUserRole)
Definition: AttributeService.java:74
HashMap< String, GluuAttribute > getAttributeMapByDNs(List< GluuAttribute > attributes)
Definition: AttributeService.java:595
AttributeService attributeService
Definition: Shibboleth3ConfService.java:133
void setAttributeMetadata(List< GluuCustomAttribute > customAttributes, List< GluuAttribute > attributes)
Definition: AttributeService.java:553

◆ initCASParamMap()

HashMap<String, Object> org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.initCASParamMap ( )
inlineprivate
503  {
504  HashMap<String, Object> casParams = new HashMap<String, Object>();
505  try {
506  ShibbolethCASProtocolConfiguration configuration = casService.loadCASConfiguration();
507  if (configuration != null) {
508  log.info("add ShibbolethCASProtocolConfiguration parameters");
509  casParams.put("enabled", configuration.isEnabled());
510  casParams.put("extended", configuration.isExtended());
511  casParams.put("enableToProxyPatterns", configuration.isEnableToProxyPatterns());
512  casParams.put("authorizedToProxyPattern", configuration.getAuthorizedToProxyPattern());
513  casParams.put("unauthorizedToProxyPattern", configuration.getAuthorizedToProxyPattern());
514  }
515  } catch (Exception e) {
516  log.error("initCASParamMap() exception", e);
517  }
518  return casParams;
519  }
CASService casService
Definition: Shibboleth3ConfService.java:166
ShibbolethCASProtocolConfiguration loadCASConfiguration()
Definition: CASService.java:52
Logger log
Definition: Shibboleth3ConfService.java:139

◆ initTrustParamMap()

HashMap<String, Object> org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.initTrustParamMap ( List< GluuSAMLTrustRelationship trustRelationships)
inlineprivate
294  {
295 
296  log.trace("Starting trust parameters map initialization.");
297 
298  HashMap<String, Object> trustParams = new HashMap<String, Object>();
299 
300  // Metadata signature verification engines
301  // https://wiki.shibboleth.net/confluence/display/SHIB2/IdPTrustEngine
302  List<Map<String, String>> trustEngines = new ArrayList<Map<String, String>>();
303 
304  // the map of {inum,number} for easy naming of relying parties.
305  Map<String, String> trustIds = new HashMap<String, String>();
306 
307  // Trust relationships that are part of some federation
308  List<GluuSAMLTrustRelationship> deconstructed = new ArrayList<GluuSAMLTrustRelationship>();
309 
310  // the map of {inum,number} for easy naming of federated relying
311  // parties.
312  Map<String, String> deconstructedIds = new HashMap<String, String>();
313 
314  // the map of {inum, {inum, inum, inum...}} describing the federations
315  // and TRs defined from them.
316  Map<String, List<String>> deconstructedMap = new HashMap<String, List<String>>();
317 
318  // entityIds defined in each TR.
319  Map<String, List<String>> trustEntityIds = new HashMap<String, List<String>>();
320 
321  int id = 1;
322  for (GluuSAMLTrustRelationship trustRelationship : trustRelationships) {
323 
324  boolean isPartOfFederation = !(trustRelationship.getSpMetaDataSourceType().equals(GluuMetadataSourceType.URI) || trustRelationship.getSpMetaDataSourceType().equals(GluuMetadataSourceType.FILE));
325 
326  if (!isPartOfFederation) {
327 
328  // Set Id
329  trustIds.put(trustRelationship.getInum(), String.valueOf(id++));
330 
331  // Set entityId
332  String idpMetadataFolder = getIdpMetadataDir();
333 
334  File metadataFile = new File(idpMetadataFolder + trustRelationship.getSpMetaDataFN());
335  List<String> entityIds = SAMLMetadataParser.getEntityIdFromMetadataFile(metadataFile);
336 
337  // if for some reason metadata is corrupted or missing - mark trust relationship INACTIVE
338  // user will be able to fix this in UI
339  if (entityIds == null) {
340  trustRelationship.setStatus(GluuStatus.INACTIVE);
341  trustService.updateTrustRelationship(trustRelationship);
342  continue;
343  }
344 
345  trustEntityIds.put(trustRelationship.getInum(), entityIds);
346 
347  try {
348 
349  filterService.parseFilters(trustRelationship);
351 
352  } catch (Exception e) {
353  log.error("Failed to parse stored metadataFilter configuration for trustRelationship " + trustRelationship.getDn(), e);
354  e.printStackTrace();
355  }
356 
357  if (trustRelationship.getMetadataFilters().get("signatureValidation") != null) {
358 
359  Map<String, String> trustEngine = new HashMap<String, String>();
360 
361  trustEngine.put("id", "Trust" + StringHelper.removePunctuation(trustRelationship.getInum()));
362 
363  trustEngine.put("certPath", getIdpMetadataDir() + "credentials" + File.separator
364  + trustRelationship.getMetadataFilters().get("signatureValidation").getFilterCertFileName());
365 
366  trustEngines.add(trustEngine);
367  }
368 
369  // If there is an intrusive filter - push it to the end of the list.
370  if (trustRelationship.getGluuSAMLMetaDataFilter() != null) {
371 
372  List<String> filtersList = new ArrayList<String>();
373  String entityRoleWhiteList = null;
374  for (String filterXML : trustRelationship.getGluuSAMLMetaDataFilter()) {
375 
376  Document xmlDocument;
377 
378  try {
379 
380  xmlDocument = xmlService.getXmlDocument(filterXML.getBytes());
381 
382  } catch (Exception e) {
383  log.error("GluuSAMLMetaDataFilter contains invalid value.", e);
384  e.printStackTrace();
385  continue;
386  }
387 
388  if (xmlDocument.getFirstChild().getAttributes().getNamedItem("xsi:type").getNodeValue().equals(FilterService.ENTITY_ROLE_WHITE_LIST_TYPE)) {
389  entityRoleWhiteList = filterXML;
390  continue;
391  }
392 
393  filtersList.add(filterXML);
394  }
395 
396  if (entityRoleWhiteList != null) {
397  filtersList.add(entityRoleWhiteList);
398  }
399 
400  trustRelationship.setGluuSAMLMetaDataFilter(filtersList);
401  }
402 
403  } else {
404  // add Part Of Federation
405  String federationInum = trustService.getTrustContainerFederation(trustRelationship).getInum();
406 
407  if (deconstructedMap.get(federationInum) == null) {
408  deconstructedMap.put(federationInum, new ArrayList<String>());
409  }
410 
411  deconstructedMap.get(federationInum).add(trustRelationship.getEntityId());
412  deconstructed.add(trustRelationship);
413  deconstructedIds.put(trustRelationship.getEntityId(), String.valueOf(id++));
414  }
415  }
416 
417  for (String trustRelationshipInum : trustEntityIds.keySet()) {
418  List<String> federatedSites = deconstructedMap.get(trustRelationshipInum);
419  if (federatedSites != null) {
420  trustEntityIds.get(trustRelationshipInum).removeAll(federatedSites);
421  }
422  }
423 
424  trustParams.put("idpCredentialsPath", getIdpMetadataDir() + "credentials" + File.separator);
425 
426  trustParams.put("deconstructed", deconstructed);
427  trustParams.put("deconstructedIds", deconstructedIds);
428 
429  trustParams.put("trustEngines", trustEngines);
430  trustParams.put("trusts", trustRelationships);
431  trustParams.put("trustIds", trustIds);
432  trustParams.put("trustEntityIds", trustEntityIds);
433 
434  return trustParams;
435  }
String getInum()
Definition: GluuSAMLTrustRelationship.java:300
XmlService xmlService
Definition: Shibboleth3ConfService.java:157
TrustService trustService
Definition: Shibboleth3ConfService.java:172
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680
GluuSAMLTrustRelationship getTrustContainerFederation(GluuSAMLTrustRelationship trustRelationship)
Definition: TrustService.java:425
void updateTrustRelationship(GluuSAMLTrustRelationship trustRelationship)
Definition: TrustService.java:111
FilterService filterService
Definition: Shibboleth3ConfService.java:142
void parseFilters(GluuSAMLTrustRelationship trustRelationship)
Definition: FilterService.java:199
ProfileConfigurationService profileConfigurationService
Definition: Shibboleth3ConfService.java:160
Logger log
Definition: Shibboleth3ConfService.java:139
void parseProfileConfigurations(GluuSAMLTrustRelationship trustRelationship)
Definition: ProfileConfigurationService.java:162

◆ isCorrectMetadataFile()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.isCorrectMetadataFile ( String  spMetaDataFN)
inline
1215  {
1216 
1217  if (appConfiguration.getShibboleth3FederationRootDir() == null) {
1218  throw new InvalidConfigurationException("Failed to check meta-data file due to undefined federation root folder");
1219  }
1220 
1221  String metadataFolder = getIdpMetadataDir();
1222  File metadataFile = new File(metadataFolder + spMetaDataFN);
1223  List<String> entityId = SAMLMetadataParser.getEntityIdFromMetadataFile(metadataFile);
1224  return (entityId != null) && !entityId.isEmpty();
1225  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ isCorrectSpMetadataFile()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.isCorrectSpMetadataFile ( String  spMetadataFileName)
inline
862  {
863 
864  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
865  throw new InvalidConfigurationException("Failed to check SP meta-data file due to undefined IDP root folder");
866  }
867 
868  String idpMetadataFolder = getIdpMetadataDir();
869  File metadataFile = new File(idpMetadataFolder + spMetadataFileName);
870  List<String> entityId = SAMLMetadataParser.getSpEntityIdFromMetadataFile(metadataFile);
871 
872  return (entityId != null) && !entityId.isEmpty();
873  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ isFederation()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.isFederation ( GluuSAMLTrustRelationship  trustRelationship)
inline

Analyzes trustRelationship metadata to find out if it is federation.

著者
�Oleksiy Tataryn�
引数
trustRelationship
戻り値
1523  {
1524  //TODO: optimize this method. should not take so long
1525  return isFederationMetadata(trustRelationship.getSpMetaDataFN());
1526  }
boolean isFederationMetadata(String spMetaDataFN)
Definition: Shibboleth3ConfService.java:989

◆ isFederationMetadata()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.isFederationMetadata ( String  spMetaDataFN)
inline
989  {
990 
991  if (spMetaDataFN == null) {
992  return false;
993  }
994 
995  File spMetaDataFile = new File(getSpMetadataFilePath(spMetaDataFN));
996  InputStream is = null;
997  InputStreamReader isr = null;
998  Document xmlDocument = null;
999 
1000  try {
1001  is = FileUtils.openInputStream(spMetaDataFile);
1002  isr = new InputStreamReader(is, "UTF-8");
1003  try {
1004  xmlDocument = xmlService.getXmlDocument(new InputSource(isr));
1005  } catch (Exception ex) {
1006  log.error("Failed to parse metadata file '{}'", spMetaDataFile.getAbsolutePath(), ex);
1007  ex.printStackTrace();
1008  }
1009  } catch (IOException ex) {
1010  log.error("Failed to read metadata file '{}'", spMetaDataFile.getAbsolutePath(), ex);
1011  ex.printStackTrace();
1012  } finally {
1013  IOUtils.closeQuietly(isr);
1014  IOUtils.closeQuietly(is);
1015  }
1016 
1017  if (xmlDocument == null) {
1018  return false;
1019  }
1020 
1021  XPathFactory factory = XPathFactory.newInstance();
1022  XPath xPath = factory.newXPath();
1023 
1024  String federationTag = null;
1025  try {
1026  federationTag = xPath.compile("count(//*[local-name() = 'EntitiesDescriptor'])").evaluate(xmlDocument);
1027  } catch (XPathExpressionException ex) {
1028  log.error("Failed to find IDP metadata file in relaying party file '{}'", spMetaDataFile.getAbsolutePath(), ex);
1029  ex.printStackTrace();
1030  }
1031 
1032  return Integer.parseInt(federationTag) > 0;
1033  }
XmlService xmlService
Definition: Shibboleth3ConfService.java:157
String getSpMetadataFilePath(String spMetaDataFN)
Definition: Shibboleth3ConfService.java:692
Logger log
Definition: Shibboleth3ConfService.java:139

◆ isIdpInstalled()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.isIdpInstalled ( )
inline
1439  {
1440 
1441  if (appConfiguration.getShibbolethVersion() != null && !appConfiguration.getShibbolethVersion().isEmpty()) {
1442  return true;
1443  } else {
1444  return false;
1445  }
1446  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151

◆ prepareVelocityContext()

VelocityContext org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.prepareVelocityContext ( HashMap< String, Object >  trustParams,
HashMap< String, Object >  attrParams,
HashMap< String, Object >  casParams,
HashMap< String, Object >  attrResolverParams,
String  idpMetadataFolder 
)
inlineprivate
547  {
548 
549  VelocityContext context = new VelocityContext();
550 
551  context.put("StringHelper", StringHelper.class);
552 
553  context.put("trustParams", trustParams);
554  context.put("attrParams", attrParams);
555  context.put("casParams", casParams);
556  context.put("resovlerParams", attrResolverParams);
557  context.put("medataFolder", idpMetadataFolder);
558  context.put("applianceInum", StringHelper.removePunctuation(applianceService.getApplianceInum()));
559  context.put("orgInum", StringHelper.removePunctuation(organizationService.getOrganizationInum()));
560  context.put("orgSupportEmail", appConfiguration.getOrgSupportEmail());
561 
562  String idpUrl = appConfiguration.getIdpUrl();
563  context.put("idpUrl", idpUrl);
564 
565  String idpHost = idpUrl.replaceAll(":[0-9]*$", "");
566  context.put("idpHost", idpHost);
567 
568  String spUrl = appConfiguration.getApplianceUrl();
569  context.put("spUrl", spUrl);
570  String spHost = spUrl.replaceAll(":[0-9]*$", "").replaceAll("^.*?//", "");
571  context.put("spHost", spHost);
572  String gluuSPInum = applianceService.getAppliance().getGluuSPTR();
573  String gluuSPEntityId = trustService.getRelationshipByInum(gluuSPInum).getEntityId();
574  context.put("gluuSPEntityId", gluuSPEntityId);
575  String regx = "\\s*(=>|,|\\s)\\s*";// white spaces or comma
576 
577  String ldapUrls[] = appConfiguration.getIdpLdapServer().split(regx);
578  String ldapUrl = "";
579  if (ldapUrls != null) {
580 
581  for (String ldapServer : ldapUrls) {
582  if(ldapUrl.length()>1)
583  ldapUrl = ldapUrl+" ";
584  ldapUrl = ldapUrl + appConfiguration.getIdpLdapProtocol() + "://" + ldapServer;
585  }
586 
587  } else {
588  ldapUrl = appConfiguration.getIdpLdapProtocol() + "://" + appConfiguration.getIdpLdapServer();
589  }
590 
591  context.put("ldapUrl", ldapUrl);
592  context.put("bindDN", appConfiguration.getIdpBindDn());
593 
594  try {
595  context.put("ldapPass", encryptionService.decrypt(appConfiguration.getIdpBindPassword()));
596  } catch (EncryptionException e) {
597  log.error("Failed to decrypt bindPassword", e);
598  e.printStackTrace();
599  }
600 
601  context.put("securityKey", appConfiguration.getIdpSecurityKey());
602  context.put("securityCert", appConfiguration.getIdpSecurityCert());
603 
604  try {
605  context.put("securityKeyPassword", encryptionService.decrypt(appConfiguration.getIdpSecurityKeyPassword()));
606  } catch (EncryptionException e) {
607  log.error("Failed to decrypt idp.securityKeyPassword", e);
608  e.printStackTrace();
609  }
610 
611  return context;
612  }
GluuAppliance getAppliance(String[] returnAttributes)
Definition: ApplianceService.java:111
String getOrganizationInum()
Definition: OrganizationService.java:202
GluuSAMLTrustRelationship getRelationshipByInum(String inum)
Definition: TrustService.java:163
EncryptionService encryptionService
Definition: Shibboleth3ConfService.java:154
String decrypt(String encryptedString)
Definition: EncryptionService.java:34
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
TrustService trustService
Definition: Shibboleth3ConfService.java:172
OrganizationService organizationService
Definition: Shibboleth3ConfService.java:163
String getApplianceInum()
Definition: ApplianceService.java:178
String getEntityId()
Definition: GluuSAMLTrustRelationship.java:188
ApplianceService applianceService
Definition: Shibboleth3ConfService.java:145
String getGluuSPTR()
Definition: GluuAppliance.java:334
Logger log
Definition: Shibboleth3ConfService.java:139

◆ profileCofigurationExists()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.profileCofigurationExists ( String  credentialName)
inlineprivate
1173  {
1174 
1175  for (GluuSAMLTrustRelationship trust : trustService.getAllTrustRelationships()) {
1176 
1177  if (credentialName.contains(StringHelper.removePunctuation(trust.getInum())) && !credentialName.equals(StringHelper.removePunctuation(trust.getInum()))) {
1178 
1179  try {
1181  } catch (Exception e) {
1182  log.error("parseProfileConfigurations exception", e);
1183  return false;
1184  }
1185 
1186  ProfileConfiguration profileConfiguration = trust.getProfileConfigurations().get(credentialName.replace(StringHelper.removePunctuation(trust.getInum()), ""));
1187 
1188  if (profileConfiguration != null && credentialName.equals(profileConfiguration.getProfileConfigurationCertFileName())) {
1189  return true;
1190  }
1191  }
1192  }
1193 
1194  return false;
1195  }
List< GluuSAMLTrustRelationship > getAllTrustRelationships()
Definition: TrustService.java:198
TrustService trustService
Definition: Shibboleth3ConfService.java:172
ProfileConfigurationService profileConfigurationService
Definition: Shibboleth3ConfService.java:160
Logger log
Definition: Shibboleth3ConfService.java:139
void parseProfileConfigurations(GluuSAMLTrustRelationship trustRelationship)
Definition: ProfileConfigurationService.java:162

◆ removeMetadataFile()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.removeMetadataFile ( String  spMetaDataFN)
inline
1227  {
1228 
1229  if (appConfiguration.getShibboleth3FederationRootDir() == null) {
1230  throw new InvalidConfigurationException("Failed to remove meta-data file due to undefined federation root folder");
1231  }
1232 
1233  String metadataFolder = getIdpMetadataDir();
1234  File spMetadataFile = new File(metadataFolder + spMetaDataFN);
1235 
1236  if (spMetadataFile.exists()) {
1237  spMetadataFile.delete();
1238  }
1239  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ removeSpMetadataFile()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.removeSpMetadataFile ( String  spMetadataFileName)
inline
848  {
849 
850  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
851  throw new InvalidConfigurationException("Failed to remove SP meta-data file due to undefined IDP root folder");
852  }
853 
854  String idpMetadataFolder = getIdpMetadataDir();
855  File spMetadataFile = new File(idpMetadataFolder + spMetadataFileName);
856 
857  if (spMetadataFile.exists()) {
858  spMetadataFile.delete();
859  }
860  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ removeUnusedCredentials()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.removeUnusedCredentials ( )
inline
1139  {
1140 
1141  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
1142  throw new InvalidConfigurationException("Failed to update configuration due to undefined IDP root folder");
1143  }
1144 
1145  File credentialsDir = new File(appConfiguration.getShibboleth3IdpRootDir() + File.separator + SHIB3_IDP_METADATA_CREDENTIALS_FOLDER);
1146 
1147  if (credentialsDir.exists()) {
1148 
1149  ArrayList<SubversionFile> obsoleteMetadata = new ArrayList<SubversionFile>();
1150 
1151  for (File credential : credentialsDir.listFiles(new FileFilter() {
1152  @Override
1153  public boolean accept(File pathname) {
1154  return pathname.isFile();
1155  }
1156  })) {
1157 
1158  if (filterExists(credential.getName()) || profileCofigurationExists(credential.getName())) {
1159  continue;
1160  }
1161 
1162  obsoleteMetadata.add(new SubversionFile(SHIB3_IDP + File.separator + SHIB3_IDP_METADATA_CREDENTIALS_FOLDER, credential.getAbsolutePath()));
1163  }
1164 
1165  // SubversionService.instance().commitShibboleth3ConfigurationFiles(organizationService.getOrganization(), new ArrayList<SubversionFile>(), obsoleteMetadata, "Removed Credentials files that are no longer used");
1166 
1167  for (SubversionFile file : obsoleteMetadata) {
1168  new File(file.getLocalFile()).delete();
1169  }
1170  }
1171  }
static final String SHIB3_IDP
Definition: Shibboleth3ConfService.java:91
boolean profileCofigurationExists(String credentialName)
Definition: Shibboleth3ConfService.java:1173
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
boolean filterExists(String credentialName)
Definition: Shibboleth3ConfService.java:1197
static final String SHIB3_IDP_METADATA_CREDENTIALS_FOLDER
Definition: Shibboleth3ConfService.java:96

◆ removeUnusedMetadata()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.removeUnusedMetadata ( )
inline
1090  {
1091 
1092  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
1093  throw new InvalidConfigurationException("Failed to update configuration due to undefined IDP root folder");
1094  }
1095 
1096  File metadataDir = new File(getIdpMetadataDir());
1097 
1098  if (metadataDir.exists()) {
1099 
1100  ArrayList<SubversionFile> obsoleteMetadata = new ArrayList<SubversionFile>();
1101 
1102  for (File metadata : metadataDir.listFiles(new FileFilter() {
1103  @Override
1104  public boolean accept(File pathname) {
1105  return pathname.isFile();
1106  }
1107  })) {
1108 
1109  if (metadata.getName().equals(SHIB3_IDP_IDP_METADATA_FILE) || trustRelationExists(metadata.getName())) {
1110  continue;
1111  }
1112 
1113  obsoleteMetadata.add(new SubversionFile(SHIB3_IDP + File.separator + SHIB3_IDP_METADATA_FOLDER, metadata.getAbsolutePath()));
1114  }
1115 
1116  // SubversionService.instance().commitShibboleth3ConfigurationFiles(organizationService.getOrganization(), new ArrayList<SubversionFile>(), obsoleteMetadata, "Removed Metadata files that are no longer used");
1117 
1118  for (SubversionFile file : obsoleteMetadata) {
1119  new File(file.getLocalFile()).delete();
1120  }
1121  }
1122  }
static final String SHIB3_IDP
Definition: Shibboleth3ConfService.java:91
static final String SHIB3_IDP_IDP_METADATA_FILE
Definition: Shibboleth3ConfService.java:104
boolean trustRelationExists(String metadataName)
Definition: Shibboleth3ConfService.java:1124
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
static final String SHIB3_IDP_METADATA_FOLDER
Definition: Shibboleth3ConfService.java:95
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680

◆ saveCert()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveCert ( GluuSAMLTrustRelationship  trustRelationship,
String  certificate 
)
inline
引数
trustRelationship
certificate
1533  {
1534  String sslDirFN = appConfiguration.getShibboleth3IdpRootDir()
1535  + File.separator + TrustService.GENERATED_SSL_ARTIFACTS_DIR
1536  + File.separator;
1537  File sslDir = new File(sslDirFN);
1538  if (!sslDir.exists()) {
1539  log.debug("creating directory: " + sslDirFN);
1540  boolean result = sslDir.mkdir();
1541  if (result) {
1542  log.debug("DIR created");
1543 
1544  }
1545  }
1546  BufferedWriter writer = null;
1547  try {
1548  writer = new BufferedWriter(
1549  new FileWriter(
1550  sslDirFN
1551  + getSpNewMetadataFileName(trustRelationship).replaceFirst("\\.xml$",".crt")));
1552  writer.write(Shibboleth3ConfService.PUBLIC_CERTIFICATE_START_LINE + "\n"
1553  + certificate
1554  + Shibboleth3ConfService.PUBLIC_CERTIFICATE_END_LINE);
1555  } catch (IOException e) {
1556  } finally {
1557  try {
1558  if (writer != null) {
1559  writer.close();
1560  }
1561  } catch (IOException e) {
1562  }
1563  }
1564 
1565  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getSpNewMetadataFileName(GluuSAMLTrustRelationship trustRel)
Definition: Shibboleth3ConfService.java:703
Logger log
Definition: Shibboleth3ConfService.java:139

◆ saveKey()

void org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveKey ( GluuSAMLTrustRelationship  trustRelationship,
String  key 
)
inline
引数
trustRelationship
key
1572  {
1573 
1574 
1575  String sslDirFN = appConfiguration.getShibboleth3IdpRootDir()
1576  + File.separator + TrustService.GENERATED_SSL_ARTIFACTS_DIR
1577  + File.separator;
1578  File sslDir = new File(sslDirFN);
1579  if (!sslDir.exists()) {
1580  log.debug("creating directory: " + sslDirFN);
1581  boolean result = sslDir.mkdir();
1582  if (result) {
1583  log.debug("DIR created");
1584 
1585  }
1586  }
1587  if(key != null){
1588  BufferedWriter writer = null;
1589  try {
1590  writer = new BufferedWriter(new FileWriter(sslDirFN + getSpNewMetadataFileName(trustRelationship).replaceFirst("\\.xml$",".key")));
1591  writer.write(key);
1592  } catch (IOException e) {
1593  } finally {
1594  try {
1595  if (writer != null) {
1596  writer.close();
1597  }
1598  } catch (IOException e) {
1599  }
1600  }
1601  }else{
1602  File keyFile = new File(sslDirFN + getSpNewMetadataFileName(trustRelationship).replaceFirst("\\.xml$",".key"));
1603  if(keyFile.exists()){
1604  keyFile.delete();
1605  }
1606  }
1607 
1608  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getSpNewMetadataFileName(GluuSAMLTrustRelationship trustRel)
Definition: Shibboleth3ConfService.java:703
Logger log
Definition: Shibboleth3ConfService.java:139

◆ saveMetadataFile() [1/2]

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveMetadataFile ( String  metadataFileName,
InputStream  stream 
)
inline
1262  {
1263 
1264  if (appConfiguration.getShibboleth3FederationRootDir() == null) {
1265  IOUtils.closeQuietly(stream);
1266  throw new InvalidConfigurationException("Failed to save meta-data file due to undefined federation root folder");
1267  }
1268 
1269  String idpMetadataFolderName = getIdpMetadataDir();
1270  File idpMetadataFolder = new File(idpMetadataFolderName);
1271  if (!idpMetadataFolder.exists()) {
1272  idpMetadataFolder.mkdirs();
1273  }
1274  File spMetadataFile = new File(idpMetadataFolderName + metadataFileName);
1275 
1276  FileOutputStream os = null;
1277  try {
1278  os = FileUtils.openOutputStream(spMetadataFile);
1279  IOUtils.copy(stream, os);
1280  os.flush();
1281  } catch (IOException ex) {
1282  log.error("Failed to write meta-data file '{}'", spMetadataFile, ex);
1283  ex.printStackTrace();
1284  return false;
1285  } finally {
1286  IOUtils.closeQuietly(os);
1287  IOUtils.closeQuietly(stream);
1288  }
1289 
1290  return true;
1291  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getIdpMetadataDir()
Definition: Shibboleth3ConfService.java:680
Logger log
Definition: Shibboleth3ConfService.java:139

◆ saveMetadataFile() [2/2]

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveMetadataFile ( String  spMetaDataURL,
String  metadataFileName 
)
inline
1293  {
1294  if (StringHelper.isEmpty(spMetaDataURL)) {
1295  return false;
1296  }
1297 
1298  String metadataFileContent = HTTPFileDownloader.getResource(spMetaDataURL, "application/xml, text/xml", null, null);
1299 
1300  if (StringHelper.isEmpty(metadataFileContent)) {
1301  return false;
1302  }
1303 
1304  // Save new file
1305  ByteArrayInputStream is;
1306  try {
1307  byte[] metadataFileContentBytes = metadataFileContent.getBytes("UTF-8");
1308  is = new ByteArrayInputStream(metadataFileContentBytes);
1309  } catch (UnsupportedEncodingException ex) {
1310  ex.printStackTrace();
1311  return false;
1312  }
1313 
1314  FileUploadWrapper tmpfileWrapper = new FileUploadWrapper();
1315  tmpfileWrapper.setStream(is);
1316 
1317  return saveMetadataFile(metadataFileName, tmpfileWrapper.getStream());
1318  }
boolean saveMetadataFile(String metadataFileName, InputStream stream)
Definition: Shibboleth3ConfService.java:1262

◆ saveSpMetadataFile() [1/3]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveSpMetadataFile ( String  spMetadataFileName,
byte []  data 
)
inline
713  {
714  ByteArrayInputStream bis = new ByteArrayInputStream(data);
715  try {
716  return saveSpMetadataFile(spMetadataFileName, bis);
717  } finally {
718  IOUtils.closeQuietly(bis);
719  }
720  }
String saveSpMetadataFile(String spMetadataFileName, byte[] data)
Definition: Shibboleth3ConfService.java:713

◆ saveSpMetadataFile() [2/3]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveSpMetadataFile ( String  spMetadataFileName,
InputStream  input 
)
inline
722  {
723 
724  if (appConfiguration.getShibboleth3IdpRootDir() == null) {
725 
726  IOUtils.closeQuietly(input);
727  String errorMessage = "Failed to save SP meta-data file due to undefined IDP root folder";
728  log.error(errorMessage);
729  throw new InvalidConfigurationException(errorMessage);
730  }
731 
732  //String idpMetadataFolder = getIdpMetadataDir();
733  String idpMetadataTempFolder = getIdpMetadataTempDir();
734  String tempFileName = getTempMetadataFilename(idpMetadataTempFolder, spMetadataFileName);
735 
736  //temp file location for metadatavalidator thread process .
737  File spMetadataFile = new File(idpMetadataTempFolder + tempFileName);
738 
739  FileOutputStream os = null;
740  try {
741  os = FileUtils.openOutputStream(spMetadataFile);
742  IOUtils.copy(input, os);
743  os.flush();
744  } catch (IOException ex) {
745  log.error("Failed to write SP meta-data file '{}'", spMetadataFile, ex);
746  ex.printStackTrace();
747  return null;
748  } finally {
749  IOUtils.closeQuietly(os);
750  IOUtils.closeQuietly(input);
751  }
752 
753  return tempFileName;
754  }
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
String getTempMetadataFilename(String idpMetadataFolder, String fileName)
Definition: Shibboleth3ConfService.java:756
String getIdpMetadataTempDir()
Definition: Shibboleth3ConfService.java:684
Logger log
Definition: Shibboleth3ConfService.java:139

◆ saveSpMetadataFile() [3/3]

String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.saveSpMetadataFile ( String  uri,
String  spMetadataFileName 
)
inline
767  {
768 
769  if (StringHelper.isEmpty(uri)) {
770  return null;
771  }
772 
773  HTTPFileDownloader.setEasyhttps(new Protocol("https", new EasyCASSLProtocolSocketFactory(), 443));
774  String spMetadataFileContent = HTTPFileDownloader.getResource(uri, "application/xml, text/xml", null, null);
775 
776  if (StringHelper.isEmpty(spMetadataFileContent)) {
777  return null;
778  }
779 
780  // Save new file
781  ByteArrayInputStream is;
782  try {
783  byte[] spMetadataFileContentBytes = spMetadataFileContent.getBytes("UTF-8");
784  is = new ByteArrayInputStream(spMetadataFileContentBytes);
785  } catch (UnsupportedEncodingException ex) {
786  log.error("saveSpMetadataFile exception", ex);
787  ex.printStackTrace();
788  return null;
789  }
790 
791  FileUploadWrapper tmpfileWrapper = new FileUploadWrapper();
792  tmpfileWrapper.setStream(is);
793 
794  return saveSpMetadataFile(spMetadataFileName, tmpfileWrapper.getStream());
795  }
String saveSpMetadataFile(String spMetadataFileName, byte[] data)
Definition: Shibboleth3ConfService.java:713
Logger log
Definition: Shibboleth3ConfService.java:139

◆ trustRelationExists()

boolean org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.trustRelationExists ( String  metadataName)
inlineprivate
1124  {
1125 
1126  if (metadataName.equals(StringHelper.removePunctuation(appConfiguration.getOrgInum()) + "-idp-metadata.xml")) {
1127  return true;
1128  }
1129 
1130  for (GluuSAMLTrustRelationship trust : trustService.getAllTrustRelationships()) {
1131  if (metadataName.equals(trust.getSpMetaDataFN())) {
1132  return true;
1133  }
1134  }
1135 
1136  return false;
1137  }
List< GluuSAMLTrustRelationship > getAllTrustRelationships()
Definition: TrustService.java:198
AppConfiguration appConfiguration
Definition: Shibboleth3ConfService.java:151
TrustService trustService
Definition: Shibboleth3ConfService.java:172

◆ validateMetadata()

GluuErrorHandler org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.validateMetadata ( InputStream  stream) throws ParserConfigurationException, SAXException, IOException
inline
引数
stream
例外
IOException
SAXException
ParserConfigurationException
戻り値
GluuErrorHandler
1404  {
1405  Schema schema;
1406  try {
1407  String idpTemplatesLocation = configurationFactory.getIDPTemplatesLocation();
1408  // String schemaDir = OxTrustConfiguration.DIR + "shibboleth3" + File.separator + "idp" + File.separator + "schema" + File.separator;
1409  String schemaDir = idpTemplatesLocation + "shibboleth3" + File.separator + "idp" + File.separator + "schema" + File.separator;
1410  schema = SchemaBuilder.buildSchema(SchemaLanguage.XML, schemaDir);
1411  } catch (Exception e) {
1412  // Schema build error
1413  final List<String> validationLog = new ArrayList<String>();
1414  validationLog.add(GluuErrorHandler.SCHEMA_CREATING_ERROR_MESSAGE);
1415  validationLog.add(e.getMessage());
1416  // return internal error
1417  return new GluuErrorHandler(false, true, validationLog);
1418  }
1419  return XMLValidator.validateMetadata(stream, schema);
1420  }
String getIDPTemplatesLocation()
Definition: ConfigurationFactory.java:542
ConfigurationFactory configurationFactory
Definition: Shibboleth3ConfService.java:148

メンバ詳解

◆ appConfiguration

AppConfiguration org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.appConfiguration
private

◆ applianceService

ApplianceService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.applianceService
private

◆ attributeService

AttributeService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.attributeService
private

◆ casService

CASService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.casService
private

◆ configurationFactory

ConfigurationFactory org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.configurationFactory
private

◆ encryptionService

EncryptionService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.encryptionService
private

◆ filterService

FilterService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.filterService
private

◆ log

Logger org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.log
private

◆ organizationService

OrganizationService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.organizationService
private

◆ profileConfigurationService

ProfileConfigurationService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.profileConfigurationService
private

◆ PUBLIC_CERTIFICATE_END_LINE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.PUBLIC_CERTIFICATE_END_LINE = "-----END CERTIFICATE-----"
static

◆ PUBLIC_CERTIFICATE_START_LINE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.PUBLIC_CERTIFICATE_START_LINE = "-----BEGIN CERTIFICATE-----"
static

◆ serialVersionUID

final long org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.serialVersionUID = 6752452480800274694L
staticprivate

◆ shemaService

SchemaService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.shemaService
private

◆ SHIB3_IDP

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP = "shibboleth-idp"
staticprivate

◆ SHIB3_IDP_ATTRIBUTE_FILTER_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_ATTRIBUTE_FILTER_FILE = "attribute-filter.xml"
staticprivate

◆ SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_ATTRIBUTE_RESOLVER_FILE = "attribute-resolver.xml"
staticprivate

◆ SHIB3_IDP_CAS_PROTOCOL_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_CAS_PROTOCOL_FILE = "cas-protocol.xml"
staticprivate

◆ SHIB3_IDP_CONF_FOLDER

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_CONF_FOLDER = "conf"
staticprivate

◆ SHIB3_IDP_IDP_METADATA_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_IDP_METADATA_FILE = "idp-metadata.xml"
static

◆ SHIB3_IDP_LOGIN_CONFIG_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_LOGIN_CONFIG_FILE = "login.config"
staticprivate

◆ SHIB3_IDP_METADATA_CREDENTIALS_FOLDER

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_METADATA_CREDENTIALS_FOLDER = SHIB3_IDP_METADATA_FOLDER + File.separator + "credentials"
staticprivate

◆ SHIB3_IDP_METADATA_FOLDER

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_METADATA_FOLDER = "metadata"
static

◆ SHIB3_IDP_METADATA_PROVIDERS_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_METADATA_PROVIDERS_FILE = "metadata-providers.xml"
staticprivate

◆ SHIB3_IDP_PROPERTIES_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_PROPERTIES_FILE = "idp.properties"
static

◆ SHIB3_IDP_RELYING_PARTY_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_RELYING_PARTY_FILE = "relying-party.xml"
staticprivate

◆ SHIB3_IDP_SP_CERT_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_SP_CERT_FILE = "spcert.crt"
static

◆ SHIB3_IDP_SP_KEY_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_SP_KEY_FILE = "spkey.key"
static

◆ SHIB3_IDP_SP_METADATA_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_SP_METADATA_FILE = "sp-metadata.xml"
static

◆ SHIB3_IDP_TEMPMETADATA_FOLDER

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_IDP_TEMPMETADATA_FOLDER = "temp_metadata"
static

◆ SHIB3_METADATA_FILE_PATTERN

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_METADATA_FILE_PATTERN = "%s-metadata.xml"
staticprivate

◆ SHIB3_SAML_NAMEID_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SAML_NAMEID_FILE = "saml-nameid.xml"
staticprivate

◆ SHIB3_SP

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SP = "sp"
staticprivate

◆ SHIB3_SP_ATTRIBUTE_MAP_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SP_ATTRIBUTE_MAP_FILE = "attribute-map.xml"
static

◆ SHIB3_SP_METADATA_FILE_PATTERN

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SP_METADATA_FILE_PATTERN = "%s-sp-metadata.xml"
staticprivate

◆ SHIB3_SP_READ_ME

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SP_READ_ME = "/WEB-INF/resources/doc/README_SP.pdf"
staticprivate

◆ SHIB3_SP_READ_ME_WINDOWS

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SP_READ_ME_WINDOWS = "/WEB-INF/resources/doc/README_SP_windows.pdf"
staticprivate

◆ SHIB3_SP_SHIBBOLETH2_FILE

final String org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.SHIB3_SP_SHIBBOLETH2_FILE = "shibboleth2.xml"
static

◆ templateService

TemplateService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.templateService
private

◆ trustService

TrustService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.trustService
private

◆ xmlService

XmlService org.gluu.oxtrust.ldap.service.Shibboleth3ConfService.xmlService
private

このクラス詳解は次のファイルから抽出されました: