続き!!
ここめっちゃ時間かかります!!(約40分)
先にスタックを作成します。
パラメータ
PJPrefixのみをhandsonにします
スタックの作成を押すと約40分ぐらいで完成します。
このスタックが完成しないとFSxもWorkSpacesも作ることができません。
皆さんはまだですが、こちらに作成していた物をご用意しました。
その間にソースの解説
MicorsoftADを使用する際にDHCPのオプションをセットする必要があります。
Fn: Selectはリストの項目を呼び出すことができます
ドキュメント
ソース
AWSTemplateFormatVersion: "2010-09-09"
Parameters:
PJPrefix:
Description: Enter a prefix of this system.
Type: String
Default: "test"
AllowedPattern: "[a-zA-Z][a-zA-Z0-9][ -~]*"
ConstraintDescription: must begin with a letter and contain only alphanumeric characters.
DomainName:
Type: String
AllowedPattern: "^^(?!\\-)[\\-0-9A-Za-z]{1,63}(?<!\\-)(?:\\.(?!\\-)[\\-0-9A-Za-z]{1,63}(?<!\\-))*$"
ConstraintDescription: DomainName format is not correct.
Default: "sample.example.com"
DomainShortName:
Type: String
MaxLength: '15'
Default: "sample"
AllowedPattern: "[a-zA-Z0-9]*"
ConstraintDescription: must use only alphanumeric characters. Max characters 15.
Password:
Type: String
MinLength: 8
MaxLength: 64
Default: aaaaaaaS!09-@
AllowedPattern: ((?=.*\d)(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])|(?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])|(?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s]))^(?!.*admin).*$
ConstraintDescription: Password format is not correct.
# FYI : パスワードポリシーは 8~64 文字で指定し、「admin」という語は含めず、英小文字、英大文字、数字、特殊文字の4つのカテゴリのうちの3つを含める必要があります
# https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/user-pool-settings-policies.html
# https://docs.aws.amazon.com/ja_jp/directoryservice/latest/admin-guide/directoryservice-admin-guide.pdf
# https://www.it-swarm.dev/ja/regex/4%E3%81%A4%E3%81%AE%E3%83%AB%E3%83%BC%E3%83%AB%E3%81%AE%E3%81%86%E3%81%A13%E3%81%A4%E3%81%AB%E4%B8%80%E8%87%B4%E3%81%99%E3%82%8B%E8%A4%87%E9%9B%91%E3%81%AA%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%E3%82%92%E5%BC%B7%E5%88%B6%E3%81%99%E3%82%8B%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE/969166602/
Resources:
DirectoryServiceMicrosoftAD:
Type: "AWS::DirectoryService::MicrosoftAD"
Properties:
Name: !Ref DomainName
ShortName: !Ref DomainShortName
Edition: "Standard"
Password: !Ref Password
EnableSso: false
VpcSettings:
VpcId: { "Fn::ImportValue": !Sub "${PJPrefix}-vpc" }
SubnetIds:
- { "Fn::ImportValue": !Sub "${PJPrefix}-private-subnet-a" }
- { "Fn::ImportValue": !Sub "${PJPrefix}-private-subnet-c" }
EC2DHCPOptions:
Type: "AWS::EC2::DHCPOptions"
Properties:
DomainName: !Ref DomainName
DomainNameServers:
- !Select ['0', !GetAtt 'DirectoryServiceMicrosoftAD.DnsIpAddresses']
- !Select ['1', !GetAtt 'DirectoryServiceMicrosoftAD.DnsIpAddresses']
Tags:
-
Key: "Name"
Value: !Ref DomainName
EC2VPCDHCPOptionsAssociation:
Type: "AWS::EC2::VPCDHCPOptionsAssociation"
Properties:
DhcpOptionsId: !Ref EC2DHCPOptions
VpcId: { "Fn::ImportValue": !Sub "${PJPrefix}-vpc" }
Outputs:
myDirectory:
Description: The WindowsAD
Value: !Ref DirectoryServiceMicrosoftAD
Export:
Name: !Sub "${PJPrefix}-windows-ad"
これだけしか書いていません。
ここではDirectoryService:MicrosiftADについて解説できればと思います。
AWS Directory Serviceとは
ここでは時間があるのでドキュメントを一緒に読んでいきましょう!!
ドキュメント
ここの詳細は現在イベントを企画中です。