

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

# Amazon WorkSpaces でのテスト設定
<a name="test-console-private-access-workspaces"></a>

Amazon WorkSpaces を使用すると、Microsoft Windows、Amazon Linux、または Ubuntu Linux をユーザー用のクラウドベースの仮想デスクトップ (WorkSpaces と呼ばれます) として プロビジョニングできます。必要に応じてユーザーをすばやく追加または削除できます。ユーザーは、複数のデバイスまたはウェブブラウザから仮想デスクトップにアクセスできます。WorkSpaces の詳細については、[「Amazon WorkSpaces 管理ガイド」](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html)を参照してください。

このセクションの例では、ユーザー環境が WorkSpace で実行されているウェブブラウザを使用してAWS Management Consoleプライベートアクセスにサインインするテスト環境について説明します。次に、ユーザーは Amazon Simple Storage Service コンソールにアクセスします。この WorkSpace は、VPC 接続ネットワーク上のラップトップを使用して、ブラウザAWS Management Consoleから にアクセスする企業ユーザーのエクスペリエンスをシミュレートすることを目的としています。

このチュートリアルではAWS CloudFormation、 を使用してネットワーク設定と WorkSpaces で使用する Simple Active Directory を作成および設定し、 を使用して WorkSpace をセットアップする手順を示しますAWS Management Console。

次の図は、WorkSpace を使用して AWS Management Console プライベートアクセス設定をテストするためのワークフローを示しています。クライアントの WorkSpace、Amazon が管理する VPC、および顧客が管理する VPC の関係を示しています。

![Amazon WorkSpaces を使用してAWS Management Consoleプライベートアクセスをテストするためのセットアップ設定。](http://docs.aws.amazon.com/ja_jp/awsconsolehelpdocs/latest/gsg/images/vpce-workspaces-how-to-1.png)


次のCloudFormationテンプレートをコピーして、ネットワークをセットアップする手順のステップ 3 で使用するファイルに保存します。

## AWS Management Consoleプライベートアクセス環境CloudFormationテンプレート
<a name="private-access-environment-cloudformation-template"></a>

```
Description: |
  AWS Management Console Private Access.
Parameters:
  VpcCIDR:
    Type: String
    Default: 172.16.0.0/16
    Description: CIDR range for VPC
  PrivateSubnet1CIDR:
    Type: String
    Default: 172.16.1.0/24
    Description: CIDR range for Private Subnet 1
  PrivateSubnet2CIDR:
    Type: String
    Default: 172.16.2.0/24
    Description: CIDR range for Private Subnet 2
  DSAdminPasswordResourceName:
    Type: String
    Default: ADAdminSecret
    Description: Password for directory services admin
Resources:

  #########################
  # VPC AND SUBNETS
  #########################
  
  AppVPC:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: !Ref VpcCIDR
      InstanceTenancy: default
      EnableDnsSupport: true
      EnableDnsHostnames: true

  PrivateSubnet1:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref AppVPC
      CidrBlock: !Ref PrivateSubnet1CIDR
      AvailabilityZone:
        Fn::Select:
          - 0
          - Fn::GetAZs: ""

  PrivateSubnet2:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref AppVPC
      CidrBlock: !Ref PrivateSubnet2CIDR
      AvailabilityZone:
        Fn::Select:
          - 1
          - Fn::GetAZs: ""

  #########################
  # Route Tables
  #########################

  PrivateRouteTable:
    Type: AWS::EC2::RouteTable
    Properties:
      VpcId: !Ref AppVPC

  PrivateSubnet1RouteTableAssociation:
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      RouteTableId: !Ref PrivateRouteTable
      SubnetId: !Ref PrivateSubnet1

  PrivateSubnet2RouteTableAssociation:
    Type: AWS::EC2::SubnetRouteTableAssociation
    Properties:
      RouteTableId: !Ref PrivateRouteTable
      SubnetId: !Ref PrivateSubnet2

  #########################
  # SECURITY GROUPS
  #########################

  VPCEndpointSecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: Allow TLS for VPC Endpoint
      VpcId: !Ref AppVPC
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 443
          ToPort: 443
          CidrIp: !GetAtt AppVPC.CidrBlock

  #########################
  # VPC ENDPOINTS
  #########################

  VPCEndpointInterfaceSignin:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcEndpointType: Interface
      PrivateDnsEnabled: true
      SubnetIds:
        - !Ref PrivateSubnet1
        - !Ref PrivateSubnet2
      SecurityGroupIds:
        - !Ref VPCEndpointSecurityGroup
      ServiceName: !Sub com.amazonaws.${AWS::Region}.signin
      VpcId: !Ref AppVPC
      PolicyDocument:
        Version: 2012-10-17
        Statement:
          - Effect: Allow
            Principal: '*'
            Action: signin:Authenticate
            Resource: '*'
            Condition:
              StringEquals:
                aws:ResourceAccount: !Ref AWS::AccountId
          - Effect: Allow
            Principal: '*'
            Action:
              - signin:AuthorizeOAuth2Access
              - signin:CreateOAuth2Token
            Resource: '*'
            Condition:
              StringEquals:
                aws:PrincipalAccount: !Ref AWS::AccountId

  VPCEndpointInterfaceConsole:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcEndpointType: Interface
      PrivateDnsEnabled: true
      SubnetIds:
        - !Ref PrivateSubnet1
        - !Ref PrivateSubnet2
      SecurityGroupIds:
        - !Ref VPCEndpointSecurityGroup
      ServiceName: !Sub com.amazonaws.${AWS::Region}.console
      VpcId: !Ref AppVPC
      PolicyDocument:
        Version: 2012-10-17
        Statement:
          - Effect: Allow
            Principal: '*'
            Action: '*'
            Resource: '*'
            Condition:
              StringEquals:
                aws:PrincipalAccount: !Ref AWS::AccountId
                aws:ResourceAccount: !Ref AWS::AccountId
                aws:SourceVpc: !Ref AppVPC
          - Effect: Deny
            Principal: '*'
            Action: '*'
            Resource: '*'
            Condition:
              StringNotEquals:
                aws:PrincipalAccount: !Ref AWS::AccountId
                aws:ResourceAccount: !Ref AWS::AccountId
                aws:SourceVpc: !Ref AppVPC

  VPCEndpointInterfaceConsoleStatic:
  # console-static only supports the full access endpoint policy
    Type: AWS::EC2::VPCEndpoint
    Properties:
      VpcEndpointType: Interface
      PrivateDnsEnabled: true
      SubnetIds:
        - !Ref PrivateSubnet1
        - !Ref PrivateSubnet2
      SecurityGroupIds:
        - !Ref VPCEndpointSecurityGroup
      ServiceName: !Sub com.amazonaws.${AWS::Region}.console-static
      VpcId: !Ref AppVPC

  #########################
  # WORKSPACE RESOURCES
  #########################

  ADAdminSecret:
    Type: AWS::SecretsManager::Secret
    Properties:
      Name: !Ref DSAdminPasswordResourceName
      Description: Password for directory services admin
      GenerateSecretString:
        SecretStringTemplate: '{"username": "Admin"}'
        GenerateStringKey: password
        PasswordLength: 30
        ExcludeCharacters: '"@/\'

  WorkspaceSimpleDirectory:
    Type: AWS::DirectoryService::SimpleAD
    Properties:
      Name: corp.awsconsole.com
      Password:
        Fn::Sub: "{{resolve:secretsmanager:${DSAdminPasswordResourceName}:SecretString:password}}"
      Size: Small
      VpcSettings:
        SubnetIds:
          - !Ref PrivateSubnet1
          - !Ref PrivateSubnet2
        VpcId: !Ref AppVPC
Outputs:
  PrivateSubnet1:
    Description: Private Subnet 1
    Value: !Ref PrivateSubnet1
  PrivateSubnet2:
    Description: Private Subnet 2
    Value: !Ref PrivateSubnet2
  WorkspaceSimpleDirectory:
    Description: Directory to be used for Workspaces
    Value: !Ref WorkspaceSimpleDirectory
  WorkspacesAdminPassword:
    Description: The ARN of the Workspaces admin's password. Navigate to the Secrets Manager in the AWS Console to view the value.
    Value: !Ref ADAdminSecret
```

**注記**  
このテスト設定は、米国東部 (バージニア北部) (us-east-1) リージョンで実行するように設計されています。

**ネットワークを設定するには**

1. 組織の管理アカウントにサインインして、[CloudFormation コンソール](https://console.aws.amazon.com/cloudformation)を開きます。

1. **[スタックの作成]** を選択してください。

1. **[With new resources (standard)]** (新しいリソースの使用 (標準)) を選択します。以前に作成したCloudFormationテンプレートファイルをアップロードし、**次へ**を選択します。

1. **PrivateConsoleNetworkForS3** などスタックの名前を入力し、**[次へ]** を選択します。

1. **VPC とサブネット**の場合、希望する IP CIDR 範囲を入力するか、指定されたデフォルト値を使用してください。デフォルト値を使用する場合は、 の既存の VPC リソースと重複していないことを確認しますAWS アカウント。

1. **[スタックの作成]** を選択してください。

1. スタックが作成されたら、**[リソース]** タブを選択して、作成されたリソースを表示します。

1. **[出力]** タブを選択すると、プライベートサブネットと Workspace Simple Directory の値が表示されます。これらの値は、次に示す WorkSpace の作成および設定手順のステップ 4 で使用するため、書き留めておいてください。

次のスクリーンショットは、プライベートサブネットと Workspace Simple Directory の値が表示された **[出力]** タブのビューを示しています。

![プライベートサブネットと Workspace Simple Directory および対応する値。](http://docs.aws.amazon.com/ja_jp/awsconsolehelpdocs/latest/gsg/images/vpce-workspaces-how-to-2-latest.png)


ネットワークが作成できたので、以下の手順に従って WorkSpace を作成してアクセスします。

**WorkSpace を作成するには**

1. [[WorkSpaces コンソール]](https://console.aws.amazon.com/workspaces) を開きます。

1. ナビゲーションペインで **[ディレクトリ]** を選択します。

1. **[ディレクトリ]** ページで、ディレクトリのステータスが **[アクティブ]** であることを確認します。次のスクリーンショットは、アクティブディレクトリを含む **[ディレクトリ]** ページを示しています。  
![[ディレクトリ] ページには、ステータスがアクティブなディレクトリのエントリが表示されます。](http://docs.aws.amazon.com/ja_jp/awsconsolehelpdocs/latest/gsg/images/vpce-workspaces-how-to-3-updated.png)

1. WorkSpaces のディレクトリを使用するには、そのディレクトリを登録する必要があります。ナビゲーションペインで **[WorkSpaces]** を選択し、**[WorkSpaces の作成]** を選択します。

1. **[ディレクトリを選択]** で、前の手順で CloudFormation が作成したディレクトリを選択します。**[アクション]** メニューで、**[登録]** を選択します。

1. サブネット選択については、前の手順のステップ 9 で説明した 2 つのプライベートサブネットを選択します。

1. **[セルフサービス許可を有効化]** を選択し、**[登録]** を選択します。

1. ディレクトリを登録したら、WorkSpace の作成を続行します。登録したディレクトリを選択し、**[次へ]** を選択します。

1. **[ユーザーの作成]** ページで、**[追加ユーザーの作成]** を選択します。名前とE メールアドレスを入力して、WorkSpace を使用できるようにします。WorkSpace のログイン情報がこの E メールアドレスに送信されるときに、E メールアドレスが有効であることを確認します。

1. **[次へ]** をクリックします。

1. **[ユーザーの識別]** ページで、手順 9 で作成したユーザーを選択し、**[次へ]** を選択します。

1. **[バンドルの選択]** ページで、**[Amazon Linux 2 のスタンダード]**、**[次へ]** の順に選択します。

1. 実行モードとユーザーカスタマイズにデフォルト設定を使用し、次に **[ワークスペースを作成]** を選択します。WorkSpace のステータスは `Pending` で始まり、約 20 分以内に `Available` ステータスに移行します。

1. WorkSpace が利用可能になると、手順 9 で指定した E メールアドレスに WorkSpace へのアクセス方法が記載されたメールが届きます。

WorkSpace にサインインした後、AWS Management Console プライベートアクセスを使用してアクセスしていることをテストできます。

**WorkSpace にアクセスするには**

1. 前の手順のステップ 14 で受信した E メールを開きます。

1. E メールに記載されている固有のリンクを選択してプロファイルを設定し、WorkSpaces クライアントをダウンロードします。

1. パスワードを設定します。

1. 任意のクライアントをダウンロードします。

1. クライアントをインストールして起動します。E メールに記載されている登録コードを入力して、**[登録]** を選択します。

1. ステップ 3 で作成した認証情報を使用して Amazon WorkSpaces にサインインします。

**AWS Management Consoleプライベートアクセスのセットアップをテストするには**

1. WorkSpace からブラウザを開きます。次に、[AWS Management Console](https://console.aws.amazon.com/console)に移動し、認証情報を使用してサインインします。
**注記**  
Firefox をブラウザとして使用している場合は、ブラウザの設定で **[DNS over HTTPS を有効にする]** オプションがオフになっていることを確認してください。

1. プライベートアクセスを使用して接続していることを確認できる [Amazon S3 コンソール](https://console.aws.amazon.com/s3)を開きます。AWS Management Console

1. ナビゲーションバーのロックプライベートアイコンを選択すると、使用中の VPC と VPC エンドポイントが表示されます。次のスクリーンショットは、ロックプライベートアイコンの場所と VPC 情報を示しています。  
![ロック/プライベートアイコンの場所とプライベートアクセス情報を示す Amazon S3 AWS Management Consoleコンソール。](http://docs.aws.amazon.com/ja_jp/awsconsolehelpdocs/latest/gsg/images/console-private-access-verify-1.png)