Java Security (2nd Edition)

Java Security (2nd Edition)

Scott Oaks

Language: English

Pages: 620

ISBN: 0596001576

Format: PDF / Kindle (mobi) / ePub


One of Java's most striking claims is that it provides a secure programming environment. Yet despite endless discussion, few people understand precisely what Java's claims mean and how it backs up those claims. If you're a developer, network administrator or anyone else who must understand or work with Java's security mechanisms, Java Security is the in-depth exploration you need.Java Security, 2nd Edition, focuses on the basic platform features of Java that provide security--the class loader, the bytecode verifier, and the security manager--and recent additions to Java that enhance this security model: digital signatures, security providers, and the access controller. The book covers the security model of Java 2, Version 1.3, which is significantly different from that of Java 1.1. It has extensive coverage of the two new important security APIs: JAAS (Java Authentication and Authorization Service) and JSSE (Java Secure Sockets Extension). Java Security, 2nd Edition, will give you a clear understanding of the architecture of Java's security model and how to use that model in both programming and administration.The book is intended primarily for programmers who want to write secure Java applications. However, it is also an excellent resource for system and network administrators who are interested in Java security, particularly those who are interested in assessing the risk of using Java and need to understand how the security model works in order to assess whether or not Java meets their security needs.

Gray Hat Hacking the Ethical Hacker's Handbook (4th Edition)

Securitization Theory: How Security Problems Emerge and Dissolve

The Lure: The True Story of How the Department of Justice Brought Down Two of The World's Most Dangerous Cyber Criminals

Computer Security, Privacy and Politics: Current Issues, Challenges and Solutions

Understanding Network Hacks: Attack and Defense with Python

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Entity. In particular, principals have a name, but little else. There is a single method that implementors of the Principal interface must implement: public String getName( ) Return the name of the principal. This is typically an X.500 distinguished name, but it may be any arbitrary name. The only idea that the Principal interface abstracts is that principals have a name. The Java documentation states that a principal is anything that can have an identity, but don't be confused by that.

During the actual running of the program (after traditional bytecode verification has occurred), but the verification is still only performed once (unlike the runtime verification we'll examine later). 3.2.3 Runtime Enforcement Like the compiler, the bytecode verifier cannot completely guarantee that the bytecodes follow all of the rules we outlined earlier in this chapter: it can only ensure that the first four of them are followed. The virtual machine must still take responsibility for.

Called By ) File.canRead( Rationale Test if the current thread can read the file. ) FileInputStream( ) RandomAccessFile( ) Determining whether a file object is an actual file or a directory requires that you read the file. Determining the modification date requires that you read File.lastModified( ) the file's attributes. Determining the length requires that you read the file's File.length( ) attributes. Determining the files in a directory requires that you read File.list( ) the directory.

Need to load them with the permissions of the class loader rather than the entire stack, which is why we use a privileged block. Notwithstanding, the try block has three operations: it loads the class bytes, it defines a code source for that class, and it calls the defineClass( ) method to create the class. The first two of the operations are encapsulated in the readClassBytes( ) and getCodeSource( ) methods; these are methods that Chapter 6. Java Class Loaders 109 you must implement. Loading.

Classes. From a security perspective, the class loader is important in determining where classes originated and whether or not they were digitally signed (and if so, by whom), so the topic of class loaders appears throughout this book. Chapter 7 This chapter provides an overview to the cryptographic algorithms of the Java security package. It provides a background for the remaining chapters in the book. Chapter 8 This chapter discusses the architecture of the Java security package and how that.

Download sample

Download