2

2 つの Windows ドメイン A と B があります。

nasBドメイン B とwebserverAドメイン Aの2 つのサーバーがあります。

私は 2 人のユーザーを持っています:userBドメイン B にアクセスしnasBuserAドメイン A にアクセスします。webserverA

で tomcat をサービスとして実行してwebserverAいますが、logon as プロパティが に設定されていuserAます。

資格情報を使用して\\nasB\myFiles$\マッピングしました。マッピングは、JVM アクセスを許可するためだけのものです。コードでは常に UNC を使用してドライブにアクセスします。ネットワークパスワードの管理にも資格情報があります。どちらの方法も、サービスとしてではなく Java アプリを直接実行する場合に機能します :(webserverAuserB

Tomcat をサービスとして実行すると、アクセスしようとした場合を除き、filenotfound がスローされます\\nasB\myFiles$\somefile.txt。startup.bat を使用して tomcat を実行すると、ファイルに正常にアクセスできます。

userB彼はにアクセスできないため、Tomcat サービスを実行できませんwebserverAuserBアクセス時にtomcat サービスに資格情報を使用させるにはどうすればよいnasBですか?

4

2 に答える 2

3

マップされたドライブを使用しないでください。

ユーザーの構成とマップされたドライブは、ユーザーが対話型ログインを使用してログインした場合にのみ使用できるため、そのようなリソースを使用することはできません。UNC パスを使用してみてください。ユーザーの制限によりそれが機能しない場合は、jcifs ライブラリを手に入れてください。UNC パスを使用してリソースにアクセスするときに認証できるため、そのような場合に非常に便利です。そのため、不確実性が軽減されます。ネットワークドライブ内のフォルダーとファイルを読み取る機能について (また、Tomcat サービスを管理ユーザーとして実行するように構成し、有効期限が切れてはならない資格情報を提供します...)。

私はこれに自分自身で直面しており、これは私の個人的な見解です。

于 2012-10-01T19:55:02.627 に答える
0

両方のWindowsサーバーで同一のユーザー名/パスワードを使用してWindowsユーザーを作成します。userA / passAの例次に、そのユーザーでTomcatWindowsサービスを実行します。

于 2012-12-25T15:55:55.087 に答える