2

Waffle と Kerberos に次の問題があります。

Tomcatで動作し、ワッフルを使用しているKerberosでSSOを備えたJavaサーブレットアプリケーションがあります。

SSO を機能させるには、以下を有効にする必要がありました。

  <init-param>
      <param-name>impersonate</param-name>
      <param-value>true</param-value>
  </init-param>

impersonate を false に設定すると、SSO が機能しません :(

ユーザーは SSO を使用してアプリにログインできます。

しかし、その後、偽装の変更 tomcat ユーザーとアプリケーションが管理者権限ではなく、userA または userB として機能することがわかりました。したがって、userA が私のシステム (レポート、ログ、構成ファイル) にファイルを作成すると、彼はファイルの所有者になり、userB がログインしてこのファイルにアクセスしようとすると、アクセス拒否例外が発生します。

次のコードでファイルを作成します。

File file = new File(fileName);
file.createNewFile();
file.setExecutable(true, false);
file.setReadable(true, false);
file.setWritable(true, false);

ユーザーを変更せずにアプリケーションを動作させたいのですが、ユーザーAやユーザーBではなく、Tomcatユーザーがファイル(管理者)を作成、読み取り、追加する必要があります。

ワッフルを使用した Kerberos SSO が必要ですが、このなりすましがこのように機能することは望ましくありません。ワッフルを機能させる他の方法はありますか?それとも、他の方法でファイルを保存できますか?

4

1 に答える 1