1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AWS Workspacesをpythonで追加する。

Last updated at Posted at 2020-09-03

リモートワークでAWSのworkspacesを使う企業が増えてきていますが、workspacesのユーザを作るのをコンソールからだと面倒ですよね?
あまりAPI経由でやったという記事がなかったので参考までにのせます。今回はpythonで実施していますが、AWS cliからでも簡単にできると思います。

前提

以下の作業が完了していること

  • EC2の立ち上げ および python3,boto3のインストール
  • Simple ADの作成
  • WorkDocsの作成

#手順

  1. EC2にRoleを付与
    注意したいのはここでユーザを作るのはworkdocsを使用するみたいです。
    workdocsとworkspacesの2つをroleに追加しましょう。
    role.png

  2. ADにユーザを追加
    pythonでADにユーザ追加します。1.で述べたようにworkdocs経由です。

import boto3
client = boto3.client('workdocs',region_name='ap-northeast-1')
client.create_user(
    OrganizationId='d-XXXXXXXX', //ADのディレクトリIDを記載
    Username='kani',
    EmailAddress='XXXXXX@gmail.com',
    GivenName='ABCD',
    Surname='EFGH',
    Password='tesT1234',
)

うまくいかない場合はadのworkspaceが有効か確認してください。
ad.png

  1. workspaceを追加
    あとは追加するだけです。
import boto3
client = boto3.client('workspaces',region_name='ap-northeast-1')

response = client.create_workspaces(
    Workspaces=[
        {
            'DirectoryId': 'd-XXXXXXXX', //ADのディレクトリIDを記載します
            'UserName': 'kani',      //2のUsernameとあわせます
            'BundleId': 'wsb-bh8rsxt14', //追加したいworkspaceのバンドルIDを記載します
            'UserVolumeEncryptionEnabled': False,
            'RootVolumeEncryptionEnabled': False,
            'WorkspaceProperties': {
                'RunningMode': 'AUTO_STOP',
                'RunningModeAutoStopTimeoutInMinutes': 60,
                'RootVolumeSizeGib': 80,
                'UserVolumeSizeGib': 10,
                'ComputeTypeName': 'VALUE'
            },

        },
    ]
)  

以上です。workdocs経由という点に気づかなくて意外に苦戦してしまいました。
よかったら参考にしてください。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?