Oracle Solaris セキュリティーサービス開発ガイド

第 1 章 Oracle Solaris の開発者向けセキュリティー機能 (概要)

このマニュアルでは、Solaris オペレーティングシステム (Solaris OS) のセキュリティー機能に対する公開アプリケーションプログラミングインタフェース (API) と公開サービスプロバイダインタフェース (SPI) について説明します。

この章の内容は次のとおりです。

Oracle Solaris の開発者向けセキュリティー機能の概要

このマニュアルでは、Solaris オペレーティングシステムのセキュリティー機能に対する公開 API と公開 SPI について説明します。システム管理者の視点から見たこれらのセキュリティー機能の動作については、『Solaris のシステム管理 (セキュリティサービス)』の第 1 章「セキュリティーサービス (概要)」を参照してください。

Solaris OS は、業界標準のインタフェースに基づくネットワークセキュリティーアーキテクチャーを提供します。標準化されたインタフェースを使用すれば、暗号化サービスを使用または提供するアプリケーションを、セキュリティー技術の進歩に合わせて変更する必要がなくなります。

システムセキュリティー

システムのセキュリティーに関して、Solaris OS はプロセス特権を提供します。「プロセス特権」は、特権付きアプリケーションへのアクセス許可を行う際に、スーパーユーザーベースの UNIX 標準モデルに対する代替技術として使用できます。システム管理者は、特権付きアプリケーションへのアクセスを許可する一連のプロセス特権をユーザーに付与します。そうしたユーザーは、スーパーユーザーにならなくても、特権付きアプリケーションを使用できます。

特権を使用すれば、システム管理者は、システムセキュリティーを無視する権限をユーザーに与える際に、完全なスーパーユーザー権限ではなく制限された権限を与えることができます。したがって、新しい特権付きアプリケーションを作成する開発者は、UID が 0 かどうかを検査するのではなく、特定の特権の有無を検査する必要があります。第 2 章特権付きアプリケーションの開発を参照してください。

きわめて強固なシステムセキュリティーが必要な場合には、Oracle Solaris の Trusted Extensions 機能の使用を検討してください。Trusted Extensions 機能を使用すれば、システム管理者は、特定のユーザーだけがアクセスできるアプリケーションやファイルを指定できます。Trusted Extensions 機能はこのマニュアルの対象外です。詳細については、http://www.sun.com/software/solaris/ds/trusted_extensions.jsp を参照してください。

ネットワークセキュリティーアーキテクチャー

ネットワークセキュリティーアーキテクチャーは、PAM、GSS-API、SASL、RSA Security Inc. PKCS#11 Cryptographic Token Interface (Cryptoki) といった業界標準のインタフェースに対応しています。標準化されたプロトコルやインタフェースを使用することで、開発者は、セキュリティー技術が進歩しても変更する必要のないコンシューマとプロバイダを記述できます。

セキュリティーサービスを使用するアプリケーション、ライブラリ、またはカーネルモジュールは「コンシューマ」と呼ばれます。コンシューマにセキュリティーサービスを提供するアプリケーションは、「プロバイダ」または「プラグイン」と呼ばれます。暗号化処理を実装するソフトウェアは「機構」と呼ばれます。機構は単なるアルゴリズムではなく、アルゴリズムの適用方法も含んだ概念です。たとえば、ある機構は DES アルゴリズムを認証に適用します。一方、別の機構は DES をデータ保護 (ブロック単位の暗号化) に適用します。

ネットワークセキュリティーアーキテクチャーを使えば、コンシューマ開発者が暗号化アルゴリズムを記述、保守、および最適化する必要がなくなります。最適化された暗号化機構が、アーキテクチャーの一部として提供されます。

Solaris OS が提供する公開 Solaris セキュリティーインタフェースは、次のとおりです。