APIゲートウェイ・クイックスタート・ガイド
API Gatewayを迅速に開始する方法をご紹介します。
A.テナンシを設定します
APIゲートウェイおよびネットワーク・リソースを作成およびアクセスするための適切なユーザーおよびグループがまだ存在しない場合:
- テナンシ管理者としてコンソールにサインインします。
- ナビゲーション・メニューを開き、「アイデンティティとセキュリティ」を選択します。「アイデンティティ」で、「ドメイン」を選択します。
-
「グループ」、「グループの作成」の順に選択して、新規グループを作成します。
-
「ユーザー」、「ユーザーの作成」の順に選択して、新規ユーザーを作成します。
-
「グループ」、グループの名前、「ユーザーをグループに追加」の順に選択して、ユーザーをグループに追加します。
詳細は、詳細な手順を参照してください。
APIゲートウェイ・リソースおよびネットワーク・リソースを作成する適切なコンパートメントがまだ存在しない場合:
- テナンシ管理者としてコンソールにサインインします。
-
「コンパートメントの作成」を選択します。
詳細は、詳細な手順を参照してください。
高可用性を確保するために、AD固有のサブネットではなくリージョナル・サブネットでのみAPIゲートウェイを作成できます。ネットワークリソースを作成するパブリック・リージョナル・サブネットを持つ適切なVCNがまだ存在しない場合:
- テナンシ管理者としてコンソールにサインインします。
- ナビゲーション・メニューを開き、「ネットワーキング」、「仮想クラウド・ネットワーク」の順に選択します。
- 新しいVCNを作成するには、VCNウィザードの起動を選択します。
-
「VCNウィザードの起動」ダイアログ・ボックスで、「インターネット接続性を持つVCNの作成」を選択し、「VCNウィザードの起動」を選択します。
VCNと同様に、ワークフローでは、インターネット・ゲートウェイ、NATゲートウェイおよびサービス・ゲートウェイとともに、パブリックのリージョン・サブネットとプライベートのリージョン・サブネットが作成されます。
-
新しいVCNの名前を入力し、VCNのCIDRブロック、パブリック・リージョナル・サブネット(32以上の空きIPアドレスを指定する必要があります)、およびプライベート・リージョナル・サブネットを指定します。
-
「次」を選択して新しいVCNに入力した詳細を確認し、「作成」を選択して作成します。VCNが作成されたら、「Virtual Cloud Networkの表示」を選択して、新しいVCNおよび作成されたサブネットを表示します。
APIゲートウェイは、デフォルトで開いていないポート443で通信します。ポート443でトラフィックを許可するには、パブリック・リージョン・サブネットに対して新しいステートフル・イングレス・ルールを追加する必要があります。
- パブリック・リージョナル・サブネットの名前、デフォルト・セキュリティ・リストの名前、「イングレス・ルールの追加」の順に選択します。次を指定します:
- ソース・タイプ: CIDR
- ソースCIDR: 0.0.0.0/0
- IPプロトコル: TCP
- ソース・ポート範囲: すべて
- 宛先ポート範囲: 443
- 新しいルールをデフォルトのセキュリティ・リストに追加するには、「イングレス・ルールの追加」を選択します。
詳細は、詳細な手順を参照してください。
1つ以上のAPI開発者がテナンシ管理者ではない場合:
- テナンシ管理者としてコンソールにサインインします。
-
API開発者にアクセス権を付与するポリシーを作成します:
- API開発者がAPIゲートウェイ関連リソースにアクセスできるようにする、1つのポリシー・ステートメントでポリシーを作成します。「ポリシーの作成」を選択し、新しいポリシーの名前と説明を指定し、APIゲートウェイ関連リソースを所有するコンパートメントを選択します。ポリシー・ビルダーのマニュアル・エディタを使用して、次のポリシー・ステートメントを入力し、「作成」を選択します。
Allow group <group-name> to manage api-gateway-family in compartment <compartment-name>
- API開発者がネットワーク・リソースにアクセスできるようにするポリシーを1つのポリシー・ステートメントで作成します。「ポリシーの作成」を選択し、新しいポリシーの名前と説明を指定し、APIゲートウェイで使用するネットワーク・リソースを所有するコンパートメントを選択します。ポリシー・ビルダーのマニュアル・エディタを使用して、次のポリシー・ステートメントを入力し、「作成」を選択します。
Allow group <group-name> to manage virtual-network-family in compartment <compartment-name>
ノート:このQuickStartガイドで示すように、前述のポリシーで、HTTPバック・エンドを使用してAPIデプロイメントを作成できます。追加のポリシー(ドキュメントを参照)を入力して、API開発者がOCI Functions関数をバックエンドとして使用してAPIデプロイメントを作成できるようにしたり、APIゲートウェイがキャッシュ・サーバーを使用して認証してキャッシュされたレスポンス・データを取得できるようにしたりできます。
- API開発者がAPIゲートウェイ関連リソースにアクセスできるようにする、1つのポリシー・ステートメントでポリシーを作成します。「ポリシーの作成」を選択し、新しいポリシーの名前と説明を指定し、APIゲートウェイ関連リソースを所有するコンパートメントを選択します。ポリシー・ビルダーのマニュアル・エディタを使用して、次のポリシー・ステートメントを入力し、「作成」を選択します。
詳細は、詳細な手順を参照してください。
BAPIの作成、デプロイおよびコール
- APIゲートウェイ開発者としてコンソールにサインインし、ナビゲーション・メニューを開き、「開発者サービス」を選択します。「API管理」で、「ゲートウェイ」を選択します。
- 「ゲートウェイの作成」を選択し、次を指定します:
- 新しいゲートウェイの名前(
acme-api-gateway
など) - Publicとしての新しいゲートウェイのタイプ
- APIゲートウェイ・リソースを作成するコンパートメントの名前
- APIゲートウェイで使用するVCNの名前
- VCN内のパブリック・リージョン・サブネットの名前
- 新しいゲートウェイの名前(
- 「作成」を選択します。
新しいAPIゲートウェイが作成されると、「ゲートウェイ」ページのリストに「アクティブ」と表示されます。
詳細は、詳細な手順を参照してください。
- コンソールの「ゲートウェイ」ページで、前に作成したAPIゲートウェイの名前を選択します。
- 「リソース」で、「デプロイメント」、「デプロイメントの作成」の順に選択します。
-
「最初から」を選択し、「基本情報」セクションで次を指定します:
- 新しいAPIデプロイメントの名前(
acme-API-deployment
など) - APIデプロイメントに含まれる各ルートのパスに追加するパス接頭辞(
/v1
など) - 新規APIデプロイメントを作成するコンパートメント
- 新しいAPIデプロイメントの名前(
-
「次」を選択し、「ルート1」セクションで次を指定します:
- パス(
/hello
など) - バックエンド・サービスによって受け入れられるメソッド(
GET
など) - バックエンド・サービスのタイプおよび関連する詳細。便宜上、型を
HTTP
として指定し、パブリックAPIをバックエンドのURL (https://API.weather.gov
など)として入力します。
- パス(
-
「次へ」を選択して新しいAPIデプロイメントに入力した詳細を確認し、「作成」を選択して作成します。
新しいAPIデプロイメントが作成されると、APIデプロイメントのリストに「アクティブ」と表示されます。
- APIデプロイメントがアクティブな場合は、次のタスクに進みます。
詳細は、詳細な手順を参照してください。
-
APIデプロイメントのリストで、作成した新しいAPIデプロイメントのエンドポイントの横にある「コピー」を選択して、エンドポイントをコピーします。
-
ターミナル・ウィンドウを開き、次のように入力してAPIをコールします。
curl -k -X GET <deployment-endpoint>
<deployment-endpoint>
は、前のステップでコピーしたエンドポイントです。たとえば、https://lak...sjd.apigateway.us-phoenix-1.oci.customer-oci.com/v1/hello
です。
完了しました。最初のAPIゲートウェイおよびAPIデプロイメントを作成し、APIゲートウェイ・サービスを使用して最初のAPIをコールしました。
詳細は、詳細な手順を参照してください。
APIファンクションを作成、デプロイおよびコールしたので、次の方法について学習します:
- APIゲートウェイおよびAPIデプロイメントの管理(APIゲートウェイのリスト、APIゲートウェイの更新、APIゲートウェイの削除を参照)
- リクエスト数の制限(APIゲートウェイ・バックエンドへのリクエストの数の制限を参照)
- CORSサポートの追加(CORSサポートをAPIデプロイメントに追加を参照)
- 標準レスポンスの追加(APIゲートウェイ・バックエンドとしての標準レスポンスの追加を参照)
- APIコール元のアイデンティティと権限の確認(APIデプロイメントへの認証と認可の追加を参照)
これで完了です。