2011-01-21 16 views
1

問題の説明: Therenは2つのサブシステムです。 1つはWebベースのJava EEアプリケーションで、もう1つはCognosのレポートツールです。現在のところ、これらのアプリケーションは両方とも、ユーザーがシステムで定義された役割に従って活動を実行できるようにする個々のログインページを提供します。 Java EEユーザーは、ログインページを使用してJava EEアプリケーションに直接ログインできます。同様に、Cognosユーザーは、ログインページを使用してイントラネットID資格情報を提供してポータルにログインできます。Java EEとCognosアプリケーション間のSSO

Java EEアプリケーションのユーザーは、Java EE WebアプリケーションのURLリンクをクリックしてCognosレポートを表示できる必要があります。現在、このURLをクリックすると、ユーザー資格情報の入力を求めるCognosポータルが開きます。

私は、URLをクリックすると、Cognos Portalのログインページをバイパスするのに役立つソリューションを期待しています。これにより、Java EEアプリケーションにログインしたユーザーは、再度ログインすることなく新しいWebページでCognosレポートを表示できます。

答えて

0

次の手順を実行してあなたのアプリとCognosの間のシングルサインオンを実現します:

を(私はあなたがLDAPおよびJavaを使用していることを前提としています)

  • のCognos SDKをインストールします。既にCognos BIサーバーを持っている開発マシンで実行してください。 Cognos SDKにバンドルされているサンプルを試すには、JDKが必要です。 JDKのないCognosをすでに実行している場合、CognosはバンドルされているJREを使用している可能性があります。残念ながら、Oracleではありません。その場合は、CognosをアンインストールしてからOracle JDKをインストールしてから、CognosおよびCognos SDKを再インストールする必要があります。そうしないと、暗号の互換性に問題が発生します。
  • LDAPのような完全な認証プロバイダの名前空間が正しく設定されていることを確認してください。
  • Cognos SDKに付属のTrustedSignonSampleに移動します。 Cognos 10では、Javaサンプルは$ COGNOS_SDK/java/AuthenticationProviderにあります。
  • TrustedSignonSample.javaを変更し、そこにLDAP名前空間IDを設定します。プロバイダの信頼できる署名は、この名前空間を使用して、ユーザーが存在するかどうかを検証します。
  • 提供されたbuild.batを使用してサンプルをビルドし、jarファイルを取得する必要があります。
  • サンプルに同梱されている「readme.txt」を読み、このプロバイダを正しく設定してください。
  • これでCognosのログインページに移動すると、2つの名前空間の選択肢が表示されます。
  • Cognosと同じマシンでアプリケーションを実行している場合は、それぞれの名前(クッキー名についてはTrustedSignonSampleを参照)と値を持つクッキーを作成してください。 Cookieの値は、現在ログインしているユーザーのアプリケーションとして設定します。
  • これはCookieを設定した後で、Cognosのログインページにアクセスしてカスタムの信頼されたサインオンプロバイダの名前空間を選択すると、ログインを要求されません。
  • Cognosにログインページが表示されないようにするには、カスタムの信頼されたサインオンプロバイダの名前空間をcognos設定のデフォルトとして設定できます。
  • Cognosとは別のマシンでアプリを実行している場合は、Cognosグローバル設定でもう少し設定を行って、そのマシン/ドメインからのクッキーを受け入れる必要があります。開始//businessintelligence.ittoolbox.com/groups/technical-functional/cognos-l/the-cookie-trusted_signon_user-is-not-set-4863689ます:http:

詳細情報については、この "スレッド" を参照してください。本当にあなたによって。

私はこのようにCognosと私のアプリケーションの間でシングルサインオンを達成しました。それがあなたを助けることを願っています

関連する問題