Solaris 开发者安全性指南

第 1 章 面向开发者的 Solaris 安全(概述)

本手册介绍用于 Solaris 操作系统 (Solaris OS) 中安全功能的公共应用程序编程接口 (application programming interface, API) 和服务提供者接口 (service provider interface, SPI)。本章介绍以下两个方面的内容:

面向开发者的 Solaris 安全功能概述

本手册介绍了 Solaris 操作系统中安全功能的公共 API 和公共 SPI。有关如何从系统管理员的角度实现这些安全功能的信息,请参见《系统管理指南:安全性服务》中的第 1  章 “安全性服务(概述)”

Solaris OS 提供了一个基于标准行业接口的网络安全体系结构。通过使用标准化的接口,应当无需随着安全技术的演变对使用或提供加密服务的应用程序进行任何修改。

系统安全

为了实现系统安全,Solaris OS 提供了进程权限。进程权限是基于超级用户的 UNIX 标准模型的替换模型,可用来授予对特权应用程序的访问权限。系统管理员需要为用户指定一组允许其访问特权应用程序的进程权限。这样,用户不必成为超级用户即可使用特权应用程序。

系统管理员可以使用进程权限来将有限的权限授予用户,以覆盖系统安全,而不是授予用户完全的超级用户权限。相应地,创建新特权应用程序的开发者应当测试特定的权限,而不是检查 UID 是否等于 0。请参见第 2 章,开发特权应用程序

为了实现非常严格的系统安全,Sun Microsystems, Inc. 提供了 Trusted Solaris 操作系统,但这不在本书的讨论范围之内。Trusted Solaris 操作系统允许系统管理员指定能够由特定用户访问的应用程序和文件。有关更多信息,请参见 http://wwws.sun.com/software/solaris/trustedsolaris/

网络安全体系结构

网络安全体系结构使用行业标准接口,如 PAM、GSS-API、SASL 和 RSA Security Inc. 的 PKCS#11 加密令牌接口 (Cryptographic Token Interface, Cryptoki)。通过使用标准化的协议和接口,开发者可以编写无需随安全技术演变而进行修改的消费方和提供者应用程序。

使用安全服务的应用程序、库或内核模块称作消费方,向消费方提供安全服务的应用程序称作提供者,还可以称作插件。用来实现加密操作的软件称作机制。机制不只是算法,其中还包括算法的应用方式。例如,将 DES 算法应用于验证功能是一种机制,而将 DES 应用于逐块加密的数据保护功能是另外一种机制。

使用网络安全体系结构,消费方的开发者将不再需要编写、维护和优化加密算法。可以将经过优化的加密机制作为网络安全体系结构的一部分提供。

Solaris OS 提供了以下几个公共 Solaris 安全接口: