Mac OS X 10.3 and later: Active Directory とオープンディレクトリにバインドされているワークステーションにユーザがログインできない

  • 最終更新日: 09 9月, 2008
  • 記事: TS2250

現象

Active Directory (AD) およびオープンディレクトリ (OD) にバインドされているワークステーションにユーザがログインできません。以下の場合に当てはまります:

  • 「ディレクトリアクセス」が Mac OS X 10.3 Server(OD マスターモード)と Active Directory の両方にバインドされている Mac OS X 10.3 クライアント。または、
  • アップルのスキーマを持ち、Kerberos 設定ファイルを適用している LDAP ディレクトリと連係した Mac OS X 10.3 Server(OD マスターモード)。

 

Mac OS X 10.3 Panther 以降では、Mac OS X クライアントは、“KerberosClient”レコードを含んでいる LDAP サーバ(OD など)へバインドされると、自動的に Kerberos の設定情報を生成しようとします。AD プラグインもまた、AD へバインドすると、自動的に Kerberos を設定しようとします。これらのメカニズムは、ファイル「

/ライブラリ/Preferences/edu.mit.Kerberos

」にデータを書き出します。

 

お使いのクライアントコンピュータが、ユーザの認証用に AD にバインドされていて、Mac OS X に管理されているクライアント項目用に OD にバインドされている場合、クライアントコンピュータは自動的に、OD サーバと AD プラグインの KerberosClient レコードを使用して Kerberos の設定を行おうとします。これがうまく行き、両方のソースから正しい情報を取得できることもありますが、場合によっては、AD ドメインコントローラの前に OD サーバが情報を返し、クライアントは OD の情報でしか設定されないことがあります。クライアントコンピュータは AD Kerberos のことを事実上「忘れる」ため、結果としてユーザはそのワークステーションにログインできなくなります。Mac OS X は AD に対するユーザ認証に Kerberos を使用するため、OD サーバからの Kerberos の設定は無関係となります。

 

クライアントが、上述の 2 つのソースからの情報を衝突させてしまうのを防ぐには、OD サーバ上の KerberosClient レコードの名前を変更します。こうすることで、クライアントは AD からのみ Kerberos 情報を取得でき、この情報が毎回ユーザがログインするときの正しい情報となります。

対象製品

Mac OS X Server 10.4, Mac OS X Server 10.3

解決方法

この問題を解決するには、次の手順を実行します:

  1. 「ワークグループマネージャ」を開きます。
  2. 対象の OD マスターにディレクトリ管理者として接続します。
  3. 「環境設定」で「“すべてのレコード”タブとインスペクタを表示する」チェックボックスを選択します(警告ダイアログを確認します)。
  4. 標的の絵のアイコンをクリックして、インスペクタを有効にします。
  5. 左側のリストの上にポップアップメニューが表示されます。ここに、属性のコンテナすべてが表示されます。Config コンテナを選択します。
  6. Config コンテナに属性のリストが表示されます。
  7. 左側のリストから KerberosClient 属性を選択します。
  8. 右側のインスペクタのパネルには、この属性の生(未処理の)ディレクトリデータが表示されています。
  9. 右側のインスペクタのパネルから "RecordName" キーを選択します。このキーに KerberosClient に対応する値が含まれています。
  10. インスペクタパネルの下の「編集」ボタンをクリックして、この属性の RecordName を編集します。
  11. 編集パネルが表示されます。「テキスト」フィールドのテキストを "KerberosClient" から何か別のテキスト(たとえば "KerberosClient_DONOTUSE" など)に変更して、「OK」をクリックします。
    注記:"KerberosClient" を変更することが目的であり、どのように変更するかは重要ではありません。"KerberosClient" が見つからないと、クライアントは Kerberos を自動設定しようとしないので、この方法が役に立ちます。
  12. この属性のインスペクタパネルに戻ります。キー RecordName の値が、KerberosClient の代わりに入力した値になっているはずです。
  13. 「保存」をクリックします。KerberosClient 属性の名前を変更したので、クライアントはもう OD から Kerberos の自動設定情報を取得しません。取得されるのは AD からの情報で、これが必要としていたものです。
    注記:後で OD からの Kerberos の自動設定をもう一度有効にする場合は、単に "KerberosClient_DONOTUSE"(または自分で付け替えた名前)を "KerberosClient" に戻すと、Macintosh クライアントはもう一度そこから設定データを引き出します。

 

この記事は、追加情報が提供されるたびに随時更新を行う予定です。

Not helpful Somewhat helpful Helpful Very helpful Solved my problem