# How this guide is organized

This guide includes the following two parts.

Part One: Introduction to database security

- Why databases need security

  Describes the vulnerabilities and threats that databases face.

- Defenses against security threats

  Describes the kinds of defenses that databases can use.

- Defenses mapped to threats

  Shows how the defenses available to databases map to the threats that they face.

- Designing safer Derby applications

  Describes important techniques for securing databases.

- Security terminology

  Provides a glossary of security terms used in this part.

Part Two: Configuring security for Derby

- Basic security configuration tasks

  Lists basic tasks for configuring security in an embedded or client/server environment.

- Configuring database encryption

  Explains how to encrypt Derby databases.

- Using signed jar files

  Explains how to use signed jar files in Derby databases.

- Configuring SSL/TLS

  Explains how to use SSL/TLS to encrypt network traffic in a client/server environment.

- Understanding identity in Derby

  Describes the concepts of identity, users, and authorization identifiers in Derby.

- Configuring user authentication

  Explains how to configure authentication, which determines whether someone is a legal user.

- Configuring user authorization

  Explains how to configure authorization, which determines what operations can be performed by a user's identity.

- Configuring Java security

  Explains how to use a Java security manager with Derby.

- Restricting file permissions

  Explains how to take advantage of file system protections.

- Putting it all together

  Shows how to enable all the available Derby defenses.

Parent topic: About this guide