作者:empty 出版社:empty |
This document gives an overview of the motivation of the major securityfeatures that are being implemented for JDK 1.2, introduces the new classesand their usage, discusses the impact of this new architecture on existing code,and gives thoughts on writing security-sensitive code in the future.Q 1997-1998Sun Microsystems, In e., 901San Antonio Road, PaloAlto,California 94303, U.S.A.All rights reservedRESTRICTED RIGHTS LEGEND:Use, duplication, or disclosure by the UnitedStates Government is subject to the restrictions set forth in DFARS 252.227-7013(c) (1) (ii) and FAR 52.227-19.The release described in this manual maybe pro tee ted by oncor more U.Spatents, foreign patents, or pending applications.Sun Microsystems, In e.(SUN) hereby grants to you a fully-paid, nonexclusive, nontransferable,perpetual, worldwide hm it edI cense(without the right to sublicense) underSUN's intellectual property rights that are essential top rae tice thisspecification.This license allows and is limited to the creation and distributionof clean To om implementations of this specification that:(i) include a completeimplementation of the currentversion of this specification without subsettingor super setting; (i) implement all the interfaces and functionality of thestandard java.*packages as defined by SUN, without subsetting orsuper setting, (iii) do not add any additional packages, classes or methods tothe java.*packages; fiv) pass all testsuites relating to the most recent publishedversion of this specification that are available from SUN six(6) months prior toany beta release of the cleanroom implementation or upgrade there to; (v) donot derive from SUN sourcecode or binary materials; and(vi) do not includeany SUN binary materials without an appropriate and separate license fromSUNSun, Sun Microsystems, Sun Microsystems Computer Corporation, the Sunlogo, the Sun Microsystems Computer Corporation logo, Java, JavaSoft,JavaScript, and HotJava are trademarks or registered trademarks of SunMicrosystems, In e, UNIX is a registered trademark in the United States andother countries, ex elusive ly licensed through X/Open Company, Ltd.All otherproduct names mentioned herein are the trademarks of the irrespectiveownersTHIS PUBLICATION IS PROVIDED“AS IS WITHOUT WARRANTY OF ANYKIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITEDTO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR APARTICULAR PURPOSE, OR NON-INFRINGEMENT THIS PUBLICATIONCOULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICALERRORS CHANGES ARE PERIODICALLY ADDED TO THE INFORMATIONHEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONSOF THE PUBLICATION, SUN MICROSYSTEMS, INC.MAY MAKE
1 Introduction.
1.1 The Original Sandbox Model.
1.2 Evolving the Sandbox Model.
3.1.1java.security.Permission.
3.1.2java.security.Permission Collection.
3.1.3java.security.Permissions.
3.1.4java security.Unresolved Permision
3.1.5java.io.File Permission.
3.1.6java.net.Socket Permission.
3.1.7java.security.Basic Permission.
3.1.8java.util.Property Permission.
3.1.9java.lang.Runtime Permission
3.1.10java.awt.AWT Permission.
3.1.11java.net.Net Permission.
3.1.12java.ange flect.Reflect Permission.
3.1.13java.io.Serializable Permission.
3.1.14java.security.Security Permission.
3.1.15java.security.All Permission.
3.1.16 Discussion of Pe miss on Implica tons.
3.1.17How To Create New Types of Permissions.
3.3.1 Policy FileFormat.
3.3.2 Property Expansion in Policy Files
3.3.3 Assigning Permissions.
3.3.4 Default System and User Policy Files
3.3.5 Customizing Policy Evaluation.
4.2.1 Algorithm for Checking Permissions.
4.2.2 Handling Privileges.
2 New Protection Mechanisms-Overview of Basic Concepts 5
3 Permissions and Security Policy.8
3.1 The Permission Classes.8
3.2java.security.Code Source.19
3.3java.security.Policy.19
3.4java.security.General SecurityException.31
4 AccessControl Mechanisms and Algorithms.32
4.1java.security.Protection Domain.32
4.2java.security.Access Controller.33
4.3 Inheritence of AccessControl Context.38
4.4java.security.AccessControl Context.39
5 Secure ClassLoading.41
5.1 ClassLoader Class Hierarchies.42
5.2 The Primordial ClassLoader.42
5.3 ClassLoader Delegation.43
5.4 Class Resolution Algorithm.43
6 Security Management.44
6.1 Managing Applets and Applications.
6.2 SecurityManager versus Access Controller.
6.3 Auxiliary Tools.
6.3.1 The Key and Certificate Management Tool.
6.3.2 Policy Tool.
6.3.3TheJARSigningandVrfiat in Tool.
7.1java.security.Guarded Object and java.security.Guard.
7.2java.security.Signed Object.
8 Discussion and Future Directions.
8.1 Users, Authentication, and Credentials.
8.2 Resource Consumption Management.
8.3 Arbi