2017-06-21 21 views
1

今日、setspnコマンドを使用して完全にランダムかつ無効なSPNを作成できましたが、無効なSPNが許可される理由はわかりません。例えば:私のドメインのvalid_userのために正常に実行されたsetspnを使用して無効なサービスプリンシパル名(SPN)を作成できる理由

setspn -s RandomSvc/randomname.random.random valid_user(私はここで、実際のユーザー名に置き換えますが、ユーザーは、ドメイン内の有効なユーザです)。

私がsetspn -l valid_userを実行すると、この無効なエントリが一覧表示されます。

私は誰も実際にこのサービスに接続することはできないと思います。しかし、有効なSPNを追加しようとしたが間違って入力した場合、アプリケーションでエラーが発生するまで通知されません。だからsetspnは何の検証もしないのです(-sで重複をチェックする以外)?

答えて

1

setspnコマンドを実行しても無効なSPNが作成されることはありません。実際のところ問題はありません。有効なSPNの定義 - TCP/IP経由で到達できるDNSのホスト名を持つ実際のマシン上で実行されている実際のサービスを表現するものは、私が記述しようとしている理由でsetspnによって強制されません。 KDCによると、SPN という実際のサービスは、TCP/IP経由で到達できるDNSのホスト名を持つ実際のマシン上で実行されていますが、現時点では実際には実際である必要はありません。理由は次のとおりです。おそらく、サービスやそれが実行されるマシンが後でインストールされるケースを考えましたか? SPNを作成するときには、サービス、それが実行されているマシン、およびそのマシンのDNSエントリが、今ここにある必要はありません。 Setspn.exeは、単にKerberosのRFCに準拠するSPNを作成できるようにする、初歩的なツールです。それをすぐに建築するのはあなた次第ですが、それは誰の手にも当てはまらないでしょう。私は大企業のために働き、SPNをサービスのために、そしてまだ存在していないマシンでも作成します。そうすれば、開発者またはシステム管理者は、事実の後にSPNを作成するために私に連絡する必要はありません。彼らはプロジェクト計画に従っており、精通している管理者は、OS管理者が実際にそのような使用のためにライブサーバを回転させる前に、すべて計画され、作成されたSPN、DNSエンティティ、マシンのIPアドレスを持っています。 setspnがまだ起動していないサービスのSPNを作成できないようにすると、そこには非常に怒っているシステム管理者がいるでしょう。そのため、無効なSPNを作成することは許されません。アプリケーションの前に間違いをキャッチするために、一般的なsetspn.exeによって提供されていない追加の検証レイヤーを実行したい場合は、自分で作成する必要があります。あなた自身に尋ねなさい、これは何か特別なもののための時間の価値があるのでしょうか?つまり、SPNを作成する頻度はどれくらいですか?これはすべて今あなたにとって理にかなっているはずです。定期的にsetspn -Xを実行して、私のドメインの重複した罪を捕まえます。私は時間がありませんでしたが、私はまた、ドメイン内の現在のSPNをすべて列挙し、それぞれが現在有効かどうかをチェックし、そうでない場合は是正措置を講じることもできると思います。私はおそらくおそらくアクティブではないいくつか以上のものがあると確信しています。私はそれを大したこととは考えていない。

+1

これはすべて私にとって正しいようです。 OPがなぜ今これを答えとしてマークしていないのか分かりません... –

関連する問題