Trzy źródła, które przelewałem podczas opracowywania własnych procesów importowania użytkowników, to: http://support.apple.com/kb/PH15663 oraz strony podręcznika dla dsimport i dsexport .
W przypadku OD wydaje się, że musisz zdefiniować format pliku, którego używasz do importowania rekordów. Chociaż powyższa strona pomocy wskazuje, że istnieje garść wymaganych atrybutów, zauważyłem, że mogę zaimportować tylko dwa pola opisane powyżej, a system automatycznie przypisał informacje o UID.
Górny wiersz pliku używanego do importowania rekordów określa format. Zawiera cztery kody szesnastkowe, typ rekordu, atrybuty liczbowe i listę atrybutów.
Domyślne kody szesnastkowe działają dla mnie ładnie:
0x0A End of record is indicated by a new line
0x5C The escape character is defined as \
0x3A The field separator is a : (not a comma)
0x2C Each value in the field is separated by a comma
Do tego celu typami rekordów są użytkownicy standardowi, dsRecTypeStandard: Użytkownicy.
Liczba wymaganych atrybutów wynosi 2, a ich wartości to: RealName i RecordName.
Tak więc plik, który powinien działać dla Ciebie to:
0x0A 0x5C 0x3A 0x2C dsRecTypeStandard:Users 2 RealName RecordName
User One:user1
User Two:user2
...
User XXX:userX
Należy jednak pamiętać, że Server.app może wypełnić niektóre, ale nie wszystkie brakujące dane. Zalecam zbudowanie pliku importu, który zawiera wszystkie wymagane atrybuty.
Dsimport udostępnia również opcję --template, która eliminuje potrzebę opisów pól, jeśli plik ma wszystkie siedem standardowych pól.
Zdaję sobie sprawę, że pytanie ma kilka miesięcy, ale mam nadzieję, że pomoże to komuś w przyszłości.