

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

# 使用 SageMaker AI AWS API 管理 VPC 組態
<a name="samurai-vpc-workforce-cli"></a>

使用下列各節，進一步了解如何管理 VPCs組態，同時維護工作團隊的適當存取層級。

## 使用 VPC 組態建立人力資源
<a name="samurai-create-vpc-cli"></a>

如果帳戶已有人力資源，則必須先將其刪除。您也可以使用 VPC 組態更新人力資源。

```
aws sagemaker create-workforce --cognito-config '{"ClientId": "app-client-id","UserPool": "Pool_ID",}' --workforce-vpc-config \       
" {\"VpcId\": \"vpc-id\", \"SecurityGroupIds\": [\"sg-0123456789abcdef0\"], \"Subnets\": [\"subnet-0123456789abcdef0\"]}" --workforce-name workforce-name
{
    "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name"
}
```

描述人力資源並確保狀態為 `Initializing`。

```
aws sagemaker describe-workforce --workforce-name workforce-name
{
    "Workforce": {
        "WorkforceName": "workforce-name",
        "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name",
        "LastUpdatedDate": 1622151252.451,
        "SourceIpConfig": {
            "Cidrs": []
        },
        "SubDomain": "subdomain.us-west-2.sagamaker.aws.com",
        "CognitoConfig": {
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        "CreateDate": 1622151252.451,
        "WorkforceVpcConfig": {
            "VpcId": "vpc-id",
            "SecurityGroupIds": [
                "sg-0123456789abcdef0"
            ],
            "Subnets": [
                "subnet-0123456789abcdef0"
            ]
        },
        "Status": "Initializing"
    }
}
```

導覽至 Amazon VPC 主控台。從左側面板選取**端點**。您的帳戶應該已建立兩個 VPC 端點。

## 為您的人力資源新增 VPC 組態
<a name="samurai-add-vpc-cli"></a>

使用下列命令，透過 VPC 組態更新非 VPC 私有人力資源。

```
aws sagemaker update-workforce --workforce-name workforce-name\
--workforce-vpc-config "{\"VpcId\": \"vpc-id\", \"SecurityGroupIds\": [\"sg-0123456789abcdef0\"], \"Subnets\": [\"subnet-0123456789abcdef0\"]}"
```

描述人力資源並確保狀態為 `Updating`。

```
aws sagemaker describe-workforce --workforce-name workforce-name
{
    "Workforce": {
        "WorkforceName": "workforce-name",
        "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name",
        "LastUpdatedDate": 1622151252.451,
        "SourceIpConfig": {
            "Cidrs": []
        },
        "SubDomain": "subdomain.us-west-2.sagamaker.aws.com",
        "CognitoConfig": {
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        "CreateDate": 1622151252.451,
        "WorkforceVpcConfig": {
            "VpcId": "vpc-id",
            "SecurityGroupIds": [
                "sg-0123456789abcdef0"
            ],
            "Subnets": [
                "subnet-0123456789abcdef0"
            ]
        },
        "Status": "Updating"
    }
}
```

導覽至 Amazon VPC 主控台。從左側面板選取**端點**。您的帳戶應該已建立兩個 VPC 端點。

## 從您的人力資源移除 VPC 組態
<a name="samurai-remove-vpc-cli"></a>

使用空的 VPC 組態更新 VPC 私有人力資源，以移除 VPC 資源。

```
aws sagemaker update-workforce --workforce-name workforce-name\ 
--workforce-vpc-config "{}"
```

描述人力資源並確保狀態為 `Updating`。

```
aws sagemaker describe-workforce --workforce-name workforce-name
{
    "Workforce": {
        "WorkforceName": "workforce-name",
        "WorkforceArn": "arn:aws:sagemaker:us-west-2:xxxxxxxxx:workforce/workforce-name",
        "LastUpdatedDate": 1622151252.451,
        "SourceIpConfig": {
            "Cidrs": []
        },
        "SubDomain": "subdomain.us-west-2.sagamaker.aws.com",
        "CognitoConfig": {
            "UserPool": "Pool_ID",
            "ClientId": "app-client-id"
        },
        "CreateDate": 1622151252.451,
        "Status": "Updating"
    }
}
```

導覽至 Amazon VPC 主控台。從左側面板選取**端點**。應刪除兩個 VPC 端點。

## 限制公開存取工作者入口網站，同時透過 VPC 維持存取權限
<a name="public-access-vpc"></a>

 VPC 或非 VPC 工作者入口網站中的工作者可以看到指派給他們的標籤工作。指派來自透過 OIDC 群組的工作團隊中的指派工作者。客戶有責任在其人力資源中設定 `sourceIpConfig`，限制對其公有工作者入口網站的存取。

**注意**  
您只能透過 SageMaker API 限制對工作者入口網站的存取。無法透過主控台來完成此選項。

使用下列命令來限制工作者入口網站的公有存取權限。

```
aws sagemaker update-workforce --region us-west-2 \
--workforce-name workforce-demo --source-ip-config '{"Cidrs":["10.0.0.0/16"]}'
```

在人力資源設定 `sourceIpConfig` 後，工作者可以存取 VPC 中的工作者入口網站，但不能透過公有網際網路存取。

**注意**  
您無法在 VPC 中對工作者入口網站設定 `sourceIP` 限制。