GetObject リクエストを開始したときに Object Storage Service (OSS) が Function Compute を自動的にトリガーし、取得したデータの変換結果をアプリケーションに返すようにするには、オブジェクト FC アクセスポイントを使用してリクエストを開始する必要があります。 その後、クライアントを変更することなく、オブジェクトのコンテンツをシームレスに変更またはフィルタリングできます。 このトピックでは、オブジェクト FC アクセスポイントを作成する方法について説明します。
前提条件
OSS アクセスポイントは、OSS バケットが配置されているリージョンに作成されます。 詳細については、「アクセスポイントを作成する」をご参照ください。
Function Compute は、OSS バケットが配置されているリージョンでアクティブ化されます。 詳細については、「サービスを作成する」をご参照ください。
oss:WriteGetObjectResponse
権限が、デフォルトのサービスロール(AliyunFCDefaultRole)に付与されます。 権限ポリシーの例:{ "Statement": [ { "Action": "oss:WriteGetObjectResponse", "Effect": "Allow", "Resource": "*" } ], "Version": "1" }
詳細については、「RAM ロールに権限を付与する」をご参照ください。
関数は、Function Compute サービスで作成されます。
OSS SDK for Java、OSS SDK for Python、および OSS SDK for Go を使用して GetObject 操作を呼び出すと、Function Compute をトリガーできます。 これらの言語の OSS SDK を使用して関数コードをデプロイする場合、ランタイム環境の要件を満たす関数を作成する必要があります。
OSS SDK for Java を使用して関数コードをデプロイする場合は、[ランタイム] が Java 11 の関数を作成する必要があります。
OSS SDK for Python を使用して関数コードをデプロイする場合は、[ランタイム] が Python 3.10 の関数を作成する必要があります。
OSS SDK for Go を使用して関数コードをデプロイする場合は、[ランタイム] が Go 1 の関数を作成する必要があります。
その他のパラメーターについては、デフォルトの構成を保持します。 詳細については、「関数を作成する」をご参照ください。
RAM ユーザーには、次の権限が付与されます。
oss:CreateAccessPointForObjectProcess
、oss:GetAccessPointForObjectProcess
、oss:DeleteAccessPointForObjectProcess
、oss:ListAccessPointsForObjectProcess
、oss:PutAccessPointConfigForObjectProcess
、oss:GetAccessPointConfigForObjectProcess
、oss:PutAccessPointPolicyForObjectProcess
、oss:GetAccessPointPolicyForObjectProcess
、およびoss:DeleteAccessPointPolicyForObjectProcess
。 詳細については、「RAM ポリシーの一般的な例」をご参照ください。
制限事項
項目 | 説明 |
作成方法 | オブジェクト FC アクセスポイントは、OSS コンソールを使用するか、API 操作を呼び出すことによってのみ作成できます。 OSS SDK または ossutil を使用してオブジェクト FC アクセスポイントを作成することはできません。 |
数量 |
|
変更ルール | オブジェクト FC アクセスポイントを作成した後、変更できるのはそのポリシーのみです。 オブジェクト FC アクセスポイントに関する基本情報 (名前やエイリアスなど) は変更できません。 |
アクセスモード | オブジェクト FC アクセスポイントは匿名アクセスをサポートしていません。 |
OSS コンソールの使用
OSS コンソール にログオンします。
左側のナビゲーションウィンドウで、[オブジェクト FC アクセスポイント] をクリックします。
[オブジェクト FC アクセスポイント] ページで、[オブジェクト FC アクセスポイントの作成] をクリックします。
[オブジェクト FC アクセスポイントの作成] パネルで、パラメーターを構成し、[OK] をクリックします。 次の表にパラメーターを示します。
パラメーター
説明
[リージョン]
ドロップダウンリストから、アクセスポイントが配置されているリージョンを選択します。
[オブジェクト FC アクセスポイント名]
オブジェクト FC アクセスポイントの名前を指定します。 命名規則:
名前の長さは最大 63 文字です。
名前には、小文字、数字、およびハイフン(
-
)のみを含めることができ、ハイフン(-)で開始または終了することはできません。名前は、現在のリージョン内で一意である必要があります。
サポートするアクセスポイント
作成済みの OSS アクセスポイントを選択します。
バケット名
OSS アクセスポイントが関連付けられているバケットの名前を表示します。
[OSS API]
[GetObject] を選択します。
[function Compute サービス]
Function Compute サービスを選択します。
FC 関数の呼び出し
作成した関数を選択し、[FC 関数は Range GetObject リクエストをサポートしています] を選択します。
[関数のバージョン]
作成した関数のバージョンを選択します。 このパラメーターを指定しない場合、デフォルトで LATEST バージョンが使用されます。
ロールの承認を完了します。
オブジェクト FC アクセスポイントを初めて作成する場合は、RAM クイック承認 をクリックし、画面の指示に従って
AliyunOSSObjectFcForOSSDefaultRole
ロールに OSS および Function Compute リソースへのアクセスを承認します。 OSS アカウントが Function Compute の関数を呼び出せるようにするには、ロールとロールにアタッチされているポリシーを無効化、変更、または削除しないでください。[OK] をクリックします。
オブジェクト FC アクセスポイントは、約 10 分で作成されます。
オブジェクト FC アクセスポイントが作成されると、オブジェクト FC アクセスポイントのエイリアスが [オブジェクト FC アクセスポイント] ページに自動的に表示されます。
オブジェクト FC アクセスポイントのエイリアスは、変更、削除、または無効化できません。
Function Compute は、オブジェクト FC アクセスポイントのエイリアスを使用して GetObject 操作を呼び出した場合にのみトリガーされます。 オブジェクト FC アクセスポイントのエイリアスを使用して GetObject 以外の操作を呼び出すと、システムは自動的に OSS アクセスポイントに切り替わり、OSS アクセスポイントのポリシーに準拠します。
OSS API の使用
ビジネスで高度なカスタマイズが必要な場合は、RESTful API を直接呼び出すことができます。 API を直接呼び出すには、コードに署名計算を含める必要があります。 詳細については、「CreateAccessPointForObjectProcess」をご参照ください。