Amazon Web Services ブログ

AWS Service Catalog Connector for ServiceNow を使用してセルフサービス Amazon WorkSpaces を有効化する方法

はじめに

Amazon WorkSpaces は、AWS 上で実行される、安全なフルマネージド型「サービスとしてのデスクトップ (DaaS)」ソリューションです。AWS には、デスクトップをデプロイするための選択肢が複数あります。組織がこのプロセスを既存のオートメーションツールや情報技術サービス管理 (ITSM、Information Technology Service Management) ツールに統合する際に、支援が必要になる場合があります。多くのお客様が、Amazon WorkSpaces プロセスに承認プロセスと追跡メカニズムを導入したいと考えています。先日リリースされた AWS Service Catalog Connector for ServiceNow を使用することで、この統合をはるかに簡単に行えるようになりました。

このブログ記事では、AWS Service Catalog をセットアップし、AWS Service Catalog Connector for ServiceNow を使用して Amazon WorkSpaces をデプロイする方法をご紹介します。

次の大まかなアーキテクチャ図は、ソリューションのコアコンポーネントを示しています。
図 – ServiceNow ユーザーが AWS のサービスを閲覧およびリクエストします。Catalog 管理者が AWS のサービスの調達、公開、ガバナンスを行います。オペレーターが AWS のサービスをモニタリングおよび管理します。
次の図は、エンドユーザーインタラクションの概要図です。

図 – AWS Service Catalog ポートフォリオ、ServiceNow からの API コール、エンドユーザーインタラクションを示したフロー

ソリューションのセットアップ手順は、3 つの主要カテゴリに分かれます。

  1. AWS を設定 (して、Service Catalog 製品として Amazon Workspace を使い Workspace をセットアップ)
  2. ServiceNow をインストールおよび設定 (して、AWS と ServiceNow との統合をセットアップ)
  3. Connector for ServiceNow を検証 (して、ServiceNow ポータルから Amazon WorkSpace を起動して接続し、ソリューションをテスト)

図 – ソリューションのデプロイ手順 (1. AWS を設定、2. ServiceNow をインストールおよび設定、3. ServiceNow Connector を検証)

背景

AWS Service Catalog を使用すると、一般的にデプロイされる AWS のサービスとプロビジョニングされたソフトウェア製品を一元管理できます。ユーザーが必要な承認済みの AWS のサービスのみを迅速にデプロイできるようにすると同時に、組織が一貫したガバナンスとコンプライアンスの要件を達成できるようにします。

ServiceNow は、日々のワークライフを構成するアクティビティ、タスク、プロセスにサービス指向のレンズを配置して、モダンな作業環境を実現するエンタープライズサービス管理プラットフォームです。Service Catalog は、エンドユーザーがリクエスト履行の承認とワークフローに基づいて IT サービスを注文できる、セルフサービスアプリケーションです。

はじめに

このソリューションをデプロイするには、次の前提条件をクリアしている必要があります。

AWS の前提条件

  • 管理者アクセス権限を持つ AWS アカウント

AWS Service Catalog と ServiceNow との統合の前提条件

ディレクトリをセットアップする

Amazon WorkSpaces では、WorkSpaces とユーザーの情報を保存、管理するためにディレクトリを使用する必要があります。ディレクトリの詳細については、「Amazon WorkSpaces のディレクトリの管理」をご覧ください。ディレクトリ (Simple AD、Microsoft AD、AD Connector のいずれか) を既に AWS にデプロイ済みである場合は、このセクションはスキップできます。まだデプロイしていない場合は、付録 A に記載の詳細な手順に従って、WorkSpaces ユーザーのユーザーアカウントを保存するためのディレクトリをセットアップしてください。

AWS CloudFormation テンプレートをセットアップする

このセクションでは、ユーザーに代わって Amazon WorkSpaces をデプロイする CloudFormation テンプレートをセットアップします。このステップの詳細については、AWS Service Catalog 管理者ガイドをご覧ください。

    1. テキストエディタまたはお好きなコードエディタを開き、次のテキストをコピーして、新規ファイルに貼り付けます。
      
      AWSTemplateFormatVersion: '2010-09-09'
      Description: >
        Amazon WorkSpaces Deployment Template. This template will deploy the resources needed to
        deploy a single Amazon WorkSpaces desktop.
      Mappings:
        WSTypeMap:
          Value-Win10-Desktop:
            BundleId: wsb-bh8rsxt14
            DirectoryId: d-XXXXXXXXXX
          Standard-Win10-Desktop:
            BundleId: wsb-8vbljg4r6
            DirectoryId: d-XXXXXXXXXX
          Performance-Win10-Desktop:
            BundleId: wsb-gm4d5tx2v
            DirectoryId: d-XXXXXXXXXX
      
      Parameters:
        UserName:
          Description: Your Windows login ID
          Type: String
        WorkstationType:
          AllowedValues:
            - Value-Win10-Desktop
            - Standard-Win10-Desktop
            - Performance-Win10-Desktop
          Description: Select the type of workstation
          Default: Value-Win10-Desktop
          Type: String
      
      Resources:
        MyWorkSpace:
          Type: AWS::WorkSpaces::Workspace
          Properties:
            BundleId: !FindInMap
              - WSTypeMap
              - !Ref 'WorkstationType'
              - BundleId
            DirectoryId: !FindInMap
              - WSTypeMap
              - !Ref 'WorkstationType'
              - DirectoryId
            UserName: !Ref 'UserName'
      
      Outputs:
        WorkSpaceID:
          Description: ID of the newly created WorkSpace
          Value: !Ref 'MyWorkSpace'
        UserName:
          Description: The username for WorkSpace
          Value: !Ref 'UserName'
        LogonURL:
          Description: Use this URL to download client software used to connect to your cloud desktop
          Value: 'https://clients.amazonworkspaces.com/'
      
      Metadata:
        Comments: Template to deploy an Amazon WorkSpace
        LastUpdated: '2018-04-26'
        Version: 1.0.0
        AWS::CloudFormation::Interface:
          ParameterGroups:
          - Label:
              default: Setup
            Parameters:
              - UserName
              - WorkstationType
          ParameterLabels:
            UserName:
              default: User Name
            WorkstationType:
              default: Workstation Type
      
    2. 上記 CloudFormation テンプレートの Mappings セクションで、「d-XXXXXXXXXX」というテキストが 3 回出てきます。これらをすべて、ディレクトリのセットアップ時 (付録 A) にキャプチャしたディレクトリ ID に置き換えてください。
    3. deploy-workspaces.template という名前でファイルをコンピュータに保存し、保存場所をメモしておきます。

    新しいポートフォリオをセットアップする

    ユーザーに製品を提供するには、まずそれらの製品のポートフォリオを作成します。ポートフォリオを作成するには、AWS Service Catalog のドキュメントの詳細な手順に従ってください。
    AWS Service Catalog コンソールの [ポートフォリオの作成] ページで、次の値を使用してポートフォリオを作成します。

    • [ポートフォリオ名] – End-User-Compute
    • [説明] – デスクトップなどの EUC 製品のポートフォリオ
    • [所有者] – IT (it@example.com)

    新しい製品をセットアップする

    ポートフォリオを作成したら、AWS Service Catalog ドキュメントに記載の詳細な手順に従い、新しい製品を追加します。
    AWS Service Catalog コンソールの [新しい製品のアップロード] ページで、次の値を使用して製品を作成します。

    • [製品名] – Virtual Windows Desktop
    • [説明] – Amazon WorkSpaces を利用した仮想 Windows デスクトップ
    • 提供元 – IT
    • ベンダー (オプション) – アマゾン ウェブ サービス

    [サポート詳細の入力] ページで次のように入力し、[次へ] を選択します。

    • [連絡先 E メール] – ITSupport@example.com
    • [サポートリンク] – IT チームのお問い合わせページまたはサポートページへのリンク (例: https://thinkwithwp.com/contact-us/)
    • [サポートの説明] – さらなるサポートについては IT 部門にお問い合わせください

    [バージョンの詳細] ページで、[テンプレートファイルのアップロード] を選択して [ファイルの選択] を選択し、セットアップおよび保存した deploy-workspaces.template CloudFormation テンプレートファイルを指定して、[次へ] を選択します。

    • [バージョンタイトル] – 1.0.0
    • [説明] – 初期バージョン

    [レビュー] ページで、[作成] を選択します。

    スクリーンショット – [新しい製品のアップロード] [確認] ページ

     

    AWS Service Catalog を有効化して Amazon WorkSpaces を起動する

    AWS Service Catalog を有効化して Amazon WorkSpaces を起動するには、追加のセキュリティ権限を承認する必要があります。これには、追加の AWS Identity and Access Management (IAM) アクセス許可と起動制約を使用します。起動制約により、エンドユーザーが製品を起動する際に AWS Service Catalog が引き受ける IAM ロールが指定されます。

    IAM アクセス許可を設定する

    このステップでは、IAM ポリシーをセットアップして既存のロールを変更します。このセクションを開始する前に、前述した統合の前提条件の手順を完了させておいてください。

    IAM ポリシーを作成する

    このステップでは、次のアクセス許可に一致する IAM ポリシー「SCWorkSpacesLaunchPermissions」を作成します。IAM ポリシーを作成するには、IAM ユーザーガイドに記載の詳細な手順を実施します。

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": "workspaces:*",
                "Resource": "*"
            }
        ]
    }

    IAM コンソールの [ポリシーの確認] ページで、次のようにフォームに入力します。

    1. [名前] – SCWorkSpacesLaunchPermissions
    2. [説明] – WorkSpaces の起動を許可するポリシー

    IAM ロールを変更する

    既存の SCConnectLaunch ロールを変更し、SCWorkSpacesLaunchPermissions ポリシーをアタッチします。詳細な手順については、付録 B をご覧ください。

    起動制約

    起動制約により、エンドユーザーが製品を起動する際に AWS Service Catalog が引き受ける IAM ロールが指定されます。今回の新しい Virtual Windows Desktop 製品を起動する前に、「SCConnectLaunch」起動制約を割り当てます。詳細な手順については、付録 C をご覧ください。

    検証する

    新しい製品が ServiceNow に表示され、ServiceNow Service Catalog から注文できることを検証する準備が整いました。

    1. エンドユーザー (例: Abel Tuter) として ServiceNow インスタンスにログインします。管理者として開発者インスタンスにログインしている場合、画面右上のユーザーメニューで偽装ユーザーを選択すると、エンドユーザーとしてログインできます。
    2. ナビゲーションフィルターに「Service Catalog」と入力し、[Service Catalog] を選択します。
    3. [AWS Service Catalog] を選択します。
      AWS Service Catalog の ServiceNow Service Catalog 製品
    4. 今回の AWS Service Catalog 製品が表示されているはずです。
      スクリーンショット – Virtual Windows Desktop 製品が表示されている AWS Service Catalog の ServiceNow Service Catalog 製品ビュー
    5. [Virtual Windows Desktop] を選択します。
    6. 注文フォームに次のように入力します。
      1. [製品名] – 「MyCloudDesktop」など、わかりやすい名前を入力します。
      2. [ワークステーションタイプ] – [バリュー]、[スタンダード]、[パフォーマンス] のいずれかからワークステーションのタイプを選択します。CloudFormation テンプレートを変更してさまざまなバンドル名を含めていた場合は、ここに表示されます。
      3. [ユーザー名] – ユーザー作成時 (付録 A) に指定した Windows ユーザー名を入力します。ここで入力したユーザー ID を使用して WorkSpace をプロビジョンすることができない場合、Active Directory 管理者に SAMAccountName を問い合わせてください。スクリーンショット – Virtual Windows Desktop の注文画面
    7. [今すぐ注文] を選択して ServiceNow リクエストを送信します。以下のような注文ステータスが表示されます。
      スクリーンショット – 注文送信後に表示される注文ステータスフォーム
    8. 左のメニューで [マイアセット] を選択してリクエストを表示します。[リクエストしたアセット] テーブルに設定アイテムフィールドが表示されない場合は、付録 D の手順を実施してください。
    9. プロビジョンされた製品の出力パラメータを表示するには、Virtual Windows Desktop のリクエストを見つけ、「MyCloudDesktop」設定アイテムリンクを選択します。このクラウドデスクトップとのインタラクションを開始するのに使う AWS CloudFormation 出力パラメータの出力を以下に示します。
      スクリーンショット – MyCloudDesktop の ServiceNow AWS Service Catalog 製品ページ、[出力] タブ
    10. Amazon WorkSpaces のプロビジョニングが完了すると、ユーザープロファイルを完成させて Amazon WorkSpace インスタンスにログインする方法が詳しく記載された E メールが AWS から届きます。まずはユーザープロファイルを完成させます。
      スクリーンショット – AWS から届く、ログイン詳細が記載された E メールメッセージのサンプル
      ユーザープロファイルを完成させると、以下のスクリーンショットのようにして WorkSpace にログインできます。まずはプラットフォーム用の WorkSpaces クライアントをダウンロードします。
      スクリーンショット – Amazon WorkSpaces クライアントログイン画面
    11. WorkSpaces クライアントをインストールしたら、ユーザー名および関連付けられた認証情報でログインします。
      スクリーンショット – Amazon WorkSpaces デスクトップのサンプルビュー
    12. 任意で、AWS マネジメントコンソールにログオンして Amazon WorkSpace の情報を検証することもできます。

     

    まとめ

    本記事では、ServiceNow 経由で Amazon WorkSpaces をデプロイするための全自動セルフサービスクラウドデスクトップソリューションを、AWS Service Catalog を使用して作成する方法についてご紹介しました。この方法を用いることで、ワークフローに、および AWS リソースのプロビジョニングと追跡に、ServiceNow インスタンスを使用することができます。

    中央クラウド管理チームは、このアプローチを用いて実証済みのベストプラクティスベースのソフトウェアインフラストラクチャ設計図を選定し、エンタープライズ全体に提供することで、簡単かつセルフサービスのソリューションを Service Catalog 製品として導入可能です。

    著者について

    Joe Wozniak の写真Joe Wozniak は、ニューヨークを拠点とする、AWS プロフェッショナルサービスのクラウドインフラストラクチャアーキテクトです。Joe は、お客様の日々を楽にするオートメーションソリューションの設計と実装を支援しています。余暇には、劇場での映画鑑賞、スキー、電子機器いじり、家族との時間を楽しんでいます。

     

     

     

    Sanjay Garje の写真Sanjay Garje は、サンフランシスコを拠点とする、AWS Service Catalog のシニアテクニカル事業開発マネージャーです。Sanjay は熱心なテクノロジストで、ビジネスとテクノロジーの成果を変革する方法を示してお客様の AWS クラウドジャーニーを支援することに誇りを持っています。余暇には、ランニング、新しい物事の勉強、クラウドテクノロジーの手ほどき、行ったことのない場所への家族旅行を楽しんでいます。

     

     

     

     

    付録

    付録 A – ディレクトリを作成する

    テストまたは PoC (概念実証) のコンテキストで、ディレクトリのセットアップが済んでいない場合には、Simple AD のデプロイをお勧めします。Simple AD は、Amazon WorkSpaces のデプロイに向けて環境を迅速に準備できる、コスト効率の高いソリューションです。Simple AD ディレクトリを作成するには、「Simple AD ディレクトリを作成する」に記載の手順を実施します。

    ユーザーを追加する

    ServiceNow 経由で WorkSpaces をデプロイする前に、WorkSpaces ユーザーのユーザーアカウントをディレクトリにセットアップする必要があります。

    注: AD Connector をセットアップ済みの場合、ユーザーは既にディレクトリに存在しているため、このステップはスキップしてください。

    Simple AD ディレクトリにユーザーを追加する

    1. Amazon WorkSpaces コンソールを開きます。コンソールの右上で正しいリージョンが選択されていることを確認します。
    2. [WorkSpaces の起動] を選択します。
    3. リストからディレクトリを選択し、[次のステップ] を選択します。
    4. 最初に追加するユーザーのユーザー名、名、姓、有効な E メールアドレスを入力します。

      注: 無効な E メールアドレスを指定した場合、ユーザーはログインできません。

      スクリーンショット – ステップ 4 – ユーザー名、名、姓、E メールアドレス入力画面

    5. 2 名以上のユーザーを追加する場合は、[+ 追加ユーザーの作成] を選択します。フォームに行が追加されます。
    6. [ユーザーの作成] を選択します。
    7. フォーム下部の [キャンセル] を選択します。この時点では、これらのユーザーに Amazon WorkSpaces を割り当てることはせず、アカウントを作成するだけにします。

    WorkSpaces ディレクトリ ID を取得する

    セットアップした各ディレクトリは、一意のディレクトリ ID でプロビジョンされます。Amazon WorkSpaces デプロイのこれらのディレクトリ ID から、少なくとも 1 つを取得する必要があります。このディレクトリ ID を、次のセクションで、CloudFormation テンプレートに対して WorkSpaces をデプロイするディレクトリを指定するのに使用します。

    1. Amazon WorkSpaces コンソールを開きます。コンソールの右上で正しいリージョンが選択されていることを確認します。
    2. 左のナビゲーションパネルで [ディレクトリ] を選択します。
    3. 当該ディレクトリの横のチェックボックスをオンにして [ディレクトリ ID] のテキスト (d-XXXXXXXXXX) をハイライトし、クリップボードにコピーします。
      スクリーンショット – [ディレクトリ ID] 列と[ディレクトリ名] 列を表示しているディレクトリ ID ビュー
      コピーした ID を、後のステップで簡単に参照できるところに貼り付けます。

    付録 B – IAM ロールを変更する

    1. IAM コンソールのロールのページを開きます。
    2. リストから SCConnectLaunch ロールを見つけて、またはロール名を検索ボックスに入力して、[ロール名] 列に表示されている当該ロールを選択します。
    3. [ポリシーのアタッチ] を選択します。
    4. 検索ボックスに SCWorkSpacesLaunchPermissions と入力してポリシーを見つけます。
    5. 最上列のチェックボックスをオンにしてそのポリシーを割り当てます。
    6. [ポリシーのアタッチ] を選択します。
    7. [ロールの概要] 画面で、[ロール ARN] フィールドの横の [コピー] アイコンを選択します。これにより ARN がクリップボードにコピーされます。
    8. この ARN はメモ帳などに貼り付けておいてください。次のセクションで使用します。

    付録 C – 起動制約を追加する

    1. AWS Service Catalog コンソールを開きます。
    2. 先ほど作成した End-User-Compute ポートフォリオを開きます。
    3. [制約] を展開します。
    4. [制約の追加] リンクを選択します。
    5. 次のダイアログボックスが表示されます。
      1. [製品] – [Virtual Windows Desktop]
      2. [制約タイプ] – [起動]
        スクリーンショット – [製品とタイプの選択] ウィンドウ
    6. [続行] を選択します。
    7. IAM ロールと説明を入力するための画面が表示されます。
      1. [IAM ロール] – 2 つのボックスがあります。2 つ目のボックスに、付録 B でセットアップした SCConnectLaunch ロール ARN を貼り付けます。
    8. [説明] – WorkSpaces の起動のみ可能
      スクリーンショット – 起動制約の IAM ロールと説明を指定する画面
    9. [送信] を選択します。

     

    付録 D – ServiceNow の「マイアセットリクエスト」テーブルに [設定アイテム] フィールドを追加する

    製品を表示するには、次のように、リストビューをパーソナライズして、関連する設定アイテムを表示します。

    • アセットリクエストのテーブルのヘッダー行で [設定] 歯車アイコンを選択します。
    • [設定アイテム (configuration_item)] を選択し、[>] ボタンをクリックしてビューに追加します。上矢印ボタンを使って [設定アイテム] を [リクエスト] の上に移動します。スクリーンショット – ServiceNow [リスト列のパーソナライズ] ダイアログボックス

    このステップにより、[設定アイテム] タブが [マイアセットリクエスト] テーブルに表示されます。