問題タブ [dscl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
301 参照

objective-c - macOS マシンから AD ドメイン コントローラーにアクセスできるかどうかを確認する

Active Directory ドメイン コントローラーのアクセシビリティに基づいて動作を変更するソフトウェアがあります (ドメインに参加しているマシンの場合)。たとえば、LAN 内のマシンとドメイン コントローラにアクセスできる場合、すべての機能を利用できます。マシンが LAN の外に出ると、ソフトウェアの一部の機能が無効になります。

標準の Win32 API を使用して Windows でうまく動作しますが、今のところ macOS に実装する方法が見つかりません。API が見つかりませんでした。コマンドラインツールをいくつか試しました。例えば、

dscl "/Active Directory/<DOMAIN NAME>" read / dsAttrTypeNative:DomainName

odutil show nodenames

macOS マシンを AD LAN から切断しても、約 30 分間、ドメイン コントローラーに引き続きアクセスできるように、情報が表示されます。

キャッシュはシステムや他のアプリケーションによって使用されているため、情報を更新するツールを作成するために Open Directory AD キャッシュ全体を削除することはできません。システム全体の動作を変更したくありません。かなり頻繁に(2〜5分ごとに)行う必要があるため、そのためにサービスを強制終了(再起動)することはできません。

ldapsearch (または LDAP C++ ライブラリ) を使用して AD ドメイン コントローラーのアクセシビリティを確認できることはわかっていますが、私のソフトウェアにはドメイン コントローラーの構成に関する情報がありません。情報を要求する資格情報がありません。また、Windows API の場合、デフォルトで Kerberos が使用されます。ldapsearch の場合は、構成する必要があります。

では、AD ドメイン コントローラーにアクセスできるかどうかを確認するために、追加の構成なしで使用できる macOS API (Objective C、C++) またはシステム コマンド ツールはありますか?