4.7 RESTfulなWebサービスのセキュリティ
ロール、権限およびOAuthクライアントを定義して、RESTful Webサービスへのアクセスで認証および認可が要求されるようにします。
RESTful Webサービスを保護するには、次の操作を実行する必要があります。
-
ロールを作成する
-
権限を作成し、ロールと保護するモジュールまたはリソースを選択する
OAUTH2ワークフローを使用して保護されたRESTfulサービスへのアクセスを有効にするには、RESTfulサービスを保護するために作成されたロールおよび権限を使用してOAuthクライアントを作成します。
次の各項では、ロール、権限およびOAuthクライアントの作成方法について説明します。
4.7.1 ロールの管理
「ロール」ページで、RESTfulサービスのロールを作成、編集および削除できます。
「ロール」ページにナビゲートするには、RESTの「概要」ページで「オブジェクト」の「ロール」をクリックするか、ヘッダーのメニューで「セキュリティ」、「ロール」の順に選択します。
コンテキスト・メニューで使用できるアクションは次のとおりです。
4.7.2 権限の管理
「権限」ページで、RESTfulサービスの権限を作成、編集および削除できます。
権限はロールのセットを定義し、認証済のユーザーのうちの少なくとも1人は、権限によって保護されたRESTfulサービスへのアクセス権を持っている必要があります。
「権限」ページにナビゲートするには、RESTの「概要」ページで「オブジェクト」の「権限」をクリックするか、ヘッダーのメニューで「セキュリティ」、「権限」の順に選択します。
次の図に、カード・ビューにデフォルトで表示される権限属性を示します。
コンテキスト・メニューで使用できるアクションは次のとおりです。
4.7.3 OAuthクライアントの管理
OAuth 2.0ベースの認証を使用すると、特定のユーザーまたはクライアントのみがRESTful Webサービスにアクセスできるようにすることができます。
OAuth 2.0は、RESTful APIへの条件付きおよび制限付きのアクセスを提供するフローを定義する、標準のインターネット・プロトコルです。詳細は、OAuthベースの認証 を参照してください。
「OAuthクライアント」ページで、OAuthクライアントを作成、編集および削除できます。
「OAuthクライアント」ページにナビゲートするには、RESTの「概要」ページで「オブジェクト」の「クライアント」をクリックするか、ヘッダーのメニューで「セキュリティ」、「OAuthクライアント」の順に選択します。
次の図に、カード・ビューにデフォルトで表示されるOAuthクライアント属性を示します。
コンテキスト・メニューで使用できるアクションは次のとおりです。
- OAuthクライアントの作成
- OAuthクライアントの編集
- OAuthクライアントの削除
- OAuthクライアントのエクスポート
-
Bearerトークンの取得: クライアント資格証明および暗黙的OAuth付与タイプのRESTfulサービスをコールするためのアクセス・トークンを提供します。「クライアント資格証明の付与タイプを使用したOAuthクライアントの作成」を参照してください
-
Authの詳細: 認証コードOAuth付与タイプの一意の値および認可URIが表示されます。「認証コード付与タイプを使用したOAuthクライアントの作成」を参照してください
4.7.4 例
この項では、異なる付与タイプを持つOAuthクライアントの作成の例をいくつか示します。
4.7.4.1 クライアント資格証明の付与タイプを使用したOAuthクライアントの作成
この項では、クライアント資格証明付与タイプを使用してOAuthクライアントの作成方法について説明します。
例: POSTハンドラを使用したレコードの挿入で作成したモジュールexampleのOAuthクライアントを作成します。RESTfulサービスのエンドポイントはhttp://xyz.us.comp.com:1234/ords/pdbdba/example/emp/です。