OpenWindows 環境では、MIT-MAGIC-COOKIE-1 および SUN-DES-1 の 2 種類の認証プロトコルをサポートしています。その 2 種類のプロトコルの違いは、使用する認証データの違いであり、アクセス制御機構に関しては同様です。
ユーザーベース機構を使用する MIT-MAGIC-COOKIE-1 プロトコルが OpenWindows 環境のデフォルト設定です。
MIT-MAGIC-COOKIE-1 は、MIT (マサチューセッツ工科大学) で開発された認証プロトコルです。マジッククッキーは、ランダムな値に生成されるバイナリ形式のパスワードです。サーバーのスタートアップ時に、そのサーバーおよびユーザー (システムを起動したユーザー) に関してマジッククッキーが作成されます。接続が要求されるたびに、そのユーザーのクライアントは、接続パケットの一部として、サーバーにマジッククッキーを送ります。そのマジッククッキーはサーバーのマジッククッキーと比較され、2 つが一致すれば接続が許可されます。2 つのマジッククッキーが一致しなければ、接続は許可されません。
SUN-DES-1 は Sun が開発した認証プロトコルです。Secure RPC (Remote Procedure Call) が基本になっており、DES (Data Encryption Software) サポートが必要です。認証データはユーザーのネット名、すなわちマシン独立のネットワーク名です。このデータは暗号化され、接続パケットの一部としてサーバーに送られます。サーバーはそのデータを暗号解読し、それが既知のネット名であれば接続が許可されます。
SUN-DES-1 認証プロトコルは、MIT-MAGIC-COOKIE-1 よりも高度なセキュリティを提供します。特定ユーザーのネット名 (マシン独立) を他のユーザーが使用してサーバーにアクセスすることは不可能です。しかし、他のユーザーがマジッククッキーを使用してサーバーにアクセスすることは可能です。
このプロトコルは、OpenWindows バージョン 3 以降の環境に入っているライブラリでしか使用できません。それより古い OpenWindows 環境の静的ライブラリ (特に Xlib) とリンクしているアプリケーションは、この認証プロトコルを使用できません。
後述の 「SUN-DES-1 を使用する場合のアクセス許可」で説明するように、特定ユーザーのアクセスリストにネット名を追加することによって、サーバーに対する他ユーザーのアクセスを許可することができます。
デフォルト認証プロトコルの MIT-MAGIC-COOKIE-1 を他のサポートされている認証プロトコルに変更することができます。また、ユーザーベースのアクセス制御機構を使用しないという変更も可能です。このデフォルト設定の変更には、openwin コマンドとともにオプションを指定します。詳しくは openwin(1)のマニュアルページを参照してください。
たとえば、MIT-MAGIC-COOKIE-1 から SUN-DES-1 に変更するには、OpenWindows を次のように起動します。
example% openwin -auth sun-des
ユーザーベースのアクセス機構なしで OpenWindows を実行する必要があるときは、コマンド行オプション -noauth を使用します。
example% openwin -noauth
-noauth を使用することによってセキュリティ機能が低下します。ホストベースのアクセス制御機構のみで OpenWindows を実行することに等しく、サーバーはユーザーベースのアクセス制御機構を非アクティブ状態とします。そのローカルマシン上でアプリケーションを実行できるすべてのユーザーに対してサーバーへのアクセスが許可されます。