オンライン ストア インスタンスと特徴ビューへのアクセスを制御するには、これらのリソースに Identity and Access Management(IAM)ポリシーを設定します。IAM ポリシーは、1 つ以上のメンバー(プリンシパル)を IAM ロールに関連付けるバインディングの集合です。IAM ポリシー バインディングには、次のタイプのメンバーを含めることができます。
個々のユーザー アカウント
Google グループ
ドメイン
サービス アカウント
始める前に
まだ行っていない場合は、Vertex AI に対する認証を行います。
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
詳細については、Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
オンライン ストアの IAM ポリシーを設定する
次のサンプルを使用して、既存のオンライン ストア インスタンスの IAM ポリシーを設定します。
REST
FeatureOnlineStore
リソースに IAM ポリシーを割り当てるには、featureOnlineStores.setIamPolicy メソッドを使用して POST
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: オンライン ストア インスタンスが配置されているリージョン(
us-central1
など)。 - PROJECT_ID: プロジェクト ID。
- FEATUREONLINESTORE_NAME: IAM ポリシーを設定するオンライン ストア インスタンスの名前。
- IAM_ROLE_NAME: メンバーに割り当てる IAM ロールの名前(例:
aiplatform.featureOnlineStoreUser
)。Vertex AI の IAM ロールの一覧については、[IAM を使用したアクセス制御](/vertex-ai/docs/general/access-control) をご覧ください。 - USER_EMAIL: 省略可。ロールが割り当てられているユーザー アカウントのメールアドレス。
- GROUP_EMAIL: 省略可。ロールが割り当てられている Google グループのメールアドレス。
- DOMAIN_NAME: 省略可。ロールが割り当てられているドメイン名。
- SERVICE_ACCOUNT_EMAIL: 省略可。ロールが割り当てられるサービス アカウントのメールアドレス。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy
リクエストの本文(JSON):
{ "policy": { "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ] } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME:setIamPolicy" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ], "etag": "etag" }
特徴ビューの IAM ポリシーを設定する
既存の特徴ビューに IAM ポリシーを設定するには、次のサンプルを使用します。
REST
FeatureView
リソースに IAM ポリシーを割り当てるには、featureViews.setIamPolicy メソッドを使用して POST
リクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
- LOCATION_ID: 特徴ビューが配置されているリージョン(
us-central1
など)。 - PROJECT_ID: プロジェクト ID。
- FEATUREONLINESTORE_NAME: 特徴ビューを含むオンライン ストア インスタンスの名前。
- FEATUREVIEW_NAME: IAM ポリシーを設定する特徴ビューの名前。
- IAM_ROLE_NAME: メンバーに割り当てる IAM ロールの名前(例:
aiplatform.featureOnlineStoreUser
)。Vertex AI の IAM ロールの一覧については、[IAM を使用したアクセス制御](/vertex-ai/docs/general/access-control) をご覧ください。 - USER_EMAIL: 省略可。ロールが割り当てられているユーザー アカウントのメールアドレス。
- GROUP_EMAIL: 省略可。ロールが割り当てられている Google グループのメールアドレス。
- DOMAIN_NAME: 省略可。ロールが割り当てられているドメイン名。
- SERVICE_ACCOUNT_EMAIL: 省略可。ロールが割り当てられるサービス アカウントのメールアドレス。
HTTP メソッドと URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy
リクエストの本文(JSON):
{ "policy": { "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ] } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:setIamPolicy" | Select-Object -Expand Content
次のような JSON レスポンスが返されます。
{ "bindings": [ { "role": "IAM_ROLE_NAME", "members": [ "user:USER_EMAIL", "group:GROUP_EMAIL", "domain:DOMAIN_NAME", "serviceAccount:SERVICE_ACCOUNT_EMAIL" ] } ], "etag": "etag" }
次のステップ
特徴グループ内のすべての特徴を一覧表示する方法を学習する。
特徴を更新する方法を学習する。
特徴を削除する方法を学習する。
特徴グループを更新する方法を学習する。
Vertex AI Feature Store のオンライン サービング タイプ。