01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package org.apache.jetspeed.security;
18:
19: import org.apache.jetspeed.security.spi.CredentialHandler;
20: import org.apache.jetspeed.security.spi.UserSecurityHandler;
21:
22: /**
23: * <p>
24: * Configures an authentication provider.
25: * </p>
26: *
27: * @author <a href="mailto:dlestrat@apache.org">David Le Strat </a>
28: */
29: public interface AuthenticationProvider {
30:
31: /**
32: * <p>
33: * Gets the authentication provider name.
34: * </p>
35: *
36: * @return The authentication provider name.
37: */
38: String getProviderName();
39:
40: /**
41: * <p>
42: * Gets the authentication provider description.
43: * </p>
44: *
45: * @return The authentication provider description.
46: */
47: String getProviderDescription();
48:
49: /**
50: * <p>
51: * Gets the {@link UserSecurityHandler}.
52: * </p>
53: *
54: * @return The {@link UserSecurityHandler}.
55: */
56: UserSecurityHandler getUserSecurityHandler();
57:
58: /**
59: * <p>
60: * Sets the {@link UserSecurityHandler}.
61: * </p>
62: *
63: * @param userSecurityHandler The {@link UserSecurityHandler}.
64: */
65: void setUserSecurityHandler(UserSecurityHandler userSecurityHandler);
66:
67: /**
68: * <p>
69: * Gets the {@link CredentialHandler}.
70: * </p>
71: *
72: * @return The {@link CredentialHandler}.
73: */
74: CredentialHandler getCredentialHandler();
75:
76: /**
77: * <p>
78: * Sets the {@link CredentialHandler}.
79: * </p>
80: *
81: * @param credHandler The {@link CredentialHandler}.
82: */
83: void setCredentialHandler(CredentialHandler credHandler);
84:
85: }
|