/* * 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.common.model.Attribute; import org.glite.authz.common.profile.GLiteAuthorizationProfileConstants; import org.glite.voms.PKIStore; /** * The PIP applies to request which have the attribute {@value GLiteAuthorizationProfileConstants#ID_ATTRIBUTE_PROFILE_ID} * with the value {@value GLiteAuthorizationProfileConstants#GRID_WN_AUTHZ_V1_PROFILE_ID} defined in the request environment. * <p> * The PIP 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 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> * @deprecated uses the {@link GLiteAuthorizationProfilePIP} instead. */ public class WorkerNodeProfileV1 extends GLiteAuthorizationProfilePIP { /** * The constructor for this PIP. This constructor enables support for the VOMS attribute certificates. * * @param pipID ID of this PIP * @param requireProxy whether a subject's certificate chain must require a proxy in order to be valid * @param eeTrustMaterial trust material used to validate the subject's end entity certificate * @param acTrustMaterial trust material used to validate the subject's attribute certificate certificate, may be * null of AC support is not desired * * @throws ConfigurationException thrown if the configuration of the PIP fails */ public WorkerNodeProfileV1(String pipID, boolean requireProxy, PKIStore eeTrustMaterial, PKIStore acTrustMaterial, boolean performPKIXValidation) throws ConfigurationException { super(pipID, requireProxy, eeTrustMaterial, acTrustMaterial, performPKIXValidation, new String[] { GLiteAuthorizationProfileConstants.GRID_WN_AUTHZ_V1_PROFILE_ID }); } }