
org.globus.gsi.gssapi.auth.Authorization Maven / Gradle / Ivy
/*
* Copyright 1999-2010 University of Chicago
*
* 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.globus.gsi.gssapi.auth;
import org.ietf.jgss.GSSContext;
import org.ietf.jgss.GSSName;
/**
* Interface for authorization mechanisms.
* The authorization is performed once the connection was authenticated.
*/
public abstract class Authorization {
/**
* Performes authorization checks. Throws
* AuthorizationException
if the authorization fails.
* Otherwise, the function completes normally.
*
* @param context the securit context
* @param host host address of the peer.
* @exception AuthorizationException if the peer is
* not authorized to access/use the resource.
*/
public abstract void authorize(GSSContext context, String host)
throws AuthorizationException;
protected void generateAuthorizationException(GSSName expected,
GSSName target)
throws AuthorizationException {
String lineSep = System.getProperty("line.separator");
StringBuffer msg = new StringBuffer();
msg.append("Mutual authentication failed").append(lineSep)
.append(" Expected target subject name=\"")
.append(expected.toString()).append("\"")
.append(lineSep)
.append(" Target returned subject name=\"")
.append(target.toString())
.append("\"");
throw new AuthorizationException(msg.toString());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy