1 // ========================================================================
2 // Copyright (c) 2008-2009 Mort Bay Consulting Pty. Ltd.
3 // ------------------------------------------------------------------------
4 // All rights reserved. This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v1.0
6 // and Apache License v2.0 which accompanies this distribution.
7 // The Eclipse Public License is available at
8 // http://www.eclipse.org/legal/epl-v10.html
9 // The Apache License v2.0 is available at
10 // http://www.opensource.org/licenses/apache2.0.php
11 // You may elect to redistribute this code under either of these licenses.
12 // ========================================================================
13
14 package org.eclipse.jetty.security.authentication;
15
16 import java.security.Principal;
17
18 import javax.security.auth.Subject;
19
20
21 /**
22 * This is similar to the jaspi PasswordValidationCallback but includes user
23 * principal and group info as well.
24 *
25 * @version $Rev: 4792 $ $Date: 2009-03-18 22:55:52 +0100 (Wed, 18 Mar 2009) $
26 */
27 public interface LoginCallback
28 {
29 public Subject getSubject();
30
31 public String getUserName();
32
33 public Object getCredential();
34
35 public boolean isSuccess();
36
37 public void setSuccess(boolean success);
38
39 public Principal getUserPrincipal();
40
41 public void setUserPrincipal(Principal userPrincipal);
42
43 public String[] getRoles();
44
45 public void setRoles(String[] roles);
46
47 public void clearPassword();
48
49
50 }