Mac のディレクトリユーティリティで RFC 2307 マッピングを編集してユーザの作成を可能にする
macOS Server または「ディレクトリエディタ」を使って RFC 2307(UNIX)マッピングを使用する Apple 以外の LDAP ディレクトリサーバにユーザを作成する前に、ユーザのレコードタイプのマッピングをあらかじめ編集しておく必要があります。これは「ディレクトリユーティリティ」を使用して行います。
Mac の「ディレクトリユーティリティ」アプリケーション で、「サービス」をクリックします。
カギのアイコンをクリックします。
管理者のユーザ名とパスワードを入力し、「構成を変更」をクリックします(または Touch ID を使用します)。
「LDAPv3」を選択し、編集ボタン(鉛筆のアイコン)をクリックします。
サーバ設定のリストが隠れている場合は、「オプションを表示」をクリックします。
RFC 2307 マッピングを使用するディレクトリ設定を選択してから「編集」をクリックします。
「検索とマッピング」をクリックします。
左側のリストで「ユーザ」を選択します。
デフォルトでは、「リスト内の __ の項目へのマップ」は「任意」に設定され、右側のリストには「posixAccount」、「inetOrgPerson」、「shadowAccount」が含まれます。
「リスト内の __ の項目へのマップ」を「すべて」に変更してから、ユーザのレコードタイプにマップしたい LDAP オブジェクトクラスがすべて取り込まれるように右側のリストを変更します。
たとえば、ユーザが posixAccount と inetOrgPerson にのみマップされるよう、リストから shadowAccount を削除できます。または、ユーザを posixAccount と shadowAccount のアカウントにマップすることもできます:
リストの項目を変更するには、その項目をダブルクリックします。
リストに項目を追加するには、「追加」をクリックします。
リストから選択した項目を削除するには、「削除」をクリックします。
リストされた項目の順序を変更するには、リストで項目を上下にドラッグします。
「ターミナル」で UNIX ツールの
ldapsearch
を使用すると、LDAP ディレクトリでユーザレコードのオブジェクトクラスを見つけることができます。たとえば次のコードは、cn 属性が「Leonardo da Vinci」のユーザレコードのオブジェクトクラスを検出します:$ ldapsearch -x -h ldapserver.example.com -b "dc=example, dc=com" 'cn=Leonardo da Vinci' objectClass
この例では、次のような出力が表示されます:
# Leonardo da Vinci, example.com
dn: cn=Leonardo da Vinci, dc=example, dc=com
objectClass: inetOrgPerson
objectClass: posixAccount