/* * Copyright (c) Members of the EGEE Collaboration. 2006-2010. * See http://www.eu-egee.org/partners/ for details on the copyright holders. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.glite.authz.pep.pip.provider; import org.glite.authz.common.config.ConfigurationException; import org.glite.authz.pep.pip.PolicyInformationPoint; import org.glite.voms.PKIStore; import org.ini4j.Ini; /** * A policy information point that extracts information from a X.509, version 3, certificate. The certificate may * include VOMS attribute certificates. All extract information is added to the subject(s) containing a valid * certificate chain. * * The PEM encoded end entity certificate, and its certificate chain, are expected to be bound to the subject attribute * {@value org.glite.authz.common.model.Attribute#ID_SUB_KEY_INFO}. Only one end-entity certificate may be present in * the chain. If the end entity certificate contains a VOMS attribute certificate, and VOMS certificate validation is * enabled, information from that attribute certificate will also be added to the subject. Only one VOMS attribute * certificate may be present in the end-entity certificate. * * @see <a href="https://twiki.cnaf.infn.it/cgi-bin/twiki/view/VOMS">VOMS website</a> */ public class WorkerNodeProfileV1IniConfigurationParser extends AbstractX509PIPIniConfigurationParser { /** {@inheritDoc} */ protected PolicyInformationPoint buildInformationPoint(Ini.Section iniConfig, boolean requireProxy, PKIStore trustMaterial, PKIStore acTrustMaterial, boolean performPKIXValidation) throws ConfigurationException { String pipId = iniConfig.getName(); WorkerNodeProfileV1 pip = new WorkerNodeProfileV1(pipId, requireProxy, trustMaterial, acTrustMaterial, performPKIXValidation); return pip; } }