Snippet Preview
Snippet HTML Code
1
/*
2
* Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
*
5
* This code is free software; you can redistribute it and/or modify it
6
* under the terms of the GNU General Public License version 2 only, as
7
* published by the Free Software Foundation. Sun designates this
8
* particular file as subject to the "Classpath" exception as provided
9
* by Sun in the LICENSE file that accompanied this code.
10
11
* This code is distributed in the hope that it will be useful, but WITHOUT
12
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14
* version 2 for more details (a copy is included in the LICENSE file that
15
* accompanied this code).
16
17
* You should have received a copy of the GNU General Public License version
18
* 2 along with this work; if not, write to the Free Software Foundation,
19
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20
21
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
22
* CA 95054 USA or visit www.sun.com if you need additional information or
23
* have any questions.
24
*/
25
26
package sun.security.util;
27
28
import java.io.FilePermission;
29
import java.awt.AWTPermission;
30
import java.util.PropertyPermission;
31
import java.lang.RuntimePermission;
32
import java.net.SocketPermission;
33
import java.net.NetPermission;
34
import java.security.SecurityPermission;
35
import java.security.AllPermission;
36
import javax.security.auth.AuthPermission;
41
42
public final class SecurityConstants {
43
// Cannot create one of these
44
private SecurityConstants () {
45
}
46
47
// Commonly used string constants for permission actions used by
48
// SecurityManager. Declare here for shortcut when checking permissions
49
// in FilePermission, SocketPermission, and PropertyPermission.
50
51
public static final String FILE_DELETE_ACTION = "delete";
52
public static final String FILE_EXECUTE_ACTION = "execute";
53
public static final String FILE_READ_ACTION = "read";
54
public static final String FILE_WRITE_ACTION = "write";
55
56
public static final String SOCKET_RESOLVE_ACTION = "resolve";
57
public static final String SOCKET_CONNECT_ACTION = "connect";
58
public static final String SOCKET_LISTEN_ACTION = "listen";
59
public static final String SOCKET_ACCEPT_ACTION = "accept";
60
public static final String SOCKET_CONNECT_ACCEPT_ACTION = "connect,accept";
61
62
public static final String PROPERTY_RW_ACTION = "read,write";
63
public static final String PROPERTY_READ_ACTION = "read";
64
public static final String PROPERTY_WRITE_ACTION = "write";
65
66
// Permission constants used in the various checkPermission() calls in JDK.
67
68
// java.lang.Class, java.lang.SecurityManager, java.lang.System,
69
// java.net.URLConnection, java.security.AllPermission, java.security.Policy,
70
// sun.security.provider.PolicyFile
71
public static final AllPermission ALL_PERMISSION = new AllPermission();
72
73
// java.lang.SecurityManager
74
public static final AWTPermission TOPLEVEL_WINDOW_PERMISSION =
75
new AWTPermission("showWindowWithoutWarningBanner");
76
77
78
public static final AWTPermission ACCESS_CLIPBOARD_PERMISSION =
79
new AWTPermission("accessClipboard");
80
81
82
public static final AWTPermission CHECK_AWT_EVENTQUEUE_PERMISSION =
83
new AWTPermission("accessEventQueue");
84
85
// java.awt.Dialog
86
public static final AWTPermission TOOLKIT_MODALITY_PERMISSION =
87
new AWTPermission("toolkitModality");
88
89
// java.awt.Robot
90
public static final AWTPermission READ_DISPLAY_PIXELS_PERMISSION =
91
new AWTPermission("readDisplayPixels");
92
93
94
public static final AWTPermission CREATE_ROBOT_PERMISSION =
95
new AWTPermission("createRobot");
96
97
// java.awt.MouseInfo
98
public static final AWTPermission WATCH_MOUSE_PERMISSION =
99
new AWTPermission("watchMousePointer");
100
101
// java.awt.Window
102
public static final AWTPermission SET_WINDOW_ALWAYS_ON_TOP_PERMISSION =
103
new AWTPermission("setWindowAlwaysOnTop");
104
105
// java.awt.Toolkit
106
public static final AWTPermission ALL_AWT_EVENTS_PERMISSION =
107
new AWTPermission("listenToAllAWTEvents");
108
109
// java.awt.SystemTray
110
public static final AWTPermission ACCESS_SYSTEM_TRAY_PERMISSION =
111
new AWTPermission("accessSystemTray");
112
113
// java.net.URL
114
public static final NetPermission SPECIFY_HANDLER_PERMISSION =
115
new NetPermission("specifyStreamHandler");
116
117
// java.net.ProxySelector
118
public static final NetPermission SET_PROXYSELECTOR_PERMISSION =
119
new NetPermission("setProxySelector");
120
121
122
public static final NetPermission GET_PROXYSELECTOR_PERMISSION =
123
new NetPermission("getProxySelector");
124
125
// java.net.CookieHandler
126
public static final NetPermission SET_COOKIEHANDLER_PERMISSION =
127
new NetPermission("setCookieHandler");
128
129
130
public static final NetPermission GET_COOKIEHANDLER_PERMISSION =
131
new NetPermission("getCookieHandler");
132
133
// java.net.ResponseCache
134
public static final NetPermission SET_RESPONSECACHE_PERMISSION =
135
new NetPermission("setResponseCache");
136
137
138
public static final NetPermission GET_RESPONSECACHE_PERMISSION =
139
new NetPermission("getResponseCache");
140
141
// java.lang.SecurityManager, sun.applet.AppletPanel, sun.misc.Launcher
142
public static final RuntimePermission CREATE_CLASSLOADER_PERMISSION =
143
new RuntimePermission("createClassLoader");
144
145
146
public static final RuntimePermission CHECK_MEMBER_ACCESS_PERMISSION =
147
new RuntimePermission("accessDeclaredMembers");
148
149
// java.lang.SecurityManager, sun.applet.AppletSecurity
150
public static final RuntimePermission MODIFY_THREAD_PERMISSION =
151
new RuntimePermission("modifyThread");
152
153
154
public static final RuntimePermission MODIFY_THREADGROUP_PERMISSION =
155
new RuntimePermission("modifyThreadGroup");
156
157
// java.lang.Class
158
public static final RuntimePermission GET_PD_PERMISSION =
159
new RuntimePermission("getProtectionDomain");
160
161
// java.lang.Class, java.lang.ClassLoader, java.lang.Thread
162
public static final RuntimePermission GET_CLASSLOADER_PERMISSION =
163
new RuntimePermission("getClassLoader");
164
165
// java.lang.Thread
166
public static final RuntimePermission STOP_THREAD_PERMISSION =
167
new RuntimePermission("stopThread");
168
169
170
public static final RuntimePermission GET_STACK_TRACE_PERMISSION =
171
new RuntimePermission("getStackTrace");
172
173
// java.security.AccessControlContext
174
public static final SecurityPermission CREATE_ACC_PERMISSION =
175
new SecurityPermission("createAccessControlContext");
176
177
178
public static final SecurityPermission GET_COMBINER_PERMISSION =
179
new SecurityPermission("getDomainCombiner");
180
181
// java.security.Policy, java.security.ProtectionDomain
182
public static final SecurityPermission GET_POLICY_PERMISSION =
183
new SecurityPermission ("getPolicy");
184
185
186
public static final SocketPermission LOCAL_LISTEN_PERMISSION =
187
new SocketPermission("localhost:1024-", SOCKET_LISTEN_ACTION);
188
189
// javax.security.auth.Subject
190
public static final AuthPermission DO_AS_PERMISSION =
191
new AuthPermission("doAs");
192
193
194
public static final AuthPermission DO_AS_PRIVILEGED_PERMISSION =
195
new AuthPermission("doAsPrivileged");
196