1 package org.eclipse.jetty.security;
2 //========================================================================
3 //Copyright (c) Webtide LLC
4 //------------------------------------------------------------------------
5 //All rights reserved. This program and the accompanying materials
6 //are made available under the terms of the Eclipse Public License v1.0
7 //and Apache License v2.0 which accompanies this distribution.
8 //
9 //The Eclipse Public License is available at
10 //http://www.eclipse.org/legal/epl-v10.html
11 //
12 //The Apache License v2.0 is available at
13 //http://www.opensource.org/licenses/apache2.0.php
14 //
15 //You may elect to redistribute this code under either of these licenses.
16 //========================================================================
17
18 import java.security.Principal;
19 import java.util.List;
20
21 import javax.security.auth.Subject;
22
23 import org.eclipse.jetty.server.UserIdentity;
24
25 public class SpnegoUserIdentity implements UserIdentity
26 {
27 private Subject _subject;
28 private Principal _principal;
29 private List<String> _roles;
30
31 public SpnegoUserIdentity( Subject subject, Principal principal, List<String> roles )
32 {
33 _subject = subject;
34 _principal = principal;
35 _roles = roles;
36 }
37
38
39 public Subject getSubject()
40 {
41 return _subject;
42 }
43
44 public Principal getUserPrincipal()
45 {
46 return _principal;
47 }
48
49 public boolean isUserInRole(String role, Scope scope)
50 {
51 return _roles.contains(role);
52 }
53
54 }