FirstClass Webサービスの管理
FirstClass Webサービスについて
FirstClass Webサービスを利用すると、ユーザがデスクトップブラウザとモバイルデバイスのどちらかを使用してFirstClassのコンテンツにアクセスできるようになります。
注意
グループのインスタントメッセージ権限を無効にすると、そのグループのユーザにはFirstClass Webサービスの[チャット]ペインが表示されなくなります。
実行中のFirstClass Webサービスのバージョンを知る必要がある場合は、FirstClass Webサービスのデスクトップの一番上に表示されているサーバ名にマウスカーソルを乗せてください。
FirstClass Webサービスのコンポーネント
FirstClass Webサービスは、以下のFirstClassコンポーネントを使用します。
? サーバ
これは、従来のFirstClassの機能を管理するために使用しているのと同じコアサーバアプリケーションです。ユーザ、ユーザのプロフィール、コミュニティのフィード、ドキュメント、リンク、およびすべてのオブジェクトの状態が保存されています。
? FirstClass Webサーバ
FirstClass Webサーバは、サーバとユーザのブラウザのやり取りを制御します。FCPプロトコルへのユーザ要求を変換し、サーバに送信してその要求を処理します。サーバからの応答をFCPプロトコルで受信したWebサーバは、その応答をHTMLページの変換したり、ブラウザが要求する他の形式に変換したりします。また、Webサーバは、サーバ上で行われた変更に基づいて、ブラウザクライアントをリアルタイムで更新します。
Webサービスの設定
(接続するサーバの種類をWebサーバに通知するなどの目的で)Webサーバを設定するには、[fcws]フォルダ内にあるfcws.cfgファイルを更新します。[fcws]フォルダは、FirstClass Webサービス(Windows:\Program Files、Mac:/Library、Linux:/opt)内にあります。
この設定ファイルはテキストファイルで、WindowsのINIファイルと同じように、キーワードと値のペアが記述されています(大文字と小文字が区別されます)。また、キーワードの説明がコメント形式で記述されています。
注意
fcws_release.cfgというファイルも作成されます。このファイルには、現在のリリースにおけるデフォルトの設定ファイルの内容が記述されています。fcws.cfgを以前に変更している場合は、このファイルをデフォルト設定の参照用に使用し、fcws.cfgファイルに追加できるキーワードを確認してください。 セキュリティ設定の構成
\fcws\directory内にあるdefault_clean.cfgファイルには、FirstClass Webサービスのデフォルトのセキュリティ設定が記述されています。各設定はコメントアウトされ、説明が記述されています。これらの設定はデフォルト設定であるため、各設定をアンコメントしても、変更を加えない限り何の変化も起こりません。
設定を変更するには、このファイルのコピーを作成して、わかりやすいファイル名に変更し(myclean.cfgなど)、必要に応じて設定を変更してから、その変更した設定をアンコメントしてください。
fcws.cfgファイルには、以下の行を追加してください(以下の行に書かれているmyclean.cfgというファイル名は例です)。
SanitizerConfigFile=myclean.cfg アクティビティ制限の設定
fcws.cfgファイルで各スレッドアクティビティとセッションアクティビティに対する制限値を設定できます。これらの制限値に達すると、警告がログに記録されます。
制限値を管理するパラメータは以下の通りです。
MaximumThreadActivity=秒数 例: MaximumThreadActivity=120 |
警告が発せられるまで利用できる1スレッドあたりの最大秒数です。 |
MaximumSessionActivity=要求数 例: MaximumSessionActivity=4 |
警告が発せられるまで送信できる1セッションあたりの最大要求数です。 ウォッチドッグタイマーによるスキャンが2回連続で行われる度に算出される要求数(設定可能な間隔は最短で60秒)。 この最大値は、1つのセッションにおけるDoS攻撃的な活動を検出するために設定します。 |
WebブラウザによるFCWS設定の無効化
FirstClass Webサーバ設定ツールを利用すると、Webブラウザを使ってFCWSの再設定を一時的に実行できます。設定はすぐに適用され、サーバを再起動する必要はありません。この機能は、トレースオプションとデバッグオプションを設定する場合に便利です。
起動パラメータ
以下のCherryPyコマンドライン起動パラメータは、設定をカスタマイズする場合にのみ必要になります。
parser.add_option('-H', '--host', help='CherryPyサーバのホスト名を指定します。 0.0.0.0にするとすべてのインタフェースで適用されます。 (デフォルト: %default)', default='0.0.0.0', dest='host')
parser.add_option('-f', '--fcserverport', help='FirstClassサーバへの接続に使用するFCPポート番号を指定します。 (デフォルト: %default)', type=int, default=510, dest='fcs_port')
parser.add_option('-s', '--sslport', help='SSL / HTTPSポート番号を指定します。 (デフォルト: %default)', type=int, default=443, dest='ssl_port')
parser.add_option('-k', '--key', help='SSLキーファイルの名前またはパスを指定します。 (デフォルト: %default)', default='key.pem', dest='ssl_private_key')
parser.add_option('-c', '--cert', help='SSL証明書ファイルの名前またはパスを指定します。 (デフォルト: %default)', default='cert.pem', dest='ssl_certificate')
parser.add_option('-i', '--intermediate', help='SSL中間証明書ファイルの名前またはパスを指定します。 (デフォルト: %default)', default=None, dest='ssl_certificate_chain')
parser.add_option('-t', '--sslthreads', help='SSL CherryPyサーバのスレッドの数を指定します。 (デフォルト: %default)', type=int, default=500, dest='ssl_thread_pool')
parser.add_option('-e', '--enablehttp', action='store_true', help='HTTPサーバを有効にします。 (デフォルト: %default)', default=False, dest='http_enabled')
parser.add_option('-p', '--httpport', help='HTTPポート番号を指定します。 (デフォルト: %default)', type=int, default=80, dest='port')
parser.add_option('--httpthreads', help='HTTP CherryPyサーバのスレッドの数を指定します。 (デフォルト: %default)', type=int, default=100, dest='http_thread_pool')
parser.add_option('--sslprotocol', help='HTTP CherryPyサーバの暗号化プロトコルを指定します。 (デフォルト: %default)', default='TLSv1', dest='ssl_protocol')
parser.add_option('--socketquesize', help='CherryPyサーバのソケットキューサイズを指定します。 (デフォルト: %default)', type=int, default=5, dest='socket_que_size')
parser.add_option('--sockettimeout', help='CherryPyサーバのソケットタイムアウトを指定します。 (デフォルト: %default)', type=int, default=10, dest='socket_timeout')
parser.add_option('--configfile', help='カスタム設定ファイル名を指定します。 (デフォルト: %default)', default=None, dest='config_file')
- はショートパラメータ名
-- はロングパラメータ名
defaultはパラメータが省略された場合のデフォルト値
FirstClass Webサービスに適用される標準グループ
グループ |
説明 |
ユーザグループ |
[Regular Users]グループ |
レギュラーユーザはコミュニティを作成し、他のユーザを招待できます(メンバー招待)。また、システムに登録されている他のすべてのユーザをディレクトリで表示できるほか、非公開のコミュニティ以外のすべてのコミュニティを検索できます。 |
[Community Regular Users]グループ |
コミュニティレギュラーユーザは、メールボックス、コンタクトフォルダ、個人用カレンダーなどの個人アイテムを利用できませんが、それ以外はレギュラーユーザと同じです(コミュニティまたは会議室にメッセージを投稿できます)。 また、以下のことができません。 ? 副管理者になること ? メールルールを作成すること ? 非公開のディレクトリオブジェクトを表示すること ? メッセージの宛先を指定すること |
[Remote Users]グループ |
リモートユーザは、メンバー招待を行ったり、自分のホームページにないコンテンツを検索したりすることができません。 |
[Peer Registered Users]グループ |
コミュニティへのメンバー招待によって作成された外部ユーザが登録されるグループです。このグループは、ユーザの識別情報を登録するためにのみ使用され、メンバー登録プロセスによって作成されたすべてのユーザを検索できるようにします。 |
[Pending Invite]グループ |
これは、メンバー招待プロセスで作成されたすべてのユーザが一時的に登録されるグループです。ユーザがログインすると、そのユーザはこのグループから自動的に削除されます。 |
[Owner]グループ |
コミュニティを作成したユーザは、そのコミュニティの所有者に設定されます。[ユーザ情報]フォームにこのグループが表示されることはありません。このグループは、コミュニティの権限を設定するために使用されます。 |
コンテナ用テンプレート |
[All Communities]グループ |
FirstClass Webサービスで作成されたすべてのコミュニティです。 |
[All Profiles]グループ |
FirstClass Webサービスで作成されたすべてのプロフィールです。このグループを使用して、[Profile]コンテナ(バージョン12.0より前のFirstClassを使用していた組織では[マイ共有ドキュメント])の権限を設定します。他のユーザのブログにコメントを投稿できるようにするには、[送信可]権限を持つグループにユーザを所属させる必要があります。 |
[Private Community]グループ |
FirstClass Webサービスで作成されたすべてのプライベートコミュニティです。 |
[Public Community]グループ |
FirstClass Webサービスで作成されたすべての公開コミュニティです。 |
[Public Reader Community]グループ |
FirstClass Webサービスで作成されたすべての読み取り専用コミュニティです。 |
[Secret Community]グループ |
FirstClass Webサービスで作成されたすべての秘密コミュニティです。 |
メンバー登録ユーザの有効期間の設定
メンバー招待プロセスによってコミュニティに招待されたユーザは、指定された日数の間サーバに接続することができます。この期間に接続しなかった場合、そのユーザのアカウントは期限切れとなり、自動的に削除されます。
この期間は、[Pending Invite]ユーザグループの設定によって決められます。デフォルトは7日です。この設定を変更するには、以下の操作を行います。
1 管理者デスクトップの[Groups]フォルダを開きます。
2 [Pending Invite]グループを開きます。
3 [利用制限]タブの[非アクティブから削除までの日数]に新しい有効期間を入力します。
コミュニティの管理
すべてのコミュニティには所有者がいます。所有者は、コミュニティを作成したか、またはコミュニティを管理する権限を持ったユーザです。
コミュニティには主催者を設定することもできます。主催者は、メンバーが承認なしに投稿できないコミュニティでコンテンツを承認する権限を与えられているユーザです。また、コミュニティのコンテンツを削除する権限も与えられます。 コミュニティグループへの権限の設定
コミュニティにはさまざまな種類があり、コミュニティでユーザが実行できる操作やアクセスが許可されるユーザを制御する権限が種類ごとに割り当てられています。
あるグループのすべてのコミュニティを同じ種類にすれば、それらのグループに同じ権限を設定できます。このためには、ユーザグループと同じように機能するコンテナ用グループを使用します。
注意
コンテナ用テンプレートの権限は変更しないでください。変更すると、想定外の動作が起こる可能性があります。例外:バージョン12.0より前のFirstClassをアップデートした組織で、ユーザがコミュニティ内にサブコンテナを作成できるようにするには、[会議室の作成]権限を有効にする必要があります(最初からバージョン12.0のFirstClassを使用している組織では、この機能がデフォルトで有効になっています)。
コンテナ用テンプレートは、ユーザグループと同じく、管理者デスクトップの[Groups]フォルダ内にあります。
また、コンテナ用テンプレートを利用して、同じグループのユーザのディレクトリ表示を無効にしたり制限したりすることができます。
FirstClass Webサービスで利用できるコンテナ用テンプレートは、以下の通りです。
テンプレート |
説明 |
All Profiles |
すべてのユーザのプロフィールに対する権限を設定します。 プロフィールの所有者はコントローラです。デフォルトでは、レギュラーユーザはすべてのユーザのプロフィールを表示し、すべてのユーザのブログにコメントを投稿することができます。リモートユーザは、このどちらを行うこともできません。 |
All Communities |
すべてのコミュニティに対して表示のプロパティを設定します。ここでの設定はすべてのコミュニティに適用されます。 |
コミュニティの種類 |
Public Community* |
すべてのコミュニティを一時的に公開コミュニティにします。 このコミュニティのすべてのユーザが、コミュニティを表示したりコミュニティにメッセージを投稿したりできます。 |
Public Reader Community* |
このテンプレートを使用するすべてのコミュニティを一時的に公開(読み取り専用)コミュニティにします このコミュニティのすべてのユーザがコミュニティを表示できますが、メッセージを投稿することはできません。 |
Private Community |
このテンプレートを使用するすべてのコミュニティをすべてプライベートコミュニティにします。 コミュニティのメンバーだけがコミュニティを表示できます。メンバーでないユーザがコンテンツを表示するには、メンバーとして登録してもらうよう依頼する必要があります。 |
Secret Community |
このテンプレートを使用するすべてのコミュニティを非公開コミュニティにします。 このコミュニティに参加していないユーザの検索結果に、このコミュニティは表示されません。このコミュニティに参加するには、招待してもらう必要があります。 |
* 公開コミュニティのコンテナテンプレートをユーザが検索して表示できるようにするには、権限設定で[名前で開く]を有効にする必要があります。 コミュニティメンバーへのユーザグループの登録
管理者は、ユーザのグループをコミュニティに「強制参加」させることができます。これにより、ユーザは自動的にコミュニティのメンバーとなり、ユーザのホームページにそのコミュニティが表示されるようになります。
例えば、人事部に所属するユーザのグループがあるとします。彼ら全員があるグループに登録されていれば、このグループをある人事部関連コミュニティのメンバーにすることができます。
このためには、以下の操作を行って、元のコミュニティを探し出し、そのコミュニティへのリンクをこのグループのモデルデスクトップに配置します。
1 管理者デスクトップで[ディレクトリの一覧]をクリックします。
2 コミュニティの所有者を探して選択します。
3 [デスクトップ]をクリックして、そのユーザのデスクトップを表示します。
このデスクトップは、以降の操作が終了するまで、表示したままにします。
4 管理者デスクトップの[Groups]フォルダを開きます。
5 このコミュニティのメンバーにするグループを表示します。
6 そのグループの権限フォームで[Model Desktop]をクリックします。
7 所有者のデスクトップにあるコミュニティのアイコンを、[Shift]キーを押しながらクリックし、グループのモデルデスクトップまでドラッグします。
これにより、コミュニティへのリンクがユーザグループのモデルデスクトップ上に作成されます。
8 両方のモデルデスクトップを閉じて、モデリングを開始します。 コミュニティのコンテンツの有効期間の変更
コミュニティにアップロードされたドキュメントとwikiには有効期限がありません。そのため、これらを削除する場合は、コミュニティの所有者か主催者が手動で行うか、ドキュメントをアップロードしたりwikiを作成したりしたユーザが手動で行う必要があります。
ただし、コミュニティのトピックの投稿には、[All Communities]コンテナ用テンプレートで設定された有効期限が適用されます。デフォルトでは、この有効期限は[無制限]に設定されています。
特定のコミュニティの投稿を期限切れにする(コミュニティから自動的に削除する)には、コミュニティレベルで有効期限を設定する必要があります。この設定は、テンプレートレベルの設定より優先されます。
コミュニティごとに有効期限を設定するには、以下の操作を行います。
1 管理者デスクトップで[ディレクトリの一覧]をクリックします。
2 コミュニティの所有者を探して選択します。
3 [デスクトップ]をクリックして、そのユーザのデスクトップを表示します。
4 コミュニティを選択します。
5 [ツール]>[権限]を選択します。
6 左側の三角ボタンをクリックして、[権限]フォームをすべて表示します。
7 目的の有効期間を[メッセージの有効期間(日数)]に入力します。
このフォームを閉じると、変更した内容が保存されます。
つぶやきの管理
FirstClass Webサービスのすべてのレギュラーユーザは、自分のホームページで[つぶやき]ペインを利用できます。[つぶやき]には、ユーザが投稿した近況メッセージと、そのメッセージに対するコメントがリアルタイムで一覧表示されます。
デフォルトでは、[つぶやき]用コンテナは、レギュラーユーザとコミュニティレギュラーユーザのデスクトップにモデリングされています。 つぶやきでのコミュニティ作成の通知
[つぶやき]では、近況を投稿するだけでなく、ユーザが公開コミュニティを作成したことを通知できます。このような通知を[つぶやき]に表示するには、[つぶやき]コンテナ用テンプレートフォームで[[最近の活動]に公開]が選択されている必要があります。 「いいね」の許可
会議室やコミュニティの投稿と同じように、[つぶやき]の各投稿に「いいね」を付けられるようにすることができます。
[つぶやき]コンテナの権限フォームで[いいね]を選択すると、他のユーザが投稿に対して「いいね」を付けたり、後で変更したりできるようになります。また、[いいね(変更不可)」を選択すると、他のユーザは「いいね」を付けられますが、後で変更することはできなくなります。
[つぶやき]で利用可能なオプションはこの2つのみです。 つぶやき表示のカスタマイズ
通常、FirstClass Webサービスではすべてのユーザが同じ[つぶやき]を使用しますが、さまざまなユーザグループに対してグループ専用の[つぶやき]を表示できるように設定できます。
各グループに対してグループ用の[つぶやき]を提供するには、以下の操作を行います。
1 [つぶやき]用コンテナを、レギュラーユーザとコミュニティレギュラーユーザのデスクトップから削除します。
注意
この[つぶやき]コンテナは、ユーザが所属するグループのために再利用できます。
2 それぞれの[つぶやき]用の会議室を作成します。
これらの[つぶやき]会議室の名前は重要ではありません。FirstClass Webサービスのホームページには、常に「つぶやき」と表示されます。
3 各グループのモデルデスクトップに、該当する会議室のエイリアスを作成します。
注意
複数の[つぶやき]を利用して、プライベートコミュニティグループに[つぶやき]用会議室を設置することもできます。
4 各会議室のプロパティのサブタイプを[つぶやき]に設定します。
利用できるFirstClassスクリプトコマンド
FirstClassスクリプトコマンドの多くは、FirstClass Webサービスで使用できません。FirstClass Webサービスを管理するにあたっては、以下に記載したコマンドにのみスクリプトを使用することをお勧めします。他のサポートされていないコマンドを使用すると、機能が利用できなくなる恐れがあります。
FirstClass Webサービスで利用できるスクリプトコマンドは以下の通りです。
コマンド |
目的 |
ACTIVATE |
FCWSをOAuth2チケット提供機関として利用するときに、スーパーユーザーアカウントを有効にします。 |
ADD |
ユーザをシステムに登録し、ユーザグループに追加します。 |
PGADD |
グループにメンバーを追加します。 |
PGDEL |
グループからメンバーを削除します。 |
DEL |
ユーザをシステムから削除します。 |
GET |
ユーザ情報を取得するために使用できます。 |
PUT |
ユーザ情報を変更するために使用できます。 |
NEW |
グループの作成によく使用されるFirstClass Webサービスオブジェクトを作成します。 |
LIST |
すべてのユーザを一覧表示します(アドレスやユーザグループを含む)。 |
REPLY |
コマンドの動作が完了したときに管理者にメッセージを返します。 |
FirstClass Webサービスの表示のカスタマイズ デスクトップ画面のカスタマイズ
FirstClass Webサービスのデスクトップ画面(ログイン画面を含む)をカスタマイズするには、カスタマイズしたHTMLテンプレートを作成し、デフォルトのテンプレートと同じ名前を付けます。デフォルトのテンプレートは、fcws/localized/html and fcws/htmlにあります。
カスタマイズしたテンプレートは、fcws/localized/language/user/htmlに保存します。
詳しくは、FirstClass WebサービスAPIガイドを参照してください。 FirstClass GOログイン画面のカスタマイズ
以下の画像を使用して、FirstClass GOのモバイルクライアントログイン画面をカスタマイズできます。
? 背景に並べて表示されている画像
? 上部バナーの画像
? 下部バナーの画像
「custom」という名のフォルダをfcws/imagesに作成し、カスタマイズした画像をそのフォルダに保存します。
注意
カスタマイズしたログイン画面のHTMLに「fc-Login-form」という文字列が存在することを確認してください。デフォルトのログインテンプレートには、ログインフォームを含むDIV要素のIDとクラスの両方が記述されています。Androidデバイスはこの文字列を使用して、ログインフォームが受信されたことを確認します。
背景に並べて表示される画像の追加
ログイン画面全体に並べて表示する画像は、任意のサイズにできます(無地の場合は1ピクセルまで)。
このファイルの名前はmobile_bg.pngにしてください。
上部バナーの追加
ログイン画面の上部でバナーとして利用する画像は、1024x72ピクセルにする必要があります。この画像は画面の左上隅に固定され、デバイスのサイズや向きにかかわらずサイズは変更されません。
このファイルの名前はmobile_top.pngにしてください。
下部バナーの追加
ログインボタンの下のバナーとして利用する画像は、320x72ピクセルにする必要があります。この画像は、画面両端の中央に配置されます。
このファイルの名前はmobile_bottom.pngにしてください。
セッション使用統計値の取得
FirstClass Webサービスの現在のセッション使用統計値を取得するには、FirstClass Webサービスに管理者としてログインし、管理メニューから[Web統計値]を選択します。
統計値を取得する回数と間隔を設定し、[開始]を選択します。指定した取得回数になる前に取得を停止するには、[停止]を選択します。
WebブラウザによるFCWSのステータスの確認
FirstClass Webサーバ設定ツールを使用すると、FCWSを設定するときと同じように、ブラウザ上でFCWSのステータスを確認できます。表示する情報を[Select an Option]から選択してください。
また、以下のコマンドを使用できます。
構文
|
返信例 |
http://<fcwsサーバ>/ping |
|
FirstClass同期サービスの例: OpenText FC Sync Services 12.1.035 (Windows) |
http://<fcwsサーバ>/info |
|
FirstClass同期サービスの例: OpenText FC Sync Services 12.1.035 (Windows) Supported Commands:Sync,FolderSync,GetItemEstimate,Search,Settings,Ping,Provision Supported ActiveSync Protocols:2.5,12.0,12.1,14.0,14.1
WSGI Server Configuration: CherryPy WSGI Server 192.168.15.75 on SSL port 8443 with certificate cert.pem and key key.pem, running 5 threads. OpenSSL 1.0.1h release using SSL protocol TLSv1. CherryPy WSGI Server 192.168.15.75 on HTTP port 8000, running 10 threads |
http://<fcwsサーバ>/config |
|
FirstClass Server port number:510 WebSocket connections:ENABLED Network is secure:HTTPS is not mandatory for security critical operations Validation key:ENFORCED Outbound HTML is sanitized:NO Watch-dog task interval:60 seconds Session timeout:120 minutes Delayed disconnect timeout:2 seconds Logging level:DEBUG Valid FirstClass Servers: default :192.168.15.75 Morpheus :192.168.124.88 Alternate FirstClass Authentication Servers: 192.168.15.75 192.168.124.88 External Integration Services Host:192.168.120.61 on port 7000 (connect timeout 5 seconds) Thread counting:ON Warn if thread runs longer than 120 seconds Warn if session continually issues more than than 4 requests per seconds Supported Languages: French English German Italian Danish Finnish Japanese Spanish Dutch Norwegian Swedish |
http://<fcwsサーバ>/?config&ReplyAsJSON |
|
{"Configuration":{"AuthenticationFCServers":"fc.firstclass.com;192.168.15.75;192.168.124.88;", "MustUseVKey":"1", "MaximumSessionActivity":"4", "TraceComponents":"HTTP;HTTP-IN|votovic;EIS-RQ|votovic,barb,ron;", "ValidFCServers":"default,192.168.15.75;Morpheus,192.168.124.88; "SanitizeOutbound":"0", "cssTheme":"firstclass", "MaximumThreadActivity":"120", "NetworkIsSecure":"1", "SessionTimeout":"120 ", "WebSocketEnabled":"1", "FCSPort":"510", "LoggingLevel":"DEBUG", "EISHost":"192.168.120.61", "DelayedDisconnectTimeout":"2", "SanitizerConfigFile":"None", "EISPort":"7000", "ThreadCounting":"1", "WatchDogInterval":"1", "EISConnectTimeout":"5"}} |
http://<fcwsサーバ>/?ThreadCount=GET |
|
System Thread Count sessions :0 threads :1 ssl_threads :0 thread_pool_size :10 thread_pool_size :10 注意スレッド数(システム内でアクティブなHTTPスレッドとHTTPSスレッドの数)を有効にするには、fcws.cfgファイルで「ThreadCounting=1」と指定します。スレッド数が有効になっているときに、スレッドプールのスレッド数が最大値に達した場合は、警告メッセージがログに表示されます。スレッドプールの容量が十分ではないか、DoS攻撃を受けている可能性が考えられます。 |
http://<fcwサーバ>/?ThreadCount=GET&ReturnAsJSON |
|
{"SESSION":{"threadcount":{"users":0,"threads":1,"ssl_threads":0,"thread_pool_size":10,"ssl_thread_pool_size":10}}} |
http://<fcwsサーバ>/?EISStatus |
|
OpenText FC WebServer 12.1.0.030 (FC WebAPI 1) (Windows) External Integration Services Host:192.168.120.153 on port 7000 (connect timeout 10 seconds) Status:CONNECTED - Data port:7001
or, depending on EIS state:
OpenText FC WebServer 12.1.0.030 (FC WebAPI 1) (Windows) External Integration Services is not configured on this web server.
or:
OpenText FC WebServer 12.1.0.030 (FC WebAPI 1) (Windows) External Integration Services Host:192.168.120.153 on port 7005 (connect timeout 10 seconds) Status:NOT CONNECTED |
他のメールシステムの利用
FirstClassメールを使用しない場合(または一部のユーザが異なるメールシステムを利用している場合)は、Webサービスクライアントの個人アイテム(メールボックス、コンタクト、個人用カレンダー)がユーザに表示されないようにすることができます。この機能は、グループ全体に対して非表示にすることも、ユーザ単位で非表示にすることもできます。
この機能が表示されないユーザは、以下のような影響を受けます。
? Webブラウザかモバイルデバイスでしか接続できなくなります
? [メールボックス]ペインが表示されなくなります
? 会議室かコミュニティにしかメッセージを投稿できなくなります(個人用メールは利用できません)
? 個人用カレンダーの代わりに、[カレンダー]ペインが表示されます
このペインは、他のカレンダーをまとめて表示したり、作業を作成したりするための場所です。公開カレンダーに予定を作成したり、FirstClass外部の人々を予定に招待したりすることしかできません。招待はメッセージとして送信されるため、招待を受けた人がメッセージを返信する可能性があります。返信メッセージは、公開されているそのカレンダーの親会議室に配信されるか、(親会議室になければ)カレンダーの所有者に配信されます。
? [コンタクト]フォルダが表示されなくなります
? 権限フォームやメンバーリストを表示しても、FirstClass外部の人は表示されません
このようなユーザは、自分の[基本設定」フォームで転送先の外部アドレスを設定し、転送方法として[リダイレクト]を選択する必要があります。監査を行うと、転送先アドレスを設定していないすべてのユーザがレポートされます。以下のFirstClassスクリプトコマンドを使用すると、ユーザの転送先アドレスを指定できます。
PUT PREFERENCES ユーザID 4 0 address 1104 7 1 1111 7 1
例えば、ユーザのユーザIDがsbram@otsw.comで、メールアドレスも同じくsbram@otsw.comの場合、構文は以下のようになります。
PUT PREFERENCES sbram@otsw.com 4 0 sbram@otsw.com 1104 7 1 1111 7 1 グループの個人アイテムの非表示
グループに対して個人アイテムを非表示にするには、[グループ権限]フォームを開き、[機能]タブの[個人情報コンテナの管理(PIM)]チェックボックスをクリアします。このチェックボックスは、デフォルトで選択されています。
このチェックボックスをクリアした場合は、[機能]タブの[外部の通知]も選択する必要があります。 ユーザの個人アイテムの非表示
ユーザに対して個人アイテムを非表示にするには、[ユーザ情報]フォームを開き、[ユーザ情報]タブの[クラス]で[コミュニティレギュラーユーザ]を選択します。このユーザライセンスを選択すると、ユーザが所属しているグループにかかわらず、個人アイテムが表示されなくなります。
外部カレンダーへのユーザアクセスの許可
外部統合サービス(EIS)を使用すると、Googleカレンダーなど外部カレンダーのデータへのアクセスをユーザに許可できます。EISはCalDAVをサポートする外部サーバと連携して、サードパーティのコンテンツをFirstClass Webサービスに統合するため、そのコンテンツをFirstClassネットワークストアにインポートする必要がなくなります。
外部カレンダーの情報はFirstClassと同期されません。情報はFirstClass Webサービスの形式で表示され、複数カレンダーを1画面に表示するときにオプションとして選択できるようになります。外部カレンダーの情報を更新することはできません。
外部カレンダーをFirstClass Webサービスで利用できるようにするには、そのカレンダーを管理者デスクトップの[External Applications]フォルダに追加する必要があります。これにより、そのカレンダーは、ユーザが作成できるコンテナオブジェクトの一覧に追加されます。
カレンダーをこのフォルダに追加するには、[ファイル]>[特別な新規ドキュメント]>[EISの設定]と選択し、[EISの設定]フォームに必要事項を入力します。ユーザに表示されるカレンダー名、カレンダーの説明、URL、接続に使用するプロトコル(CalDAV)、およびそのカレンダーへのアクセスを許可するグループを設定するよう求められます。
ユーザは、FirstClass Webサービスでカレンダーを開き、そのカレンダーの[新規作成」メニューを使用してカレンダーを追加できます。これにより、外部カレンダーがカレンダーリストに追加され、1画面に表示できるようになります。また、カレンダーをホームページに追加することもできます。そのためには、ホームページにコンテナを作成し、[新しいコンテナ]ポップアップメニューからそのカレンダーを選択します。
ユーザが初めて外部カレンダーを1画面に表示しようとすると、そのカレンダーのログイン情報の入力を求められます。FirstClassサーバはその資格情報を保存するため、ユーザが次回以降にその情報を入力する必要はありません。外部カレンダーの資格情報が変更された場合は、もう一度ログインするよう求められます。
外部カレンダーに対するユーザの権限や制限は、FirstClassによって決定されます。 外部カレンダーでのOAuth2認証の使用
OAuth2を使って外部カレンダーのログイン認証を実行できます。このためには、以下の操作を行います。
1 外部カレンダーアプリの所有者を登録します(以下はGoogleの例)。
2 [EISの設定]フォームに、この外部カレンダーに関する必要事項を入力します。
Googleの登録
以下の手順は、Googleを登録する場合の例です。Googleによってこの手順が変更される場合がありますので、ご注意ください。
Googleを登録するには、以下の操作を行います。
1 FirstClass管理者のGoogleアカウントを作成します(すべてのFirstClass管理者がこのアカウントを使用できるようになります)。
2 このアカウントを使用して、https://developers.google.comにログインします。
3 [Google API Console]に移動します。
4 [プロジェクトを作成]を選択します。
5 プロジェクト名を入力します(「FCWS Google Calendar」など)。
6 [作成]をクリックします。
7 [ライブラリ]をクリックします。
8 [CalDAV API]をクリックします。
9 [有効にする]をクリックします。
10 [認証情報に進む]をクリックします。
11 [使用するAPI]の[必要な認証情報の種類を決定します]で、[CalDAV API]が選択されていることを確認します。
12 [API を呼び出す場所]で、Webサーバを選択します(例:[ウェブサーバー(node.js、Tomcatなど)])。
13 [アクセスするデータの種類]で、[ユーザーデータ]を選択します。
14 [必要な認証情報]をクリックします。
15 ご利用のOAuth 2.0クライアントの名前を入力します。
16 [承認済みのリダイレクトURI]にFirstClass WebサーバのURLを入力し、続けて「/oauth2」と入力します(例:https://fcws.example.com/oauth2)。
17 [クライアントIDの作成]をクリックします。
18 [OAuth 2.0同意画面を設定する]に、Google CalendarをFirstClassカレンダーに追加するユーザに表示する情報を入力します。
メールアドレスはそのままにしてください。これはユーザには表示されません。Googleの同意画面が表示されたときに、ユーザが安心して同意できるようにするための情報を入力します。例えば、製品名に組織の名前を含めたり、ロゴやホームページのURLを含めたりできます([その他のカスタマイズオプション]をクリックしてください)。
19 [ダウンロード]をクリックし、資格情報のJSONファイルをダウンロードします。このファイルには、[EISの設定]フォームでGoogle Calendar用の設定を行うのに必要な情報が含まれています。
20 [API Manager]画面でプロジェクト名をクリックして、このプロジェクトの資格方法ページに移動します。
このページに、[EISの設定]フォームでの設定に必要なクライアントIDやクライアントシークレット情報が表示されます。
OAuth2チケット提供機関としてのFCWSの設定
外部アプリケーションからFirstClassアカウントにアクセスするユーザの認証にOAuth2を使用するように、FCWSを設定することができます。このためには、以下の操作を行います。
1 FirstClassサーバにスーパーユーザアカウントを作成します。
スーパーユーザアカウントは、アクセストークン要求を他のユーザに代わって実行できる特別な権限を持ちます。このアカウントでアクセストークンを取得し、登録ユーザに送信します。
2 以下のFirstClassスクリプトコマンドを実行して、このユーザをアクティブにします。
ACTIVATE USER ユーザID TRUSTED
3 FirstClass Webサーバ設定ツールにログインします。
4 [Generate SHA512 Digest]を選択します。
5 作成したスーパーユーザのユーザIDとパスワードを指定します。
6 [Digest]をクリックします。
7 [Digest]のクリック後に表示されたこのユーザのSHA512ダイジェストをコピーします。
8 以下の情報を使用して、fcws.cfgファイルを更新します。
oAuth2User=スーパーユーザのユーザID
oAuth2Hash=コピーしたこのユーザのSHA512ダイジェスト
MyIP=FCWSサーバのIPアドレス
9 サーバのfcs.iniファイルの[Setup]セクションに以下の行を追加します。
TrustedIPs=信頼済みIPアドレスのセミコロン区切りテキスト 外部アプリケーションの登録
外部Webアプリケーションからの要求をFCWSで認証できるようにするには、そのアプリケーションから登録対象の要求を受け取る必要があります。要求を受信するには、以下の操作を行います。
1 以下のURLをWebブラウザに入力し、FirstClass OAuth2サーバ登録ツールを開始します。
2 [Select an Option]で、[Web Application]を選択します。
3 登録要求に記載されたアプリケーション名とredirect_uriを指定し、[Register]をクリックします。
このアプリケーション用に生成された資格情報が表示されます。
authorization_uri |
最初の認証要求の場所です。 |
resource_uri |
リソースへのアクセス権を取得するためにアクセストークンを送信する場所です。 |
ticket_granting_uri |
要求を送信してアクセストークンを取得する場所です。 |
client_id |
アクセストークンの要求時に送信する必要があります。 |
client_secret |
アクセストークンの要求時に送信する必要があります。 |
注意
外部アプリケーションの登録を解除するには、[Choose an Option]で、[Unregister Web Application]を選択します。 外部アプリケーションからのFirstClassアクセスの許可
認証要求は、authorization_uriに送信された認証コードのHTTPS GET要求で、resource_uri、client_id、およびresponse_type=codeがURLクエリパラメータとして設定されています。以下は、認証要求の例です。
場合によっては、クエリパラメータstat=arbitrary dataが送信されます。このパラメータは返信メッセージでエコーされます。
resource_uriとclient_idが確認されると、クライアントにFirstClassログイン画面が表示されます。
ログインに成功すると、クライアントは再びアクセス権限の確認を求められます。このアクセス権限確認画面には、以下の3つのオプションがあります。
? [Cancel]-FirstClassアカウントへのアクセス権が与えられていないため、認証は行われません。
? [Once]-アクセストークンが1回のログインに対してのみ与えられ、以降のログインのためにリフレッシュトークンが発行されることはありません。
? [Allow]-フルアクセス権が与えられ、アクセストークンとリフレッシュトークンが発行されます。
[Once]または[Allow]を選ぶと、FirstClassサーバは、コードとトークンの交換のためにクライアントをredirect_uriにリダイレクトできるようになります。例:
外部Webサーバは以下のようにアクセストークンの要求を発行できます。
POST /oauth2/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded
code=JHBYCTRCYUYB876GYTY&
client_id=kjdshfh57ty8ghodig485godfi&
client_secret=fdlkgjwo85up49684hgpwiuth2&
redirect_uri=https%3A%2F%2Fexample%2Fapp%2Fcom/oauth&
grant_type=authorization_code
A successful response is JSON:
{
"access_token":"fFAGRNJru1FTz70BzhT3Zg",
"expires_in":120,
"token_type":"Bearer"
"refresh_token":"KHKUYguyfgdwouy56854gg"
} アクセストークンの送信
アクセストークンを使ってFirstClassアカウントにアクセスするには、以下の2つの方法があります。
? HTTP GETでトークンをクエリパラメータとして送信する。
? HTTP GETでヘッダーパラメータ認証としてトークンを送信する。
リフレッシュトークンによる新しいアクセストークンの取得
新しいアクセストークンを取得するには、以下のように、外部アプリケーションがHTTP POSTを発行する必要があります。
POST /oauth2/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token&
refresh_token=KHKUYguyfgdwouy56854gg
client_id=kjdshfh57ty8ghodig485godfi&
client_secret=fdlkgjwo85up49684hgpwiuth2&
redirect_uri=https%3A%2F%2Fexample%2Fapp%2Fcom/oauth
The response is JSON:
HTTP/1.1 200 OK
{
"access_token":"JHJHJHJNJru1FTz70BzhT3Zg",
"expires_in":120,
"token_type":"Bearer",
}
新しいアクセストークン要求をリフレッシュトークンで行うには、すべてのクライアント資格情報をリフレッシュトークンとともに送信する必要があります。
ユーザへの外部アプリケーション利用の許可
Webサービスクライアントの[アプリケーション]ペインを使用すると、FirstClassに対してHTMLアプリケーションへのユーザアクセスを許可できます。
このペインを設定するには、アプリケーションを管理者デスクトップの[External Applications]フォルダに追加する必要があります。
外部アプリケーションが自動的に開くようにするには、FirstClass Webサービスのメニューから[プロパティ]を選択し、[自動的に開く]が選択します。
カスタムアプリケーションの作成 アプリケーションでのグループの指定
FirstClassのデータを使用するアプリケーションを作成する場合、Webサービスクライアントに表示されるグループにタグ(独自の名前)を付けることができます。これにより、実際のグループ名と関係なく、グループを識別できるようになります。グループ名が変更された場合や、変更後のグループ名をアプリケーション作成者が知らない場合でも、アプリケーションのコードに影響は及びません。
このような目的でグループにタグを付けるには、[グループ権限]フォームの[プロフィール]タブで[グループの外部タグ]にタグを入力します。 アプリケーションのパスワードセキュリティ
FirstClassクライアントは、安全な接続と暗号化されたパスワードを使用します。しかし、組織がAPIを使用してWebサービスをカスタマイズする場合には、セキュリティが確保されなくなります(SSLを経由しない接続では、パスワードを暗号化する意味がありません)。
このような場合にセキュリティの問題を防ぐため、FirstClassは、安全でない接続でパスワードの変更が試みられたことを検出したときに、以下の動作を行います。
? そのアカウントに対してランダムなパスワードを設定する
? そのアカウントを無効にする
? コンソールとメールの両方で管理者に通知する
ユーザ単位の監査でも、無効にされたアカウントが通知されます。
無効にされたアカウントを再び有効にするには、以下の操作を行う必要があります。
? [ユーザ情報]フォームでアカウントのパスワードを変更する
|