JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 10 セキュリティー開発者ガイド     Oracle Solaris 10 1/13 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

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

2.  特権付きアプリケーションの開発

3.  PAM アプリケーションおよび PAM サービスの記述

4.  GSS-API を使用するアプリケーションの記述

GSS-API の紹介

アプリケーションの移植性と GSS-API

GSS-API のセキュリティーサービス

GSS-API で利用可能なメカニズム

リモートプロシージャー呼び出しと GSS-API

GSS-API の制限

GSS-API の言語バインディング

GSS-API に関する詳細情報の入手先

GSS-API の重要な要素

GSS-API データ型

GSS-API の整数

GSS-API の文字列とそれに類するデータ

GSS-API における名前

GSS-API における名前の比較

GSS-API の OID

GSS-API におけるメカニズムと QOP

GSS-API における名前型

GSS-API ステータスコード

GSS-API トークン

GSS-API におけるプロセス間トークン

GSS-API を使用するアプリケーションの開発

GSS-API の一般的な使用法

GSS-API における資格の操作

GSS-API における資格の獲得

GSS-API におけるコンテキストの操作

GSS-API におけるコンテキストの起動

GSS-API におけるコンテキストの受け入れ

GSS-API におけるその他のコンテキストサービスの使用

GSS-API における資格の委託

GSS-API におけるピア間での相互認証の実行

GSS-API における匿名認証の実行

GSS-API におけるチャネルバインディングの使用

GSS-API におけるコンテキストのエクスポートとインポート

GSS-API におけるコンテキスト情報の取得

GSS-API における保護されたデータの送信

gss_get_mic() によるメッセージのタグ付け

gss_wrap() によるメッセージのラップ

GSS-API におけるラップサイズ問題への対処法

GSS-API における順序の問題の検出

GSS-API におけるメッセージ転送の確認

GSS-API セッションのクリーンアップ

5.  GSS-API クライアント例

6.  GSS-API サーバー例

7.  SASL を使用するアプリケーションの記述

8.  Oracle Solaris 暗号化フレームワークの紹介

9.  ユーザーレベルの暗号化アプリケーションとプロバイダの記述

10.  スマートカードフレームワークの使用

A.  C ベース の GSS-API プログラム例

B.  GSS-API リファレンス

C.  OID の指定

D.  SASL ソースコード例

E.  SASL リファレンス

F.  暗号化プロバイダのパッケージ化と署名

用語集

索引

GSS-API の紹介

GSS-API を使用すると、プログラマはセキュリティーの点で汎用的なアプリケーションを記述できます。開発者は、特定のプラットフォーム、セキュリティーメカニズム、保護の種類、または転送プロトコル向けにセキュリティー実装をカスタマイズする必要はありません。GSS-API を使用すれば、プログラマはネットワークデータを保護する方法の詳細を知る必要がありません。GSS-API を使用するプログラムは、ネットワークセキュリティーに関する移植性が高くなります。この移植性が、Generic Security Service API の優れた特徴を示します。

GSS-API は、セキュリティーサービスを汎用的な方法で呼び出し元に提供するフレームワークです。次の図に示すように、GSS-API フレームワークは、Kerberos v5 や公開鍵技術など、基盤となるさまざまなメカニズムや技術によって支えられています。

図 4-1 GSS-API の層

image:アプリケーションとセキュリティーメカニズムの間に、GSS-API とプロトコル層が存在することを示しています。

GSS-API の主な機能は、簡単に言うと次の 2 つです。

  1. GSS–API は、セキュリティー「コンテキスト」を作成し、アプリケーション間でのデータの送受信は、このコンテキスト内で行うことができます。コンテキストは、2 つのアプリケーションが互いに信頼している状態を表します。コンテキストを共有するアプリケーションは、相手がだれであるかを知っており、したがって、そのコンテキストが継続する限り、互いにデータを転送できます。

  2. GSS–API は、「セキュリティーサービス」として知られる 1 種類以上の保護機能を、転送データに対して適用します。セキュリティーサービスについては、「GSS-API のセキュリティーサービス」を参照してください。

さらに、GSS-API は次の機能を実行します。

GSS-API にはさまざまな補助関数や簡易関数が含まれています。

アプリケーションの移植性と GSS-API

GSS-API は、アプリケーションに対して次のような移植性を提供します。

GSS-API のセキュリティーサービス

GSS-API は次の 3 種類のセキュリティーサービスを提供します。

GSS-API で利用可能なメカニズム

GSS-API の現在の実装では、次のメカニズムが利用できます。 Kerberos v5、Diffie-Hellman、および SPNEGO。Kerberos 実装についての詳細は、『Solaris のシステム管理: セキュリティーサービス』の第 21 章「Kerberos サービスについて」を参照してください。Kerberos v5 は、GSS-API 対応プログラムが動作するすべてのシステム上で、インストールおよび実行される必要があります。

リモートプロシージャー呼び出しと GSS-API

RPC (Remote Procedure Call) プロトコルをネットワークアプリケーションに使用するプログラマは、RPCSEC_GSS を使用してセキュリティーを提供できます。RPCSEC_GSS は GSS-API 上にある別の層です。RPCSEC_GSS は GSS-API のすべての機能を RPC 用にカスタマイズした形式で提供します。実際、RPCSC_GSS は GSS-API の多くの側面をプログラマから隠蔽する役割を果たしており、その結果、特に高い操作性と移植性を備えた RPC セキュリティーが実現されています。RPCSEC_GSS についての詳細は、『ONC+ 開発ガイド』の「RPCSEC_GSS を使用した認証」を参照してください。

次の図は、RPCSEC_GSS 層がアプリケーションと GSS-API の間に位置している様子を示したものです。

図 4-2 RPCSEC_GSS と GSS-API

image:リモートプロシージャー呼び出しのセキュリティー機能を提供する RPCSEC_GSS 層を示しています。

GSS-API の制限

GSS-API は、データ保護作業を単純化しますが、GSS-API の一般的な性質に合致しないいくつかのタスクをサポートしていません。GSS-API が実行「しない」作業は、次のとおりです。

GSS-API の言語バインディング

このドキュメントでは現在、GSS-API の C 言語バインディング、つまり関数とデータ型だけに言及しています。Java バインディング版の GSS-API が利用可能になりました。Java GSS-API には、RFC 2853 で規定された Generic Security Services Application Program Interface (GSS-API) に対する Java バインディングが含まれています。

GSS-API に関する詳細情報の入手先

GSS-API についての詳細は、次の 2 つのドキュメントを参照してください。