web-dev-qa-db-ja.com

ユーザーが自分自身にサービスとしてログオンする権利を付与できるのはなぜですか?

この記事 は、Active Directoryユーザーにサービスとしてログオンする権利を付与するために実行する必要がある(比較的面倒な)手順について説明しています。ただし、サービスをインストールしてADアカウントのログオン資格情報を手動で指定すると(サービスのプロパティ|ログオン)、Windowsは「アカウント[myaccount]にサービスとしてログオンする権限が付与されている」と通知します。その後、自分のアカウント資格情報でサービスを実行できます。ただし、その後のサービスの再インストール時(または場合によっては再起動時)、ログインに失敗したためにサービスを再び開始できません...ログインして手動で資格情報を再入力し、アカウントが魔法のように付与されるまでサービスとしてログオンする権利。この後、サービスは私のアカウントの資格情報で再び開始できます。

何が起きてる?なぜ私はこの権利をその場で自分自身に与える許可を持っているのですか?オンザフライで付与できる場合、なぜ付与されたままにならず、再度付与し続ける必要があるのですか? Active Directoryを介してこの権利を誰かに付与する方法を尋ねているのではないことに注意してください。ログオンウィンドウに資格情報を入力すると、この権利がWindowsによって「自動付与」されているように見えるという事実について話します。

7
Jez

サービスとしてのログオンが許可されるアカウントを定義するグループポリシーがあるようです。管理者であるため、この特権を付与する権限がありますが、グループポリシーを再適用すると、特権は削除されます。次回サービスが停止すると、サービスを開始できなくなります。

このマシンがポリシーから除外されるようにポリシーのスコープ/フィルタリングを変更するか、ポリシーを使用して必要な権限を付与する必要があります。

コメントからの情報:グループポリシーが設定を適用しているかどうかを確認するには、結果のポリシーのセットウィザード(rsop.msc)を使用します
この設定を多くのコンピューターに適用する場合、またはこの設定を定義する既存のポリシーを削除できない場合は、グループポリシーを使用して定義してください。これを行う方法を説明する technetの記事 があります。
現在のローカルセキュリティ設定を確認するには、secpol.mscを使用します。[ローカルポリシー]を展開し、[ユーザー権利の割り当て]を選択します。現在適用されている設定が表示されます。十分なアクセス権があり、有効なグループポリシーがない場合は、これにより現在のポリシーを編集できます。追加/削除ボタンが無効になっている場合、ポリシーは現在この設定を定義しています。

有効なポリシーがない場合は、Windowsがユーザーに権利を付与できるようにすることはまったく問題なく、Windowsが提供する便利な機能にすぎません。 Jezが発見したように、ポリシーISが有効である場合、それは無意味なものです。通常、ポリシーは数時間ごとに再適用され、行ったすべての変更をザッピングし続けます(ただし、サービスJezは、サービスはインストール時に生成されたLUIDによって識別されると述べました。これが当てはまるかどうかはわかりませんが、サービスとしてログオンします。ユーザー権利は特定のサービスに制限されていないため、ログオンするサービスに違いはありません。Windowsに権利を割り当てさせることの危険性のひとつは、以前のアカウントを削除するのを忘れてしまい、サービス特権としてログオンし、それを必要としないアカウントの膨大なリスト。

したがって、Jezのコメントにもう少し直接答えるために、有効なポリシーがある場合、無効になっているsecpol.mscUIを回避する方法を見つける意味はありません。管理している変更が保持されないことを警告するため、UIは無効になっています。この場合、ポリシーの編集は、特権を付与するか、その設定の作成を停止してローカルに割り当てることができるようにするための方法です。

編集:ドメインユーザーにこの特権を付与することは、ローカルユーザーに付与することとはどういうわけか異なると思うようです。そうではありません。問題のPC /サーバーにグループポリシーが適用されていない場合は、secpol.mscを開き、問題の特権に移動し、ダブルクリックして[追加]をクリックし、目的のアカウントを選択します。私はドメインに参加しているラップトップでこれを試してみましたが、ユーザーの追加ダイアログは実際にはデフォルトでドメインに設定されています。ローカルグループを選択する場合は、場所を変更する必要があります。

権限をダブルクリックすると、リストと追加/削除ボタンが表示されていると思いますが、ボタンは無効化されているため、リストを編集できません。ローカルアカウントとドメインアカウントのどちらを追加するかをまだ選択していないため、ドメインアカウントを追加しているため、これを行うことはできません。

私は職場でまさにこの問題に遭遇しました。私がインストールしていたサービスは1台のPCでしか実行されていなかったため、ポリシーを変更することはできませんでした。問題のPCをポリシーが適用されていないOUに移動したところ、問題なく特権を付与できました。

ラウンドアバウトな方法で特権を付与できるのは、ポリシーがUIを無効にするだけで、実際に持っているアクセス許可が変更されるわけではないためです。ただし、定期的に再適用されるため、設定が上書きされます。

8
pipTheGeek

その記事では、ADAM(Active Directoryアプリケーションモード)について説明しています。これは、標準のActiveDirectoryインストールとはまったく異なります...検討する価値があります。

意見の時間-サービスをインストール(または再インストール)すると、レジストリにそのUIDが生成されると思います。認証を含め、その設定のいくつかはおそらくそれに関連付けられています。

3
Heglund

これをまっすぐにしましょう-

  1. ユーザーアカウントで実行中のサービスがあります(services.mscでは、このサービスの横にユーザーアカウントが表示されます)
  2. これを最初に機能させるには、アカウントにサービスとしてログオンする権限を付与しました
  3. サービスの再起動または再インストール後、サービスはログイン失敗エラーで開始できません
  4. これを修正するには、サービス構成に資格情報を再入力して開始するだけです。

これは、サービスとしてのログイン権を定期的に失うのではなく、保存した資格情報に問題があることを意味します。

まず、資格情報を使用するのではなく、このサービスを実行するための新しいユーザーアカウントを作成し、アカウントのパスワードを無期限に設定して、アカウントにサービス権限としてログオンを許可することをお勧めします。ベストプラクティスは、ユーザーアカウントを転用するのではなく、サービスとして実行されるソフトウェア専用のアカウントを常に使用することです。

次に、問題が再び発生するかどうかを確認し、発生した場合は、これが失敗した原因を正確に調べてください。つまり、サーバーを再起動するたびに資格情報を再入力する必要がありますか?

また、なぜ定期的にサービスを再インストールするのですか?このソフトウェアに他の問題はありますか?

1
Jon Reeves

これは正しい問題ではないようです。このサービスの再起動の間にパスワードが変更される可能性はありますか?その場合は、サービス設定でリセットを変更する必要があります。パスワードが変更されないサービスアカウントを作成することをお勧めします

0
uSlackr