

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 啟用跨帳戶探索能力
<a name="feature-store-cross-account-discoverability"></a>

透過 AWS Resource Access Manager (AWS RAM)，您可以安全地與其他 共用功能群組目錄，其中包含所有功能群組和功能資源 AWS 帳戶。這可讓您的團隊成員搜尋並探索跨多個帳戶的特徵群組和功能，進而提升資料一致性、簡化共同作業，並減少重複工作量。

資源擁有者帳戶可以透過 AWS 帳戶 授予使用 的許可，與其他個人共用資源 AWS RAM。資源取用者帳戶是 AWS 帳戶 與之共用資源的 ，受限於從資源擁有者帳戶授予的許可。如果您是組織，建議您利用 AWS Organizations與個人 AWS 帳戶、組織中的所有帳戶或組織單位 (OU) 共用資源，而不必將許可套用至每個帳戶。如需教學影片和有關 AWS RAM 概念和優點的詳細資訊，請參閱 AWS RAM 《 使用者指南》中的[什麼是 AWS Resource Access Manager？](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html)。

本節介紹資源擁有者帳戶如何選擇特徵群組目錄並將探索能力許可授予資源消費者帳戶，以及具有探索能力許可的資源消費者帳戶如何使用許可來搜尋和探索資源擁有者帳戶中的特徵群組。探索能力許可不會授予存取許可 (唯讀、讀寫或管理員)。存取許可是在資源層級授予，而不是在帳戶層級授予。如需如何授予存取許可的資訊，請參閱[啟用跨帳戶存取權](feature-store-cross-account-access.md)。

以下主題討論如何共用特徵群組目錄，以及如何搜尋套用探索能力許可的共享資源。

**Topics**
+ [共用您的特徵群組目錄](feature-store-cross-account-discoverability-share-feature-group-catalog.md)
+ [搜尋可探索的資源](feature-store-cross-account-discoverability-use.md)

# 共用您的特徵群組目錄
<a name="feature-store-cross-account-discoverability-share-feature-group-catalog"></a>

特徵群組目錄 `DefaultFeatureGroupCatalog` 包含資源擁有者帳戶擁有的*所有*特徵群組實體。資源擁有者帳戶可以共用目錄，以將探索能力授予單一或多個資源消費者帳戶。此操作可透過在 AWS Resource Access Manager (AWS RAM) 中建立資源共用來完成。特徵群組是 Amazon SageMaker Feature Store 中的主要資源，由特徵商店管理的特徵定義和記錄組成。如需特徵群組的更多相關資訊，請參閱[功能儲存概念](feature-store-concepts.md)。

探索能力表示資源消費者帳戶可以搜尋可探索的資源。可探索的資源會被視為它們好像就在自己的帳戶中 (標籤除外)。允許特徵群組目錄可探索後，依預設不會授予資源消費者帳戶存取許可 (唯讀、讀寫或管理員)。存取許可是在資源層級授予，而不是在帳戶層級授予。如需如何授予存取許可的資訊，請參閱[啟用跨帳戶存取權](feature-store-cross-account-access.md)。

若要啟用跨帳戶探索功能，您需要在使用 AWS RAM 開發人員指南中的[AWS RAM 建立資源共享](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create)說明時，指定 SageMaker AI 資源目錄和功能群組目錄。在下文中，我們提供使用 AWS RAM 主控台指示的規格。

1. **指定資源共享詳細資訊**：
   + 資源類型：選擇 **SageMaker AI 資源目錄**。
   + ARN：選擇具有下列格式的特徵群組目錄 ARN：`arn:aws:sagemaker:us-east-1:111122223333:sagemaker-catalog/DefaultFeatureGroupCatalog`

     *`us-east-1`* 是資源的區域，*`111122223333`* 是資源擁有者帳戶 ID。
   + 資源 ID：選擇 `DefaultFeatureGroupCatalog`。

1. **關聯受管許可**：
   + 受管許可：選擇 `AWSRAMPermissionSageMakerCatalogResourceSearch`。

1. **授予存取權給主體**：
   + 選擇主體類型 (AWS 帳戶、組織或組織單位)，然後輸入適當的 ID。

     如果您是組織，可能想要利用 AWS Organizations。透過 Organizations，您可以與個人 AWS 帳戶、組織中的所有帳戶或組織單位 (OU) 共用資源。這可簡化套用許可的操作，而無需將許可套用至每個帳戶。如需在 中共用資源和授予許可的詳細資訊 AWS，請參閱《 AWS Resource Access Manager 開發人員指南》中的在 [中啟用資源共用 AWS Organizations](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs)。

1. **檢閱和建立**：
   + 檢閱，然後選擇**建立資源共用**。

資源共用和主體或資源消費者帳戶可能需要幾分鐘的時間才能完成關聯。設定資源共用和主體關聯後，指定的資源消費者帳戶會收到加入該資源共用的邀請。資源取用者帳戶可以在 AWS RAM 主控台中開啟[與我共用：資源共用](https://console.aws.amazon.com/ram/home#SharedResourceShares)頁面，以檢視並接受邀請。如需在 中接受和檢視資源的詳細資訊 AWS RAM，請參閱[存取與您共用 AWS 的資源](https://docs.aws.amazon.com/ram/latest/userguide/working-with-shared.html)。在這些情況下，邀請將不會送出：
+ 如果您是 中組織的一部分， AWS Organizations 且已啟用組織中的共用。在這種情況下，組織中的主體會自動存取共用資源，而無需邀請。
+ 如果您與擁有資源 AWS 帳戶 的 共用，則該帳戶中的主體會自動存取共用資源，而無需邀請。

如需有關接受和使用資源共用的更多相關資訊，請參閱[搜尋可探索的資源](feature-store-cross-account-discoverability-use.md)。

## 使用 共用特徵群組目錄 適用於 Python (Boto3) 的 AWS SDK
<a name="feature-store-cross-account-discoverability-sagemaker-catalog-resource-type-python-sdk-example"></a>

您可以使用 適用於 Python (Boto3) 的 AWS SDK AWS RAM APIs來建立資源共享。下列程式碼是 *us-east-1* 區域內資源擁有者帳戶 ID *`111122223333`* 的範例。資源擁有者正在建立名為 *`test-cross-account-catalog`* 的資源共用。他們正在與資源消費者帳戶 ID *`444455556666`* 共用特徵群組目錄。若要使用適用於 AWS RAM 的 Python SDK API，請將 `AWSRAMPermissionSageMakerCatalogResourceSearch` 政策附加至執行角色。如需更多詳細資訊，請參閱 [AWS RAM API](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ram/client/create_resource_share.html)。

```
#Call list resource catalogs as a prerequisite for RAM share
sagemaker_client.list_resource_catalogs()

# Share DefaultFeatureGroupCatalog with other account
ram_client = boto3.client("ram")
response = ram_client.create_resource_share(
    name='test-cross-account-catalog', # Change to your custom resource share name
    resourceArns=[
        'arn:aws:sagemaker:us-east-1:111122223333:sagemaker-catalog/' + 'DefaultFeatureGroupCatalog', # Change 111122223333 to the resource owner account ID
    ],
    principals=[
        '444455556666', # Change 444455556666 to the resource consumer account ID
    ],
    permissionArns = ["arn:aws:ram::aws:permission/AWSRAMPermissionSageMakerCatalogResourceSearch"] # AWSRAMPermissionSageMakerCatalogResourceSearch is the only policy allowed for SageMaker Catalog
)
```

主體是安全系統中的執行者。在資源型政策中，允許的委託人是 IAM 使用者、IAM 角色、根帳戶或其他 AWS 服務。

# 搜尋可探索的資源
<a name="feature-store-cross-account-discoverability-use"></a>

資源擁有者帳戶必須授予許可給資源消費者帳戶，才能允許具有共享資源的探索能力或存取許可 (唯讀、讀寫或管理員) 權限。在以下各節中，我們提供如何接受共享資源邀請的指示，以及如何搜尋可探索特徵群組的範例。

**接受共享資源的邀請**

作為資源消費者帳戶，您會收到加入資源共用的邀請，一旦資源擁有者帳戶授予許可。若要接受任何共用資源的邀請，請在 AWS RAM 主控台中開啟[與我共用：資源共用](https://console.aws.amazon.com/ram/home#SharedResourceShares)頁面，以檢視和回應邀請。在這些情況下，邀請將不會送出：
+ 如果您是 中組織的一部分， AWS Organizations 並在組織中啟用共用，則組織中的主體會自動存取共用資源，而無需邀請。
+ 如果您與擁有資源 AWS 帳戶 的 共用，則該帳戶中的主體會自動存取共用資源，而無需邀請。

如需接受和使用資源共用的詳細資訊 AWS RAM，請參閱[回應資源共用邀請](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html)。

## 搜尋可探索特徵群組範例
<a name="feature-store-cross-account-discoverability-use-search"></a>

一旦與已套用探索能力許可的資源消費者帳戶共用資源，資源消費者帳戶就可以使用主控名 UI 和 Feature Store SDK 在 Amazon SageMaker Feature Store 中搜尋和探索共用資源。請注意，您無法搜尋跨帳戶資源的標籤。可檢視特徵群組目錄的數量上限為 1000。如需有關授予探索能力許可的更多相關資訊，請參閱[啟用跨帳戶探索能力](feature-store-cross-account-discoverability.md)。

如需在主控台中檢視共用特徵群組的詳細資訊，請參閱[尋找特徵商店中的特徵群組](feature-store-search-feature-group-metadata.md)。

在以下範例中，當設定 `CrossAccountFilterOption` 為 `"CrossAccount"` 時，資源消費者帳戶會使用 SageMaker AI 搜尋來搜尋可供探索的資源：

```
from sagemaker.session import Session

sagemaker_session = Session(boto_session=boto_session)

sagemaker_session.search(
    resource="FeatureGroup",
    search_expression={
        "Filters": [
            {
                "Name": "FeatureGroupName",
                "Value": "MyFeatureGroup",
                "Operator": "Contains",
            }
        ],
        "Operator": "And",
    },
    sort_by="Name",
    sort_order="Ascending",
    next_token="token",
    max_results=50,
    CrossAccountFilterOption="CrossAccount"
)
```

如需 SageMaker AI 搜尋和請求參數的詳細資訊，請參閱 Amazon SageMaker API 參考中的[搜尋](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Search.html)。