受け取り人Web(クラシック)アプリケーションのインストール
Apache Tomcatを使用して、Payee Web Classicアプリケーションをインストールして設定します。最新バージョンのSales Portalを使用する場合は、このセクションをスキップして 受け取り人Web(V2)アプリケーションのインストールに進みます。
WARファイルを展開したら、以下の手順をスキップできます。
Apache Tomcat用テナントサービスの場所の設定
Webクライアントのモデルへのアクセス設定
その後、これらの機能を使用する場合は、SSOの設定またはSalesforceの統合を続行できます。
Apache Tomcatを使用したWebクライアントの展開
Apache Tomcatバージョン7または8を使用して、Incentives Webクライアントを展開できます。
Apache TomcatでのWebクライアント展開
Apache Tomcat Managerを使用して、Webクライアントを展開できます。
JavaとApache Tomcatがインストールされていることを確認します。
http://localhost:8080
にアクセスしてApache Tomcat Managerを開きます。ヒント
デフォルトでは、Apache Tomcatはポート8080で実行されますが、Tomcat のインストール中に別のポート番号を指定した場合は、そのポート番号を使用します。
[Tomcat Manager]リンクをクリックして、Tomcatのインストール時に指定したユーザー名とパスワードでログインします。
[展開]セクションで、[参照]をクリックします。
WARファイルを見つけて、[展開]をクリックします。
デフォルトでは、WARファイルの最大サイズは50MBです。受け取り人Webクラシックは100MBであるため、Tomcatアプリマネージャーのserver.xml設定ファイルを編集して、より大きなWARファイルのアップロードを許可する必要があります。
重要
payeeweb.war
ファイルはpayeeweb
の名前で展開する必要があります。アップグレードを実行するときは、ファイル名は一意である必要があるため、新しいWARを展開する前に現在のWARファイルをアンインストールする必要があります。
IncentivesWebクライアントへのリンクをクリックして、展開を確認します。
Apache Tomcat用テナントサービスの場所の設定
WebクライアントがTomcatで展開された後、security.properties
ファイルを編集する必要があります。
次の場所に移動します。
C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\ICM\WEB-INF
ワードパッドなどのテキストエディタで
security.properties
ファイルを開きます。重要
メモ帳は
.properties
ファイルを読み取れないため、使用しないでください。JWT
Configuration
セクションで、テナントサービスの場所の情報を設定します。テナントサービス設定ファイルで設定された値と一致するように、次のシークレットキーを設定します。
注記
これらのキーは、長さの要件を満たすため43文字以上である必要があります。
キー名
説明
secretkey
これは、テナントサービス設定ファイルで設定した
VARICENT
_WEB_KEY
と一致する必要があります。tenantSecretKey
これは、テナントサービス設定ファイルで設定した
TENANT_KEY
と一致する必要があります。更新された
security.properties
ファイルを保存します。ヒント
新しいバージョンにアップグレードするときなど、アプリケーションの再展開時に参照として使用するファイルのコピーを別の場所に保存します。
システムを再起動して、編集したキーをコミットします。
Tomcat Managerを開き、[再読み込み]リンクをクリックして、変更を反映します。
Webクライアントのモデルへのアクセス設定
WebクライアントからIncentivesオンプレミスモデルにアクセスするには、いくつかのパラメーターを設定する必要があります。
WebクライアントがTomcatで展開された後、jdbc.properties
ファイルを編集する必要があります。
次の場所に移動します。
C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\ICM\WEB-INF
ワードパッドなどのテキストエディタで
jdbc.properties
ファイルを開きます。シャープ(#)記号を削除して、次のフィールドを有効にします。
jdbc.tenant=single jdbc.model=
jdbc.properties
ファイルの次のフィールドを更新します。重要
[en] In the
jdbc.properties
file, the build will containjdbc.onprem=false
. To set up Sales Portal, update this line tojdbc.onprem=true
.jdbc.model
フィールドを更新し、SQLモデルの名前を含めます。jdbc.ProductName=
をsqlserver
またはsqlserverunicode
のいずれかに更新します。ヒント
PostgreSQLの
models
テーブルで必要な2つの値のいずれかを確認するか、databaseType
モデルが配置されているサーバーのdefaults.json
ファイルを確認することができます。jdbc.url=
フィールドをアップデートして、SQLサーバーを含めます。1つのSQLインスタンスがある場合は、次の形式を使用します:
jdbc:jtds:sqlserver://<your SQL Server name or IP address>:1433/<Database name>
複数のSQLインスタンスがある場合は、次の形式を使用します:
jdbc.url=jdbc:jtds:sqlserver://<your SQL Server name or IP address>:1433/<Database name>;instance=<SQL instance name>
jdbc.username=
フィールドを、SQLモデルへのアクセス権を持つSQLユーザーを含めるように更新します。ヒント
デフォルト設定を使用している場合は、ユーザー名は通常、
sa
です。SQLモデルへのアクセス権を持つSQLユーザーのパスワードを含めるように、
jdbc.password=
を更新します。
更新された
jdbc.properties
ファイルを保存します。ヒント
新しいバージョンにアップグレードするときなど、アプリケーションの再展開時に参照として使用するファイルのコピーを別の場所に保存します。
Tomcat Managerを開き、[再読み込み]リンクをクリックして、変更を反映します。
IncentivesWebクライアントへのリンクをクリックします。
これで、SSO設定またはSalesforce.comとの統合を続行できます。
SSO設定
Incentivesは、SAML 2準拠のIDプロバイダを使用してネイティブ認証をサポートします。
これらのステップでは、OpenAMサインオンソリューションを例として使用します。手順は、他のSAML2準拠のIDプロバイダと類似します。
IncentivesWebクライアントを参照します。
クライアントが評価されます。
IncentivesがブラウザをSSOのURLにリダイレクトします。
WebブラウザがSSOのURLにリダイレクトします。
SAML応答は、クライアントネットワークのSSOプロバイダによって生成されます。
クライアントは、エンコードされたSAML応答をブラウザに返します。
ブラウザは、エンコードされたSAML応答をIncentivesに返します。
SAML応答は によってIncentives検証されます。
ユーザーがWebクライアントにログインしています。
サービスプロバイダ設定
WebクライアントをSAMLサービスプロバイダとして展開するには、Apache TomcatおよびIncentivesを設定する必要があります。
WebクライアントをSAMLサービスプロバイダ(SP)として展開する前に、IDプロバイダ(IDP)から次の3つの情報を入手する必要があります。
IDP SAMLメタデータファイル(通常は
idp
.xml
)SSLキーストアファイル(通常は
keystore
.jks
)キーストアの署名キー資格情報の(エイリアスとパスワード)
まず、WebアプリケーションサーバにICM
.war
ファイルを展開します。
推奨ライブラリ
Incentives WebクライアントのSAML実装では、標準ライブラリで利用可能なものよりも高度なXMLコンポーネントを使用する必要があります。
これらのコンポーネントを使用するには、仮想マシンを設定する必要があります。プラットフォームは、Endorsed Standards Override Mechanismを介して標準ライブラリをオーバーライドできます。このメカニズムでは、必要なライブラリが特別なendorsedフォルダにコピーされます。
Apache Tomcat設定
Incentives WebクライアントでSSO認証を設定する際、展開されたendorsedフォルダーをメインのApache Tomcatフォルダーにあるcommon
という名前の新しいフォルダーにコピーする必要があります。
メインのApache Tomcatフォルダに、
common
という名前の新しいフォルダを作成します。展開された
<Tomcat Path>/webapps/ICM/WEB-INF/
endorsedフォルダをメインのApache Tomcatフォルダにコピーし、endorsedファイルが<Tomcat Path>/common/endorsed
にあるようにします。Apache Tomcatサービスを再起動します。
SSOの設定
SSOを使用するには、最初にいくつかの設定を行う必要があります。
keytoolはJREにバンドルされており、OpenSSLはOpenSSLツールから提供されます。keystore.jks
から証明書とキーファイルを抽出する必要があります。
keytool -importkeystore -srckeystore keystore.jks -destkeystore keystore.p12 -deststoretype PKCS12 -srcalias <jkskeyalias> -deststorepass <password> -destkeypass <password> openssl pkcs12 -in keystore.p12 -nokeys -out cert.pem openssl pkcs12 -in keystore.p12 -nodes -nocerts -out key.pem
OpenSSLを使用したSAML 2.0統合証明書の生成
Incentives管理者WebアプリケーションがSSO IdPと通信するには、SSO証明書を生成する必要があります。証明書により、SSO IdPは、管理者Webアプリケーションが認証されていることを確認できます。
OPENSSLをインストールします。
次のような新しいディレクトリをコンピュータ上に作成します。
C:/Users/Administrator/Desktop/SSOCerKey
コマンドプロンプトを開き、次のコマンドを実行します。
注記
これを単一のコマンドとして入力します。改行はしません。ディレクトリを OpenSSL実行ファイルが見つかる場所に変更し、コマンドを選択したディレクトリに書き込むように変更し、オペレーティング・システムに基づいてコマンドを変更する必要がある場合があります。次のコマンドはWindows用です。
openssl.exe req -x509 -newkey rsa:2048 -keyout C:/Users/Administrator/Desktop/SSOCerKey/key.pem -out C:/Users/Administrator/Desktop/SSOCerKey/cert.pem -days 365
同じコマンドラインウィンドウで、カレントディレクトリを、
key.pem
およびcert.pem
ファイルが生成された場所に変更します。次のコマンドを実行して、
key.pem
ファイルを復号化します。openssl rsa -in C:/Users/Administrator/Desktop/SSOCerKey/key.pem –out C:/Users/Administrator/Desktop/SSOCerKey/keyDecrypted.pem
cert.pem
ファイルをコピーして貼り付け、名前をcert.cer
に変更します。これにより、ブラウザでファイルを開き、証明書の有効期限を確認できます。この日付は後で必要になりますので、メモしてください。
テキストエディタを使用して、復号化されたキーファイルの
keyDecrypted.pem
を開きます。
SAML 2.0証明書のアップロード
証明書を作成したら、REST APIを使用してPostgreSQLにアップロードします。
Postmanで次のREST API呼び出しを作成して実行します。
yourServer/services/sso/certs/sp/new Sample Path: http://localhost:9101/services/sso/certs/sp/new Method: POST Body: { "cert_name": "aUniqueCertificateName", "certificate": "yourCertificateValueNoHeaders", "private_key": "yourDecryptedPrivateKeyWithHeaders", "certificate_expiry": "YYYY-MM-DD" }
名前
説明
cert_name
これは、データベースとモデル内で一意である限り、任意の値にできます。
証明書
cert.pem
ファイルを開き、ヘッダーとフッターのBEGIN CERTIFICATE
とEND CERTIFICATE
の間に行をコピーします。これらの行を貼り付け、各行の最後に\n
を追加します。private_key
key.pem
ファイルを開き、BEGIN/END RSA PRIVATE KEY
ヘッダーとフッターを含むすべてのコンテンツをコピーします。これらの行を貼り付け、END RSA PRIVATE KEY
フッターの後を除く各行の末尾に\n
を追加します。その後、すべての改行文字を削除し、1行に1つの文字列があるようにします。certificate_expiry
これは
cert.pem
からの有効期限です。自分のファイルを見つけるには、cert.pem
ファイルをコピーします。貼り付けて名前をcert.cer
に変更します。これで、証明書を開くことができます。[有効期間開始日]セクションの[一般]タブで有効期限を確認できます。sso
_certificate_key
にすでに存在する証明書の情報が必要な場合は、次の呼び出しを使用できます。GET http://server name:9101/services/sso/certs/sp/all
REST API呼び出しを実行してSSO設定エントリを作成する
REST API呼び出しを実行して、SSO設定エントリを作成します。
重要
テナントサービスのパスには、ポートを含める必要があります。テナントサービスのインスタンスと呼び出しが同じ番号を使用していることを確認します。
Path:
<TenantServices Path>/services/sso/configs/<model_id>
Method: POST Content-Type: application/json Body: { idp_options: { sso_login_url: <sso_login_url>, sso_logout_url: <sso_logout_url>, certificates: [<certificates>], force_authn: true/false, sign_get_request: true/false, allow_unencrypted_assertion: true/false }, sp_options: { entity_id: "https://<server name>/Incentives", assert_endpoint: "https://<server name>/Incentives/acs.html", nameid_format: <nameid_format> }, sp_cert_key_id: "value", nameid_column: <column_name>, "nameid_format": <nameid_format>, "is_sso_enabled": true/false, "allow_native_login": true/false, "ignore_signature": true/false } }sso_login_url
,,sso_logout_url
,証明書
これらのパラメーターは、
idp
.xml
ファイルからのものです。key.pem
,cert.pem
これらのパラメーターはステップ1で作成します。
nameid_format
このパラメーターは、次のいずれかの形式である必要があります。
"urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified", "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress", "urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName", "urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName", "urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos", "urn:oasis:names:tc:SAML:2.0:nameid-format:entity", "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", "urn:oasis:names:tc:SAML:2.0:nameid-format:transient"
POST http://www.abc.com:9101/services/sso/configs/0 { "idp_options":{ "sso_login_url":"http://zeusv.canlab.ibm.com:8088/OpenAM/SSORedirect /metaAlias/idp", "sso_logout_url":"http://zeusv.canlab.ibm.com:8088/OpenAM/IDPSloRedirect /metaAlias/idp", "certificates":[ "MIICQDCCAakCBEeNB0swDQYJKoZIhvcNAQEEBQAwZzELMAkGA1UEBhMCVVMxEzARBg NVBAgTCkNh\nbGlmb3JuaWExFDASBgNVBAcTC1NhbnRhIENsYXJhMQwwCgYDVQQKEw NTdW4xEDAOBgNVBAsTB09w\nZW5TU08xDTALBgNVBAMTBHRlc3QwHhcNMDgwMTE1MT kxOTM5WhcNMTgwMTEyMTkxOTM5WjBnMQsw\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2 FsaWZvcm5pYTEUMBIGA1UEBxMLU2FudGEgQ2xhcmExDDAK\nBgNVBAoTA1N1bjEQMA 4GA1UECxMHT3BlblNTTzENMAsGA1UEAxMEdGVzdDCBnzANBgkqhkiG9w0B\nAQEFAA OBjQAwgYkCgYEArSQc/U75GB2AtKhbGS5piiLkmJzqEsp64rDxbMJ+xDrye0EN/q1U 5Of+\nRkDsaN/igkAvV1cuXEgTL6RlafFPcUX7QxDhZBhsYF9pbwtMzi4A4su9hnxIh URebGEmxKW9qJNY\nJs0Vo5+IgjxuEWnjnnVgHTs1+mq5QYTA7E6ZyL8CAwEAATANBg kqhkiG9w0BAQQFAAOBgQB3Pw/U\nQzPKTPTYi9upbFXlrAKMwtFf2OW4yvGWWvlcwcN SZJmTJ8ARvVYOMEVNbsT4OFcfu2/PeYoAdiDA\ncGy/F2Zuj8XJJpuQRSE6PtQqBuDE HjjmOQJ0rV/r8mO1ZCtHRhpZ5zYRjhRC9eCbjx9VrFax0JDC\n/FfwWigmrW0Y0Q==" ], "force_authn":false, "sign_get_request":true, "allow_unencrypted_assertion":true }, "sp_options":{ "entity_id":"http://openam.example.com:8080/payeeweber", "assert_endpoint":"http://openam.example.com:8080/payeeweber/acs.html", "nameid_format":"urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" }, "sp_cert_key_id":"1", "nameid_column":"Email_", "nameid_format":"urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress", "is_sso_enabled":"true", "allow_native_login":false, "ignore_signature":true }
REST API呼び出しを実行して、テナントサービスからspメタデータをダウンロードします。
Path:
<TenantServices Path>/services/sso/configs/<model_id>/metadata
Method: GET Content-Type: application/xml
サービスプロバイダとしてのVaricent登録
Incentivesをサービスプロバイダとして設定する必要があります。
[共通タスク]タブの[SAMLv2プロバイダの作成]見出しで、[リモートサービスプロバイダの登録]をクリックします。
→ を選択して、spメタデータファイルをアップロードします。
これが、IDPが設定されたときに作成されたICMなどの既存のトラストサークルに追加されていることを確認します(このオプションは通常、デフォルトで選択されます)。
IDP設定でマッピングされた同じ属性を追加します(通常はmail属性)。
Varicentログインの確認
Webクライアントのログインページに移動して、Incentives Webクライアントが正しく設定されていることを確認します。
http://<server name>/ICM
に移動します。ブラウザは自動的にSSOログイン画面にリダイレクトされます。
ログインします。
ユーザーがSSOによって正常に認証されると、ブラウザはICM Webクライアントホームページにリダイレクトします。
重要
サインインしたユーザーは、ICM Webクライアントからログアウトできますが、シングルサインオン(SSO)からは、IDPからログアウトするまログアウトされません。つまり、Webクライアントからログアウトして、任意のビューに直ちに戻ると、ユーザーは自動的にログインし直されます。
Salesforce.comとの統合
Varicent® SPM(Sales Performance Management)Webクライアントは、Salesforce.comと統合して、Salesforce.comからアクセスできるように設定できます。
Salesforce.com用のWebクライアントの設定
Varicent® SPM(Sales Performance Management)Webクライアントをインストールした後、web.xml
WebクライアントがSalesforce.comからアクセスできるようにWeb設定ファイルを変更する必要があります。VaricentWebクライアントを最初に展開する必要があります。
デフォルトでは次の場所にある、
web.xml
ファイルに移動します:...\webapps\ICM\WEB-INF
Parameters
セクションで、security.xml
をsecurity-salesforce-composite.xml
に変更します。ファイルを保存した後、変更を有効にするためにVaricentWebクライアントを再起動します。
Salesforce.comからのWebクライアントへのアクセス
Salesforce内のタブからIncentivesWebクライアントにアクセスできるようにします。
作成したモデルが必要です。モデルでは、Salesforce.comにログインしているユーザーと同じ電子メールアドレスを持つ受け取り人を作成する必要があります。その受け取り人をワークフロー・グループに追加し、Webアクセスを有効にする必要があります。Webクライアントも展開する必要があります。
管理者権限を持つユーザーIDでSalesforce.comにログインします。
ユーザー名をクリックしてドロップダウンメニューにアクセスし、[設定]を選択します。
[アプリケーションの設定]セクションで、 → をクリックします。
[Webタブ]セクションで[新規]をクリックします。
これにより、Salesforce.comウィンドウ内にVaricentコンテンツを表示するカスタムタブを作成できます。
次のいずれかのオプションを選択できます。
オプション
説明
全ページ幅
全ページ幅を使用して、VaricentWebクライアントを表示します。
Salesforceサイドバー付き2列
このオプションは、Salesforce.comのサイドバーを表示します。
選択が完了したら、[次へ]をクリックします。
次の手順を実行して、Varicentタブのコンテンツと表示プロパティを定義します。
[タブコンテンツの定義]セクションで、[タブタイプ]メニューから[URL]を選択します。
[タブラベル]フィールドに、ラベルに表示するテキストを入力します。
[タブ名]フィールドで、タブに一意の名前を付けます。これは、タブラベルと同じにすることができます。
スタイル画面から[タブスタイル]を選択して、タブの色を選択します。
[コンテンツフレームの高さ]フィールドでは、Varicentコンテンツフレームの高さ(ピクセル単位)を指定できます。
800ピクセル以上のフレームの高さを指定します。
[URL]フィールドに、次の文字列を貼り付け、必要に応じてパラメーターを置き換えます。
http://localhost:8080/payeeweb/sforce_composite_login?SessionId={!API.Session_ID}&ServerURL={!API.Partner_Server_URL_540}&Tenant=TENANTNAME&Model=MODELNAME
パラメーター
説明
http://localhost:8080/payeeweb
これは、WebアプリケーションのURLです。
例:
https://tenant-model-trunk.spm.ibmcloud.com/payeeweb
TENANTNAME
これはテナントの名前です。
Varicentクラウドで使用している場合は、テナント名について IBMのサポートにお問い合わせください。
MODELNAME
これはモデルの名前です。
エンコードをUnicode(UTF-8)に設定します。
[保存]をクリックします。
これで、新しく作成したタブからVaricentWebクライアントにアクセスできるようになります。このタブをクリックすると、SSOを使用するSalesforce.comユーザーと同じ電子メールアドレスを持つユーザーとして、Webクライアントにログインされます。
Webクライアントの外観
Webクライアントの異なるWebユーザーへのWebタブの表示方法は、Varicent® SPM(Sales Performance Management)クライアントのポータル・アクセスモジュールで設定します。
詳細については、「ユーザーガイド」のポータル・アクセスのセクションを参照してください。