Programming Windows Security, 1st edition

  • Keith Brown

Unfortunately, this item is not available in your country.

Overview

"Keith Brown lucidly explains the Win32 security architecture and how it pervades Windows NT and Windows 2000. He demystifies authentication, authorization, auditing, COM+ security, logon sessions, and much more."
--George V. Reilly, IIS Performance Lead, Microsoft

Windows security has often been considered a dry and unapproachable topic. For years, the main examples of programming security were simply exercises in ACL manipulation. Programming Windows Security is a revelation providing developers with insight into the way Windows security really works. This book shows developers the essentials of security in Windows 2000, including coverage of Kerberos, SSL, job objects, the new ACL model, COM+ and IIS 5.0. Also included are highlights of the differences between security in Windows 2000 and in Windows NT 4.0.

Programming Windows Security is written by an experienced developer specifically for use by other developers. It focuses on the issues of most concern to developers today: the design and implementation of secure distributed systems using the networking infrastructure provided by Windows, the file server, the web server, RPC servers, and COM(+) servers.

Topics covered include:

  • COM(+) security, from the ground up
  • IIS security
  • How the file system redirector works and why developers should care
  • The RPC security model
  • Kerberos, NTLM, and SSL authentication protocols and SSPI
  • Services and the Trusted Computing Base (TCB)
  • Logon sessions and tokens
  • Window stations, desktops, and user profiles
  • The Windows 2000 ACL model, including the new model of inheritance
  • Using private security descriptors to secure objects
  • Accounts, groups, aliases, privileges, and passwords
  • Comparison of three strategies for performing access control--impersonation, role-centric, and object-centric--and their impact on the design of a distributed application

Programming Windows Security provides the most comprehensive coverage of COM(+) security available in one place, culled from the author's extensive experience in diagnosing COM security problems in the lab and via correspondence on the DCOM mailing list.



0201604426B04062001

Table of contents



Preface.

I. MODEL 1.

1. The Players.

Principals.

Authorities.

Machines as Principals.

Authentication.

Trust.

Summary.

2. The Environment.

Logon Sessions.

Tokens.

The System Logon Session.

Window Stations.

Processes.

Summary.

3. Enforcement.

Authorization.

Discovering Authorization Attributes.

Distributed Applications.

Objects and Security Descriptors.

Access Control Strategies.

Choosing a Model.

Caching Mechanisms.

Summary.

II. MECHANICS.

4. Logon Sessions.

Logon Session 999.

Daemon Logon Sessions.

Network Logon Sessions.

Interactive Logon Sessions.

Network Credentials.

Tokens.

Memory Allocation and Error Handling Strategies.

Using Privileges.

Impersonation.

Restricting Authorization Attributes.

Terminating a Logon Session.

Summary.

5. Window Stations and Profiles.

What Is a Window Station?

Window Station Permissions.

Natural Window Station Allocation.

Daemons in the Lab.

Other Window Stations.

Exploring Window Stations.

Closing Window Station Handles.

Window Stations and Access Control.

Desktops.

Jobs, Revisited.

Processes.

Summary.

6. Access Control and Accountability.

Permissions.

Anatomy of a Security Descriptor.

Where Do Security Descriptors Come From?

Security Descriptor Usage Patterns.

How ACLs Work.

Security Descriptors and Built-in Objects.

Security Descriptors and Private Objects.

Hierarchical Object Models and ACL Inheritance.

ACL Programming.

Handles.

Summary.

III. DISTRIBUTION.

7. Network Authentication.

The NTLM Authentication Protocol.

The Kerberos v5 Authentication Protocol.

SSPI.

SPNEGO: Simple and Protected Negotiation.

Summary.

8. The File Server.

Lan Manager.

Lan Manager Sessions.

Clients and Sessions.

Use Records.

NULL Sessions.

Dealing with Conflict.

Drive Letter Mappings.

Named Pipes.

SMB Signing.

Summary.

9. COM(+).

The MSRPC Security Model.

The COM Security Model.

COM Interception.

Activation Requests.

More COM Interception: Access Control.

Plugging Obscure Security Holes.

Security in In-Process Servers?

Surrogates and Declarative Security.

COM Servers Packaged as Services.

Legacy Out-of-Process Servers.

Launching Servers via the COM SCM.

A Note on Choosing a Server Identity.

Access Checks in the Middle Tier.

The COM+ Security Model: Configured Components.

Catalog Settings.

Applications and Role-Based Security.

Making Sense of COM+ Access Checks.

Which Components Need Role Assignments?

Security in COM+ Library Applications.

Fine-Grained Access Control: IsCallerInRole.

Call Context Tracking.

Tips for Debugging COM Security Problems.

Summary.

10. IIS.

Authentication on the Web.

Public Key Cryptography.

Certificates.

Secure Sockets Layer.

Certificate Revocation.

From Theory to Practice: Obtaining and Installing a Web Server Certificate.

Requiring HTTPS via the IIS Metabase.

Managing Web Applications.

Client Authentication.

Server Applications.

IIS as a Gateway into COM+.

Miscellaneous Topics.

Where to Get More Information.

Summary.

Appendix: Some Parting Words.

Well-Known SIDs.

Printing SIDs in Human Readable Form.

Adding Domain Principals in Windows 2000.

Adding Groups in Windows 2000.

Adding Local Accounts and Aliases.

Privileges and Logon Rights.

Secrets: The Windows Password Stash.

Glossary.

Bibliography.

Index. 0201604426T04062001

Published by Addison-Wesley Professional (July 5th 2000) - Copyright © 2000