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