

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# VPC インターフェイスエンドポイントを介してノートブックインスタンスに接続する
<a name="notebook-interface-endpoint"></a>

パブリックインターネット経由で接続する代わりに、バーチャルプライベートクラウド (VPC) の[インターフェイスエンドポイント](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)を介して VPC からノートブックインスタンスに接続できます。VPC インターフェイスエンドポイントを使うと、VPC とノートブックインスタンスの間の通信は、 AWS ネットワーク内で完全かつ安全に行われます。

SageMaker ノートブックインスタンスでは、[AWS PrivateLink](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Introduction.html#what-is-privatelink) を使用する [Amazon Virtual Private Cloud](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Introduction.html) (Amazon VPC) インターフェイスエンドポイントがサポートされています。各 VPC エンドポイントは、VPC サブネット内の 1 つ以上の [Elastic Network Interface](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html) とプライベート IP アドレスで表されます。

**注記**  
ノートブックインスタンスに接続するためのインターフェイス VPC エンドポイントを作成する前に、SageMaker API に接続するためのインターフェイス VPC エンドポイントを作成してください。このようにして、ユーザーがノートブックインスタンスに接続するための URL を取得するために [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedNotebookInstanceUrl.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedNotebookInstanceUrl.html) を呼び出すと、その呼び出しもインターフェイス VPC エンドポイントを経由します。詳細については、「[VPC 内で SageMaker AI に接続する](interface-vpc-endpoint.md)」を参照してください。

インターフェイスエンドポイントを作成して、 AWS マネジメントコンソール または AWS Command Line Interface (AWS CLI) コマンドを使用してノートブックインスタンスに接続できます。手順については、「[インターフェイスエンドポイントの作成](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpce-interface.html#create-interface-endpoint)」を参照してください。ノートブックインスタンスに接続する VPC 内のすべてのサブネットに対して、必ずインターフェイスエンドポイントを作成してください。

インターフェイスエンドポイントを作成するときに、サービス名として **aws.sagemaker.*Region*.notebook** を指定します。VPC エンドポイントを作成したら、VPC エンドポイントのプライベート DNS を有効にします。SageMaker API、、またはコンソールを使用して VPC 内からノートブックインスタンスに接続するユーザーは AWS CLI、パブリックインターネットではなく VPC エンドポイントを介してノートブックインスタンスに接続します。

SageMaker ノートブックインスタンスは、Amazon VPC と [SageMaker AI](https://docs.aws.amazon.com/general/latest/gr/rande.html#sagemaker_region) の両方 AWS リージョン が利用可能なすべての で VPC エンドポイントをサポートします。 [https://docs.aws.amazon.com/general/latest/gr/rande.html#vpc_region](https://docs.aws.amazon.com/general/latest/gr/rande.html#vpc_region)

**Topics**
+ [プライベートネットワークを VPC に接続する](#notebook-private-link-vpn-nbi)
+ [SageMaker AI ノートブックインスタンスの VPC エンドポイントポリシーを作成する](#nbi-private-link-policy)
+ [VPC 内からの接続へのアクセスの制限](#notebook-private-link-restrict)

## プライベートネットワークを VPC に接続する
<a name="notebook-private-link-vpn-nbi"></a>

VPC 経由でノートブックインスタンスに接続するには、VPC 内のインスタンスから接続するか、 AWS Virtual Private Network (Site-to-Site VPN) または を使用してプライベートネットワークを VPC に接続する必要があります Direct Connect。詳細については Site-to-Site VPN、[「Amazon Virtual Private Cloud ユーザーガイド」の「VPN 接続](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html)」を参照してください。 *Amazon Virtual Private Cloud * 詳細については AWS Direct Connect、*AWS 「 Direct Connect ユーザーガイド*[」の「接続](https://docs.aws.amazon.com/directconnect/latest/UserGuide/create-connection.html)の作成」を参照してください。

## SageMaker AI ノートブックインスタンスの VPC エンドポイントポリシーを作成する
<a name="nbi-private-link-policy"></a>

SageMaker ノートブックインスタンスの Amazon VPC エンドポイントのポリシーを作成して、以下を指定できます。
+ アクションを実行できるプリンシパル。
+ 実行可能なアクション。
+ アクションを実行できるリソース。

詳細については、『*Amazon VPC ユーザーガイド*』の「[VPC エンドポイントでサービスへのアクセスを制御する](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-access.html)」を参照してください。

VPC エンドポイントポリシーの次の例では、エンドポイントへのアクセスが許可されているすべてのユーザーが、`myNotebookInstance` という名前のノートブックインスタンスへのアクセスが許可されることを指定しています。

```
{
  "Statement": [
      {
          "Action": "sagemaker:CreatePresignedNotebookInstanceUrl",
          "Effect": "Allow",
          "Resource": "arn:aws:sagemaker:us-west-2:123456789012:notebook-instance/myNotebookInstance",
          "Principal": "*"
      }
  ]
}
```

他のノートブックインスタンスへのアクセスは拒否されます。

## VPC 内からの接続へのアクセスの制限
<a name="notebook-private-link-restrict"></a>

VPC でインターフェイスエンドポイントを設定しても、VPC の外部にいる人はインターネット経由でノートブックインスタンスに接続できます。

**重要**  
以下のような IAM ポリシーを適用すると、ユーザーは指定された SageMaker API またはノートブックインスタンスにコンソールからアクセスできなくなります。

VPC 内からの接続のみにアクセスを制限するには、VPC 内からの呼び出しのみにアクセスを制限する AWS Identity and Access Management ポリシーを作成します。次に、ノートブックインスタンスへのアクセスに使用されるすべての AWS Identity and Access Management ユーザー、グループ、またはロールにそのポリシーを追加します。

**注記**  
このポリシーでは、インターフェイスのエンドポイントを作成したサブネット内の発信者にのみ接続を許可します。

------
#### [ JSON ]

****  

```
{
    "Id": "notebook-example-1",
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "EnableNotebookAccess",
            "Effect": "Allow",
            "Action": [
                "sagemaker:CreatePresignedNotebookInstanceUrl",
                "sagemaker:DescribeNotebookInstance"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceVpc": "vpc-111bbaaa"
                }
            }
        }
    ]
}
```

------

ノートブックインスタンスへのアクセスをインターフェイスエンドポイントを使って行われた接続のみに制限したい場合は、`aws:SourceVpc:` の代わりに `aws:SourceVpce` 条件キーを使用してください。

------
#### [ JSON ]

****  

```
{
    "Id": "notebook-example-1",
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "EnableNotebookAccess",
            "Effect": "Allow",
            "Action": [
                "sagemaker:CreatePresignedNotebookInstanceUrl",
                "sagemaker:DescribeNotebookInstance"
            ],
            "Resource": "*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "aws:sourceVpce": [
                        "vpce-111bbccc",
                        "vpce-111bbddd"
                    ]
                }
            }
        }
    ]
}
```

------

これらのポリシー例はどちらも、SageMaker API 用のインターフェイスエンドポイントも作成したと想定しています。詳細については、「[VPC 内で SageMaker AI に接続する](interface-vpc-endpoint.md)」を参照してください。2 番目の例では、`aws:SourceVpce` の値の 1 つは、ノートブックインスタンスのインターフェイスエンドポイントの ID です。もう 1 つは SageMaker API のインターフェイスエンドポイントの ID です。

通常、接続しようとする前に `DescribeNotebookInstance` を呼び出して `NotebookInstanceStatus` が `InService` であることを確認するため、こちらでのポリシーの例には [  DescribeNotebookInstance](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeNotebookInstance.html) が含まれています。例えば、次のようになります。

```
aws sagemaker describe-notebook-instance \
                    --notebook-instance-name myNotebookInstance
                    
                    
{
   "NotebookInstanceArn":
   "arn:aws:sagemaker:us-west-2:1234567890ab:notebook-instance/mynotebookinstance",
   "NotebookInstanceName": "myNotebookInstance",
   "NotebookInstanceStatus": "InService",
   "Url": "mynotebookinstance.notebook.us-west-2.sagemaker.aws",
   "InstanceType": "ml.m4.xlarge",
   "RoleArn":
   "arn:aws:iam::1234567890ab:role/service-role/AmazonSageMaker-ExecutionRole-12345678T123456",
   "LastModifiedTime": 1540334777.501,
   "CreationTime": 1523050674.078,
   "DirectInternetAccess": "Disabled"
}
aws sagemaker create-presigned-notebook-instance-url --notebook-instance-name myNotebookInstance
                
                
{
   "AuthorizedUrl": "https://mynotebookinstance.notebook.us-west-2.sagemaker.aws?authToken=AuthToken
}
```

**注記**  
生成された `presigned-notebook-instance-url`、`AuthorizedUrl` は、インターネット上のどこからでも使用できます。

これらの呼び出しの両方で、VPC エンドポイントのプライベート DNS ホスト名を有効にしなかった場合、または 2018 年 8 月 13 日より前にリリースされたバージョンの AWS SDK を使用している場合は、呼び出しでエンドポイント URL を指定する必要があります。例えば、`create-presigned-notebook-instance-url` の呼び出しは以下のようになります。

```
aws sagemaker create-presigned-notebook-instance-url
    --notebook-instance-name myNotebookInstance --endpoint-url
    VPC_Endpoint_ID.api.sagemaker.Region.vpce.amazonaws.com
```