![]() | |
Sun™ Identity Manager 8.0 配備に関する技術概要 |
第 7 章
Identity Manager のプライベートラベリングこの章では、会社のイントラネット環境または企業のスタイルガイドラインに合わせて Identity Manager インタフェースを再定義するために必要な基本コンポーネントについて説明します。プライベートラベリングとは、このような企業のガイドラインに合わせてインタフェースをカスタマイズすることを言います。
プライベートラベリングのタスクプライベートラベリングのタスクは、3 つのカテゴリに大別されます。
- デフォルトのヘッダーコンテンツの変更。ユーザーインタフェースと管理者インタフェースの両方で、企業ロゴの取り込み、デフォルトテキストの変更、色の変更を行います。
- 表示フォントとコンポーネントの色の変更。styles¥customStyle.css のスタイルシートを使用して、アプリケーション全体にわたる変更を行います。
- よく使用するページでの Identity Manager の動作の変更。System Configuration オブジェクトを編集することによって行います。「パスワードをお忘れですか?」ボタンの無効化を含むこれらのタスクは、製品インタフェースの再定義の間にユーザーによってたびたび実行されます。
アーキテクチャー機能プライベートラベリングの作業には、次の表に示すコンポーネントの編集が含まれます。
スタイルシート
製品インタフェースでのテキストの表示特性に影響する、4 つのスタイルシートがあります。
- lockhart.css - Web アプリケーション用の Sun コーポレートインタフェーススタイルが含まれます。
- style.css - 両方のインタフェースにわたる、ページの表示属性を定義します。このファイルは、ヘッダーに含まれる画像も制御します。
- customStyle.css - style.css および lockhart.css に含まれるデフォルト設定への変更が含まれます。このファイルの設定は、style.css および lockhart.css の設定より優先されます。これら 2 つのファイルを編集する代わりに、customStyle.css でカスタマイズを行うことをお勧めします。
- Styles-Help.css - オンラインヘルプおよびポップアップヘルプ (i-Help) で使用されるスタイルクラスを定義します。
デフォルトテキスト
デフォルトテキストは、製品インタフェース全体を通して次の場所に出現します。
テキスト属性
次を含む属性を表示します。
デフォルトスタイル設定
$WSHOME/styles/style.css および lockhart.css の各ファイルには、デフォルトのスタイル設定が格納されています。これらのファイルは編集しないでください。
カスタマイズするファイル
customStyle.css ファイルにはカスタマイズの定義が格納されます。このファイルは製品のアップグレード時に上書きされません。このファイルで定義される設定は、style.css および lockhart.css の設定より優先されます。すべてのカスタマイズ定義を customStyle.css に含めるようにしてください。
JSP ファイル
ヘッダーのデフォルト設定を格納する JSP ファイルに、userHeader.jsp、bodyEnd.jsp、および bodyStart.jsp があります。これらのファイルは編集しないでください。製品アップグレード時にカスタマイズ内容を保持するには、このファイルに代わりに、「アーキテクチャー機能」の一覧に示されている JSP のみを編集してください。
WPMessages_ja.properties ファイル
$WSHOME/WEB-INF/lib/idm_l10n_ja_JP.jar ファイルにはメッセージカタログのエントリが格納されています。JAR ファイルから WPMessages_ja.properties ファイルを抽出し、そのファイル上でエントリを編集できます。
ヘッダーのカスタマイズカスタマイズのタスクは両方のインタフェースで同じですが、編集する必要のあるファイルは異なります。
注
指定されたファイル以外の .jsp ファイルを編集しないでください。編集する必要がある場合は、.jsp ファイルのコピー、編集、名前変更を行う前に、まずそのファイルを安全な場所にバックアップしてください。
ヘッダー外観を変更する
最も一般的なラベリングのタスクでは、次のことを行います。
- ページのヘッダーセクションで参照される画像を、デフォルトの Sun ロゴから会社ごとの標準画像に変更します。customStyle.css を編集することにより、画像を置換または削除します。
- Identity Manager ロゴを非表示にします。
- Look & Feel に関する社内ガイドライン (特に境界、ヘッダー、背景色) を使用します。
- 「次のユーザーとしてログイン」テキストを変更します。これは .jsp ファイルからの変更はできません。カスタムメッセージカタログを編集することができます。「Identity Manager ユーザーインタフェースのホームページに表示されるデフォルト情報を変更する」を参照してください。
Identity Manager ページをカスタマイズする一般的なカスタマイズには、次のものがあります。
ホームページをカスタマイズする
クイックリンクのリストを追加する
ホームページへの一般的なカスタマイズでは、環境内でユーザーが頻繁にアクセスするタスクまたはリソースに、カスタマイズしたリンクリストを追加します。これらのクイックリンクには、製品インタフェースからよく使う項目へのショートカットとしての機能があります。
クイックリンクのリストを追加するには、次の手順を実行します。
デフォルトの「次のユーザーとしてログイン」テキストを変更する
- 次の XML ファイルをインポートします。
- System Configuration オブジェクトの <Configuration><Extension><Object> 要素内に次の行を追加します。
<Attribute name='customMessageCatalog' value='AltMsgCatalog'/>
- 次の行を追加します。
<msg id='UI_NAV_FOOT_LOG'>mytext{0}</msg>
- 変更を保存し、アプリケーションサーバーを再起動します。
ページタイトルとサブタイトルを変更する
ログインページのデフォルトのタイトル、サブタイトル、「ようこそ」メッセージを変更するには、カスタムメッセージカタログの次のエントリを変更します。
このテキストを変更するには、「デフォルトの「次のユーザーとしてログイン」テキストを変更する」で詳しく説明している、WPMessages_ja.properties ファイルの抽出および編集の手順に従います。
コード例 7-1 デフォルトのメッセージカタログ設定
UI_LOGIN_IN_PROGRESS_TITLE=ログイン (進行中)
UI_LOGIN_CHALLENGE={0} パスワードを入力してください
要求したアクションを完了するには、[PRODUCT_NAME] への
ログイン時に指定したパスワードを入力する必要があります。
UI_LOGIN_TITLE_LONG=[PRODUCT_NAME] ログイン
UI_LOGIN_WELCOME=Sun Java&™ System [PRODUCT_NAME] システムへようこそ。
要求される情報を入力し、<b>ログイン</b> をクリックしてください。
UI_LOGIN_WELCOME2=Sun Java&™ System [PRODUCT_NAME] システムへようこそ。
ユーザー ID とパスワードを入力し、「<b>ログイン</b>」をクリックしてください。パスワードを思 い出せないときは、「<b>パスワードをお忘れですか?</b>」をクリックしてください。
UI_LOGIN_TITLE=ログイン
UI_LOGIN_TITLE_TO_RESOURCE=<b>{0}</b>へのログイン
ログインページの背景画像を変更する
次のように customStyle.css を編集することにより、背景画像を変更できます。
div#loginFormDiv {
background:
url(.../images/other/login-backimage2.jpg)
no-repeat;
margin-left: -10px;
padding: 0px 0px 280px;
height: 435px;
ブラウザのタイトルバーをカスタマイズする
ブラウザのタイトルバーの製品名文字列を、任意のローカライズ可能な文字列で置き換えることができるようになりました。
- 次の XML ファイルをインポートします。
コード例 7-2 インポートする XML
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>
<Configuration name='AltMsgCatalog'>
<Extension>
<CustomCatalog id='AltMsgCatalog' enabled='true'>
<MessageSet language='en' country='US'>
<Msg id='UI_BROWSER_TITLE_PROD_NAME_OVERRIDE'>Override Name</Msg>
</MessageSet>
</CustomCatalog>
</Extension>
</Configuration>
- Identity Manager IDE を使用して、System Configuration オブジェクトを編集のためにロードします。<Configuration><Extension><Object> 要素内に次の行を追加します。
<Attribute name='customMessageCatalog' value='AltMsgCatalog'/>
- また、System Configuration オブジェクトで、ui.web.browserTitleProdNameOverride を true に変更する必要があります。
- System Configuration オブジェクトの変更を保存し、アプリケーションサーバーを再起動します。
Identity Manager ユーザーインタフェースのホームページに表示されるデフォルト情報を変更する
Identity Manager ユーザーインタフェースのホームページには、ログイン中のアカウントについての基本情報を表示する「ダッシュボード」領域があります。表示される情報には、次の表に示すデフォルト文字列が含まれます。
すべての属性は ui.web.user.dashboard オブジェクトに属します。
表 7-2 ui.web.user.dashboard オブジェクトのデフォルト設定
設定オブジェクトのデフォルト設定
説明
displayLoginFailures
アカウントのアカウントポリシーで最大ログイン試行回数が設定されている場合に、ログイン試行でのパスワード入力または秘密の質問への回答の失敗回数を表示します。
displayPasswordExpirationWarning
パスワードポリシーがアカウントに適用される場合に、パスワードの有効期限に関連するメッセージを表示します。
displayApprovals
displayAttestationReviews
displayOtherWorkItems
displayRemediations
すべてのユーザーを対象に、「承認」、「アテステーション」、「是正」、および「その他」の各作業項目タイプの表示を有効にします。
注: 設定オブジェクトで特定のタイプに対する設定が true であっても、アカウントユーザーに許可されたアクセス権によっては、インタフェース文字列が表示されない場合があります。
displayRequests
アカウントのロール、グループ、またはリソースの更新要求のうち未処理のものの数を示します。
displayDelegations
ユーザーが承認の委任を定義したことを示す文字列を表示します。「有効」または「無効」のオプションがあります。
デフォルトでは、これらの設定オブジェクトの値は true に設定され、これらの文字列は Identity Manager ユーザーインタフェースに表示されます。任意の文字列を非表示にするには、System Configuration オブジェクトでその文字列を false に設定します。
System Configuration オブジェクトは Identity Manager IDE を通じて編集できます。Identity Manager IDE の使用方法については、『Identity Manager 配備ツール』の「Identity Manager IDE の使用」を参照してください。System Configuration オブジェクトについての全般的な情報は、付録 A 「設定オブジェクトを編集する」を参照してください。
ユーザーインタフェースのナビゲーションメニューの外観を変更する
ユーザーインタフェースのナビゲーションメニューに関して、System Configuration オブジェクトで次の 2 つの設定を行う必要があります。
フォント特性を変更する
表示属性では一般に、次の基本フォント表示特性を指定します。
表 7-3 フォント関連の表示特性
表示属性
説明
family
Helvetica、Arial など
size
ポイントサイズで指定 (例: 14 ポイント)
weight
未指定の場合は通常の書体。指定する場合、bold など
color
通常は black を指定
一部のコンポーネントは、追加の特性によってより詳細な定義が可能です。たとえば、ボタンの背景色を定義することができます。テキストやボタンラベルの配置も特性の一つです。
フォント特性を編集する
編集を行うには、styles.css からコピーして customStyle.css にペーストします。その後、選択した設定を customStyle.css で修正します。
例
次のエントリは、各ページタイトルのデフォルト設定を表します。
.title {
font-family: Arial, Helvetica, sans-serif;
font-size: 16pt;
font-weight: bold;
color: C;
ラベリング演習のサンプル次の例は、Identity Manager のロゴを非表示にし、ページのマストヘッドでカスタム画像を参照する方法を示します。sample/rebranding ディレクトリに収められたサンプルファイルを参照してください。
Identity Manager ロゴのカスタムロゴへの置き換え
管理者インタフェースまたはユーザーインタフェースのロゴを変更するには、styles/style.css の次の部分を customStyle.css にコピーし、Identity Manager のロゴ画像を独自の画像ファイルに置き換えます。
td.MstTdLogo {
width: 31px;
height: 55px;
background: url(../images/other/logo.jpg) no-repeat 5px;
}
td.MstTdTtlProdNam {
background: url(../images/other/xyz_masthead.jpg) no-repeat 10px 30px;
padding:10px 10px 0px 10px;
vertical-align:top;
white-space:nowrap;
height: 75px;
width: 350px;
}
マストヘッドの外観を変更する
Identity Manager の外観を変更するには、次の処理を実行します。
- styles/customStyle.css ファイルを編集します。
- styles.css の次のセクションを customStyle.css にコピーし、必要に応じて変更します。
コード例 7-3 styles/customStyle.css ファイル
MstDiv {background-image:url(../images/other/dot.gif);background-repeat:repeat-x;
background-position:left top;background-color:#000033}.MstTblEnd {background: url(../images/other/dot.gif);background-color: #666;height: 1px;}
td.MstTblEndImg {
background-color: #666;
height: 1px;
background: url(../images/other/dot.gif);
font-size:1px;
}
td.MstTdLogo {
width: 31px;
height: 55px;
background: url(../images/other/logo.jpg) no-repeat 5px;
}
td.MstTdSep {
width: 1px;
height: 61px;
background: url(../images/other/dot.gif) no-repeat center;
}
td.MstTdTtlProdNam {
background: url(../images/other/xyz_masthead.jpg) no-repeat 10px 30px;
padding:10px 10px 0px 10px;
vertical-align:top;
white-space:nowrap;
height: 75px;
width: 350px;
}
ナビゲーションタブを変更する
Identity Manager ユーザーインタフェースのナビゲーションバーをカスタマイズする
Identity Manager のユーザーインタフェースは、ナビゲーションバーを含む 2 番目の XPRESS フォームを実装しています。これは、描画されるページに 2 つの <FORM> タグがあり、各タグで name 属性の設定が次のように異なることを意味します。
<form name="endUserNavigation">
および
<form name="mainform">
Identity Manager ユーザーインタフェースのナビゲーションバーに JavaScript コードを挿入するときは、必ず正しいフォームを参照するようにしてください。そのためには、name 属性を使用して、どちらの <FORM> タグを参照するか (document.mainform または document.endUserNavigation のどちらか) を指定します。
ナビゲーションリンクをカスタマイズする
ページの上部を横切るナビゲーションリンクをカスタマイズするには、次のコードをコピーして編集します。背景色を適切な色に変更します。
コード例 7-4 ナビゲーションリンクをカスタマイズする
* LEVEL 1 TABS */
.TabLvl1Div {
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left bottom;
background-color: #333366;
padding:6px 10px 0px;
}
a.TabLvl1Lnk:link, a.TabLvl1Lnk:visited {
display:block;
padding:4px 10px 3px;
font: bold 0.95em sans-serif;
color:#FFF;
text-decoration:none;
text-align:center;
}
table.TabLvl1Tbl td {
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left top;
background-color: #666699;
border:solid 1px #aba1b5;
}
table.TabLvl1Tbl td.TabLvl1TblSelTd {
background-color:#9999CC;
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left bottom;
border-bottom:none;
タブパネルのタブを変更する
コード例 7-5 Identity Manager タブパネルのタブの変更
.TabLvl2Div {
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left bottom;
background-color:#9999CC;
padding:6px 0px 0px 10px
}
a.TabLvl2Lnk:link, a.TabLvl2Lnk:visited{
display:block;
padding:3px 6px 2px;
font: 0.8em sans-serif;
color:#333;
text-decoration:none;
text-align:center;
}
table.TabLvl2Tbl div.TabLvl2SelTxt {
display:block;
padding:3px 6px 2px;
font: 0.8em sans-serif;
color:#333;
font-weight:normal;
text-align:center;
}
table.TabLvl2Tbl td {
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left top;
background-color:#CCCCFF;
border:solid 1px #aba1b5;
}
table.TabLvl2Tbl td.TabLvl2TblSelTd {
border-bottom:none;
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left bottom;
background-color:#FFF;
border-left:solid 1px #aba1b5;
border-right:solid 1px #aba1b5;
border-top:solid 1px #aba1b5;
table.Tab2TblNew td {background-image:url(../images/other/dot.gif);background-repeat:repeat-x;back ground-position:left top;background-color:#CCCCFF;border:solid 1px #8f989f}
table.Tab2TblNew td.Tab2TblSelTd {border-bottom:none;background-image:url(../images/other/dot.gif);background-r epeat:repeat-x;background-position:left bottom;background-color:#FFF;border-left:solid 1px #8f989f;border-right:solid 1px #8f989f;border-top:solid 1px #8f989f}
ソートテーブルのヘッダーを変更する
.tablehdr {
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left bottom;
background-color:#9999CC;
}
ユーザー/リソーステーブルのコンポーネントを変更する
コード例 7-6 ユーザー/リソーステーブルのコンポーネントの変更
.tablesorthdr {
/*background-color: #BEC7CC;*/
background-image:url(../images/other/dot.gif);
background-repeat:repeat-x;
background-position:left bottom;
background-color:#CCCCFF;
border:solid 1px #aba1b5;
}
.treeContentLayout {
background-color: #9999CC;
}
.treeBaseRow {
padding-top: 0px;
padding-left: 10px;
padding-right: 10px;
padding-bottom: 0px;
background-color: #fff;
border-left: solid 1px #8F989F;
border-right: solid 1px #8F989F;
border-bottom: solid 1px #8F989F;
}
.treeButtonCell {
background-image:url(../images/other/dot.gif);
background-color:#666699;
color: #fff;
}
}
.treeMastHeadRow {
background-color:#333366;
}
.treeMastHeadRow {
background-color:#333366;
}
.treeMastHeadText {
background-color:#333366;
background-image:url(../images/other/dot.gif);
}
同じ手順に従うことにより、その他のさまざまなオプション (テキストのスタイルやサイズ、配置、その他のオブジェクトの色や設定など) をカスタマイズできます。
よく使われるページでの Identity Manager の動作を変更する
System Configuration オブジェクトの設定を変更することにより、よく使われるページでの Identity Manager の動作をカスタマイズできます。
System Configuration オブジェクトを使用したカスタマイズ
System Configuration オブジェクトを編集することにより、ユーザーインタフェースまたは管理者インタフェースの、よく変更される多くのプロパティーをカスタマイズすることができます。製品インタフェースを制御するのは、属性 <Attribute name='ui'> とそのサブオブジェクトです。この属性の下位属性を変更することにより、Identity Manager の動作を変えることができます。
その他の変更: ファイルの admin セクション
System Configuration オブジェクトファイルの admin セクションには、管理者インタフェースに関連するさまざまな属性が含まれます。
- 管理者ログインページの「パスワードをお忘れですか?」ボタンを無効にするには、disableForgotPassword を true に設定します。
- supressHostName を true に設定すると、タスク詳細情報ページでプロセスのホスト名が非表示になります。
コード例 7-7 ファイルの admin セクションの変更
<Attribute name='admin'>
<Object>
<Attribute name='disableForgotPassword'>
<Boolean>false</Boolean>
</Attribute>
<Attribute name='workflowResults'>
<Object>
<Attribute name='suppressHostName'>
<Boolean>false</Boolean>
</Attribute>
</Object>
</Attribute>
</Object>
</Attribute>
その他の変更: ファイルの user セクション
System Configuration オブジェクトファイルの user セクションには、ユーザーインタフェース関連のオプションがあります。
workflowResults 属性には、管理者でないユーザーのワークフローの表示をカスタマイズするための属性が、次の表に示すように含まれます。
表 7-4 管理者でないユーザーのワークフローをカスタマイズするための属性
属性
説明
anonSuppressReports
匿名ユーザーのワークフローステータスページ (anonProcessStatus.jsp) にワークフロー図を表示するかどうかを制御します。
suppressHostName
エンドユーザーのワークフローステータスページ (processStatus.jsp) にホスト名の情報を含めるかどうかを制御します。
suppressReports
匿名でないすべてのユーザーに対してワークフロー図を表示するかどうかを制御します (processStatus.jsp)。
コード例 7-8 管理者でないユーザーのワークフローのカスタマイズ
<Attribute name='user'>
<Object>
<Attribute name='disableForgotPassword'>
<Boolean>false</Boolean>
</Attribute>
<Attribute name='workflowResults'>
<Object>
<Attribute name='anonSuppressReports'>
<Boolean>false</Boolean>
</Attribute>
<Attribute name='suppressHostName'>
<Boolean>false</Boolean>
</Attribute>
<Attribute name='suppressReports'>
<Boolean>false</Boolean>
</Attribute>
</Object>
</Attribute>
</Object>
</Attribute>