© 2016 IBM Corporation
2016/10/01
日本アイ・ビー・エム株式会社
IBM API Connect 開発者ポータル構成ガイド
© 2016 IBM Corporation 2
当資料の位置づけ
当資料は、API Connectの開発者ポータルの主要なカスタマイズ方 法についてまとめたものです。 V5.0.1を前提としています。 注意事項
当資料に含まれる情報は可能な限り正確を期しておりますが、当資 料に記載された内容に関して何ら保証するものではありません。こ こでの記載内容はあくまでも支援情報であり、使用者の責任におい て取扱われるものとし、資料の内容によって受けたいかなる損害に 関して一切の保証をいたしません。 製品の新しいリリース、修正などによって動作/仕様が変わる可能 性がありますので、必ずマニュアル等で最新の情報をご確認くださ い。はじめに
© 2016 IBM Corporation 3
1. 開発者ポータルの一般的な構成
2. 開発者ポータルの外観の制御
3. 開発者ポータルのコンテンツの制御
4. 開発者ポータルのセキュリティーの管理
5. 開発者ポータルのユーザーの管理
6. 開発者ポータルでのフォーラムの制御
開発者ポータルの構成/カスタマイズ
© 2016 IBM Corporation 4 4. 開発者ポータルのセキュリティーの管理 4-1. ブロック対象 IP アドレスの管理 4-2. CAPTCHASの構成 4-3. フラッディング制御 4-4. セッション・タイムアウトおよびセッション限度の構成 4-5. ログアウト後の自動最新表示 4-6. サイトのパスワード・ポリシーの構成 4-7. ユーザー名およびパスワードのオートコンプリート 4-8. 2要素認証の使用 4-9. セキュリティーの質問の使用 4-10. セキュリティー・キットの使用 4-11. API のライブ・テストの無効化 4-12. CORS警告の無効化
開発者ポータルの構成/カスタマイズ
© 2016 IBM Corporation 5
逆引き 開発者ポータルの構成/カスタマイズ
IPアドレスによるアクセス制御したい 4-1. ブロック対象アドレスのIP管理 CAPTHACSを変更したい 4-2. CAPTHCASの構成 フラディング制御をしたい 4-3. フラッディング制御 セッションタイムアウトを変更したい 4-4. セッション・タイムアウトおよびセッション限度の構成 ログアウト後に、画面をリフレシュしたい 4-5. ログアウト後の自動最新表示 パスワード・ポリシーを設定したい 4-6. サイトのパスワード・ポリシーの構成 ユーザー名、パスワードのオートコンプリートを有効にした い 4-7. ユーザー名およびパスワードのオートコンプリート 2要素認証を構成したい 4-8. 2要素認証の使用 セキュリティ質問を使用したい 4-9. セキュリティの質問の使用 セキュリティ・キットモジュールを有効にして、セキュリ ティを強化したい 4-10. セキュリティ・キットの使用 APIライブテスト機能を無効にしたい 4-11. APIのライブ・テストの無効化 CORS警告を無効にしたい 4-12. CORS警告の無効化© 2016 IBM Corporation
6
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 7
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Restrict by IP]を 選択4-1. ブロック対象 IP アドレスの管理
© 2016 IBM Corporation 8 ブロックしたいIPを指定 そのIPからアクセスするとエラーメッセージが表示されアクセス不 可
4-1. ブロック対象 IP アドレスの管理
© 2016 IBM Corporation
9
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation
10
設定手順
管理メニューより、[環境設定] > [ユーザー] > [CAPTCHA]を選択
© 2016 IBM Corporation 11 フォーラムやブログ等はデフォルトで設定済み 例)・user_loginでCAPTHASを設定するとログイン画面で表示 ・説明分を日本語で記述
4-2. CAPTCHAS の構成
© 2016 IBM Corporation
12
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 13
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Login Security] を選択4-3. フラッディング制御
© 2016 IBM Corporation
14
設定できる主な項目
追跡時間 (Track Time)
ユーザーをブロックするまでのログイン失敗の最大数
(Maximum number of login failures before blocking a user)
ホストをソフト・ブロックするまでのログイン失敗の最大数
(Maximum number of login failures before soft blocking a host)
ホストをブロックするまでのログイン失敗の最大数
(Maximum number of login failures before blocking a host)
進行中の攻撃を検出するまでのログイン失敗の最大数
(Maximum number of login failures before detecting an ongoing attack)
© 2016 IBM Corporation
15
送信先ユーザーの設定
© 2016 IBM Corporation
16
4. 開発者ポータルのセキュリティーの管理
4-4. セッション・タイムアウトおよびセッション限度の
構成
© 2016 IBM Corporation 17
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Auto Logout]を 選択4-4. セッション・タイムアウトおよびセッション限度の構成
© 2016 IBM Corporation 18 主な設定項目 自動ログアウトの時間(秒単位) 個々のユーザー・ロールごとのセッション・タイムアウト値(秒単位) ログアウトでのリダイレクト URL の指定 デフォルトは、ログイン画面URL ログアウトダイアログの表示可否 セッション期限切れのメッセージ・テキストの指定
4-4. セッション・タイムアウトおよびセッション限度の構成
© 2016 IBM Corporation 19 タイムアウトによるログアウト時の画面 ログアウトダイアログを表示する設定の場合は、ダイアログが表示 後にログアウト(デフォルトは、ログアウトダイアログは非表示)
4-4. セッション・タイムアウトおよびセッション限度の構成
© 2016 IBM Corporation 20
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Session limit]を 選択4-4. セッション・タイムアウトおよびセッション限度の構成
© 2016 IBM Corporation
21
主な設定項目
アクティブ・セッションのデフォルトの最大数 (Default maximum
number of active sessions)
「セッション限度を超えた場合 (When the session limit is
exceeded)」のアクション
「ログアウト・メッセージ重大度 (Logged out message severity)」
リストから、ユーザーがログアウトされたときに受信するメッセージを 選択します。 デフォルトのメッセージは、「エラー」です。
© 2016 IBM Corporation
22
設定例
「When the session limit is exceeded」の設定を「Prevent new
session」に変更
複数のセッションでアクセスすると、セッション限度を超えた場合、そ
の旨のメッセージが表示され、ログインできない
© 2016 IBM Corporation
23
4-4. セッション・タイムアウトおよびセッション限度の構成
設定例
「When the session limit is exceeded」の設定を「Automatically
© 2016 IBM Corporation
24
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 25
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Ejector Seat settings]を選択4-5. ログアウト後の自動最新表示
© 2016 IBM Corporation
26
設定手順
© 2016 IBM Corporation
27
(参考情報) Ejector Seat settingsのユースケース
セッションを終了したユーザーを即座にログアウトするためのモジュール
Ejector Seatは、ユーザーがまだログインしているかどうか定期的にチェックするための
JavaScriptコードを提供。ユーザーがログインしていなければ、現行のページがリロードされ、 そのユーザーは、匿名ユーザーとしてそのページを見る
このモジュールは、通常、Session limitまたはAutomated Logoutと一緒に使用し、現行ページ
をリロードし、そのユーザーは、別のロケーションでログインすることで自動的にログアウトさ れる 一般的な使用方法 プライベートアクセスのWebサイトをもっており、ユーザーがアカウントをシェアしていないようにした い。Session Limitを使用して、一度に一つのロケーションからしかログインできないようにする。しかし ながら、ユーザーがそのページをリロードしない限りログアウトされない。Ejector Seatは、構成可能なタ イマー(デフォルトは毎分)でajax scriptを実行し、ユーザーがログインしているかどうか確認する。もし、 ユーザーがログインしていないのであれば、現行ページはリロードされ、Session Limitが、ユーザーに対 して、別のだれかがそのアカウントを使っているためにあなたはログアウトされた旨のメッセージを表示す る このモジュールの別の効果は、あるユーザーが同じDrupalのサイトに対して複数のタブを開いているとき に、一つのタブをログアウトすると、すべえてのタブがログアウトされる パフォーマンスを改善するために、ajaxコールバック(および関連するDrupal bootstarap)は、
Drupalのページがフォーカスされている(active front window)ときのみ実行される。ウィンド ウがアクティブになれば、即座にスクリプトの期限が切れているかどうかをajax checkする https://www.drupal.org/project/ejectorseat
© 2016 IBM Corporation
28
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 29
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Password policies]を選択4-6. サイトのパスワード・ポリシーの構成
© 2016 IBM Corporation 30 設定項目 パスワード変更ページでのパスワード制約事項の表示指定 パスワード期限切れの警告Eメールの定義 パスワード・ポリシーの設定 有効期限 長さ、大文字、小文字、文字の種類、数字、英数字、数字配置、句読点、 直前の変更時からの経過時間、文字、ユーザー名を含まない、履歴 初回ログイン時のパスワード変更の強制
4-6. サイトのパスワード・ポリシーの構成
© 2016 IBM Corporation 31 パスワードの要件の表示
4-6. サイトのパスワード・ポリシーの構成
パスワード要件を表示するかどうかの設定 指定したパスワード・ポリシーによって、 要件の表示が変更© 2016 IBM Corporation
32
パスワード・ポリシーで設定可能な項目
© 2016 IBM Corporation
33
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 34
環境設定
管理メニューより、[環境設定] > [ユーザー] > [No Autocomplete]を選択4-7. ユーザー名およびパスワードのオートコンプリート
© 2016 IBM Corporation 35 環境設定 デフォルトは、autocomplete=off チェックボックスをはずすとオートコンプリート機能が有効 ブラウザーの設定にも依存
4-7. ユーザー名およびパスワードのオートコンプリート
ユーザーの候補が表示される© 2016 IBM Corporation
36
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 37
設定手順
管理メニューより、[環境設定] > [ユーザー] > [Two-factor Authentication(2要素認証)]を選択4-8. 2要素認証の使用
© 2016 IBM Corporation 38
設定手順
Enable TFAをチェックすると、2要素 認証用の構成オプションが表示される。4-8. 2要素認証の使用
© 2016 IBM Corporation
39
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation 40
設定手順
管理メニューより、[モジュール] を選択 モジュール一覧の検索フィールドで「security」を指定し絞込み、 「security questions」を有効にする4-9. セキュリティーの質問の使用
ユーザーの候補が表 示される© 2016 IBM Corporation 41
設定手順
管理メニューより、[環境設定]> [ユーザー]>[Security Questions]を選択4-9. セキュリティーの質問の使用
© 2016 IBM Corporation
42
設定手順
秘密の質問とし、独自のものを追加するか、事前提供の中から選択
© 2016 IBM Corporation
43
設定手順
設定で、秘密の質問の個数、および利用するフォームの選択
© 2016 IBM Corporation
44
設定例
設定で、秘密の質問の個数、および利用するフォームの選択
© 2016 IBM Corporation
45
設定例
秘密の質問の個数、利用するフォーム、フラッドの制御時間を設定
© 2016 IBM Corporation
46
設定例
初期登録:ログイン画面で秘密の質問の回答を入力
© 2016 IBM Corporation
47
設定例
ログイン後、アカウント情報で、秘密の質問の回答を確認可能
© 2016 IBM Corporation
48
設定例
間違った回答でログインしようとするとエラー
© 2016 IBM Corporation
49
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation
50
設定手順
管理メニューより、[環境設定]> [システム]>[Security Kit]を選択
© 2016 IBM Corporation 51
設定項目
セキュリティー・キット・モジュールで使用可能な各種オプション を構成することにより、Webサイトセキュリティの向上を実現 クロスサイト・スクリプティング クロスサイト・リクエスト・フォージェリー クリックジャッキング Content Security Policy X-Content-Type-Options X-XSS-Protection
HTTP Strict Transport
Security
Security Kit Module
https://www.drupal.org/project/seckit
© 2016 IBM Corporation
52
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation
53
設定手順
管理メニューより、[環境設定]> [システム]>[IBM API Connect]
を選択
© 2016 IBM Corporation
54
開発者ポータルのAPIライブテスト機能を無効化し、APIの公開を制
限
© 2016 IBM Corporation
55
ライブテスト機能の無効化によりテスト用の画面が非表示
© 2016 IBM Corporation
56
4. 開発者ポータルのセキュリティーの管理
© 2016 IBM Corporation
57
設定手順
管理メニューより、[環境設定]> [システム]>[IBM API Connect]
を選択
© 2016 IBM Corporation 58