2011-11-11 3 views
2

IBMのTivoli Security Policy ManagerをカスタムPIP(com.ibm.tscc.rtss.authz.api.IExternalFinderを実装)と併用しています。 TIPコンソールから自分のPIPを見ることができます。ポリシーのパラメータの値を提供するように設定することができます。ただし、認証要求の結果としてこれらのポリシーが評価される場合、私のPIPは数分ごとに値を提供するよう求められます。古い値は平均して使用されます。TSPMでカスタムPIPのキャッシングを無効にするにはどうすればよいですか?

これを実証するために、私のPIPは、メソッドへの呼び出しで1つ増えたint counterからなる内部状態を持っています。私のPIPによって生成された単一のStringタイプ(環境)属性は、counter % 2の値に応じて、"even"または"odd"を示します。私は、ユーザーが他のすべての試みにアクセス権を与えられていることを期待していましたが、要求がお互いにすぐに送信された場合はどうなりません。

TSPMでPIPの結果をキャッシュしないように強制する方法はありますか?これはTSPMまたはWebSphereのどこに設定されていますか?

+0

タイムアウトは120秒です。 – martijno

+0

ところで、最初の許可の試みの直後に、システム・ログにはCWRGS1139Eが表示され、ホーム・ディレクトリーを指定しているシステム・プロパティーが見つからないと不満を表明します。 'commonauthz.home'にはさまざまな値がありますが、このエラーは消えてしまいます(しかし私の問題は解決しません)。 – martijno

+0

'/ opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/tspm/xacml/config.xml'の' DisableCaching'を 'true'(' false')に設定しても、どちらも役に立ちません。 – martijno

答えて

2

現在のTSPMのリリースの要求/応答キャッシュには、PIPのキャッシュはありません。これは間違いなく起きているようですが、デフォルトのタイムアウトは実際に120秒です。すべての設定変更をデフォルトに戻してください。commonauthz.homeには何も設定しないでください。 config.xmlの変更をデフォルトに戻してください。

要求/応答キャッシュを無効にする正しい場所は、ファイル<PROFILE_HOME>/config/<CELL>/rtss/security-services.xmiです。このセクションを追加または編集する:

<components name="Authz"> 
     <subComponents name="AuthzServices"> 
     <items name="CommonAuthz"> 
      <properties> 
      <values name="com.ibm.sec.authz.xacml.runtime.DisableCaching" value="true" type="java.lang.String"/> 
      </properties> 
     </items> 
     </subComponents> 

次に、RTSSを再起動します。

ただし、これは運用環境ではお勧めできません。

+0

ありがとうクレイグ!それがトリックでした。 – martijno

関連する問題