まず第一に、ログインプラグインをコンソールのログイン権限内に配置して、ログインプラグインのデバッグを開始しないでください。OSが操作中に呼び出す必要がある可能性のある他の権利とは完全に独立して、auth dbに特別なテスト「ダミー」権利を作成する必要があります。「MyTestRight-RemoveMeAfterTest」のような名前を付けてください。
次のような plist ファイルを作成します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>class</key>
<string>evaluate-mechanisms</string>
<key>comment</key>
<string>Used to validate a terminal user.</string>
<key>mechanisms</key>
<array>
<string>NameAndPassword:invoke</string>
</array>
</dict>
</plist>
ターミナルから「security」コマンドを使用してインストールします。
「セキュリティ認証データベース書き込み MyTestRight-RemoveMeAfterTest < MyTestRight-RemoveMeAfterTest_plist_file」
たとえ 10.9 より前の osx の場合であっても、認証データベースを手動で編集しないでください。間違えた場合、OS がファイルを解析できず、大惨事になります。私はそこに行ったことがあります。私はこれらのプラグインを何年もやっています。OS がファイルを読み取ることができない場合、ログイン時にプラグインがハングした場合と同じ状況になります。SSH を有効にするための先見の明がなかった場合は、別のパーティションで起動するか、タイム マシンのバックアップから起動する必要があります。後者の場合、最近の編集内容を外部ドライブに保存したほうがよいでしょう。
データベースに権限をインストールしたら、外部プログラムからテストする必要があります。
名前とパスワードの例に含まれている readme ファイルに示されているように、セキュリティ インフラストラクチャを呼び出して、OS と同じように権利を要求する必要があります。
リンゴのサンプルを使用する場合は注意してください。ガイドとしてのみ使用してください。NameAndPassword にエラーがあり、実行できませんでした。2006 年に最後に更新され、現在は廃止された多くの機能を使用しています。実際には何もしませんが、単なるシェルです。