Skema dokumen sesi - AWS Systems Manager

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Skema dokumen sesi

Informasi berikut menjelaskan elemen skema dari dokumen Sesi. AWS Systems Manager Session ManagerMenggunakan dokumen Sesi untuk menentukan jenis sesi yang akan dimulai, seperti sesi standar, sesi penerusan port, atau sesi untuk menjalankan perintah interaktif.

schemaVersion

Versi skema dokumen Sesi. Dokumen Sesi hanya mendukung versi 1.0.

Tipe: String

Wajib: Ya

description

Deskripsi yang Anda tentukan untuk dokumen Sesi. Misalnya, “Dokumen untuk memulai sesi penerusan port denganSession Manager”.

Tipe: String

Wajib: Tidak

sessionType

Tipe sesi dokumen Sesi digunakan untuk membuat.

Tipe: String

Wajib: Ya

Nilai valid: InteractiveCommands | NonInteractiveCommands | Port | Standard_Stream

inputs

Preferensi sesi yang akan digunakan untuk sesi yang dibuat menggunakan dokumen Sesi ini. Elemen ini diperlukan untuk dokumen Sesi yang digunakan untuk membuat sesi Standard_Stream.

Jenis: StringMap

Wajib: Tidak

s3BucketName

Bucket Amazon Simple Storage Service (Amazon S3) yang ingin Anda kirimkan log sesi di akhir sesi Anda.

Tipe: String

Wajib: Tidak

s3KeyPrefix

Prefiks yang digunakan saat mengirim log ke bucket Amazon S3 yang Anda tentukan di input s3BucketName. Untuk informasi selengkapnya tentang menggunakan awalan bersama dengan objek yang disimpan di Amazon S3, lihat Bagaimana cara menggunakan folder di bucket S3? di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Tipe: String

Wajib: Tidak

s3EncryptionEnabled

Jika diatur ke true, bucket Amazon S3 yang Anda tentukan di input s3BucketName harus dienkripsi.

Tipe: Boolean

Wajib: Ya

cloudWatchLogGroupName

Nama grup Amazon CloudWatch Logs (CloudWatch Log) yang ingin Anda kirimi log sesi di akhir sesi.

Tipe: String

Wajib: Tidak

cloudWatchEncryptionEnabled

Jika diatur ke true, grup log yang Anda tentukan dalam input cloudWatchLogGroupName harus dienkripsi.

Tipe: Boolean

Wajib: Ya

cloudWatchStreamingEnabled

Jika diatur ke true, aliran terus-menerus sesi data log dikirim ke grup log yang Anda tentukan di input cloudWatchLogGroupName. Jika diatur ke false, log sesi dikirim ke grup log yang Anda tentukan di input cloudWatchLogGroupName di akhir sesi Anda.

Tipe: Boolean

Wajib: Ya

kmsKeyId

ID yang ingin AWS KMS key Anda gunakan untuk mengenkripsi data lebih lanjut antara mesin klien lokal Anda dan node terkelola Amazon Elastic Compute Cloud (Amazon EC2) yang Anda sambungkan.

Tipe: String

Wajib: Tidak

runAsEnabled

Jika disetel ketrue, Anda harus menentukan akun pengguna yang ada di node terkelola yang akan Anda sambungkan di runAsDefaultUser input. Jika tidak, sesi akan gagal untuk memulai. Secara default, sesi dimulai menggunakan ssm-user akun yang dibuat oleh AWS Systems Manager SSM Agent. Fitur Run As hanya didukung untuk menghubungkan ke node Linux terkelola.

Jenis: Boolean

Wajib: Ya

runAsDefaultUser

Nama akun pengguna untuk memulai sesi dengan node Linux terkelola saat runAsEnabled input disetel ketrue. Akun pengguna yang Anda tentukan untuk input ini harus ada pada node terkelola yang akan Anda sambungkan; jika tidak, sesi akan gagal dimulai.

Tipe: String

Wajib: Tidak

idleSessionTimeout

Jumlah waktu tidak aktif yang ingin Anda izinkan sebelum sesi berakhir. Input ini diukur dalam hitungan menit.

Tipe: String

Nilai valid: 1–60

Wajib: Tidak

maxSessionDuration

Jumlah maksimum waktu yang ingin Anda izinkan sebelum sesi berakhir. Input ini diukur dalam hitungan menit.

Jenis: String

Nilai yang valid: 1-1440

Wajib: Tidak

shellProfile

Preferensi yang Anda tentukan per sistem operasi untuk diterapkan dalam sesi seperti preferensi shell, variabel lingkungan, direktori kerja, dan menjalankan beberapa perintah ketika sesi dimulai.

Jenis: StringMap

Wajib: Tidak

windows

Preferensi shell, variabel lingkungan, direktori kerja, dan perintah yang Anda tentukan untuk sesi pada node Windows terkelola.

Tipe: String

Wajib: Tidak

linux

Preferensi shell, variabel lingkungan, direktori kerja, dan perintah yang Anda tentukan untuk sesi pada node Linux terkelola.

Tipe: String

Wajib: Tidak

parameters

Objek yang menentukan parameter yang diterima dokumen. Untuk informasi lebih lanjut tentang menentukan parameter dokumen, lihat parameter di Elemen data tingkat atas. Untuk parameter yang sering Anda referensikan, kami sarankan Anda menyimpan parameter tersebut di Systems Manager Parameter Store dan kemudian mereferensikannya. Anda dapat referensi String dan StringList Parameter Store parameter di bagian dokumen ini. Anda tidak dapat mereferensikan SecureString Parameter Store parameter di bagian dokumen ini. Anda dapat mereferensikan Parameter Store parameter menggunakan format berikut.

{{ssm:parameter-name}}

Untuk informasi selengkapnya tentang Parameter Store, lihat AWS Systems Manager Parameter Store.

Jenis: StringMap

Wajib: Tidak

properties

Objek yang nilainya Anda tentukan yang digunakan dalam operasi API StartSession.

Untuk dokumen Sesi yang digunakan untuk sesi InteractiveCommands, objek properti termasuk perintah untuk berjalan pada sistem operasi yang Anda tentukan. Anda juga dapat menentukan apakah perintah dijalankan seperti root menggunakan properti runAsElevated boolean. Untuk informasi selengkapnya, lihat Membatasi akses ke perintah dalam sesi.

Untuk dokumen Sesi yang digunakan untuk sesi Port, objek properti berisi nomor port tempat lalu lintas harus diarahkan. Sebagai contoh, lihat contoh dokumen Sesi tipe Port nanti di topik ini.

Jenis: StringMap

Wajib: Tidak

Contoh dokumen sesi tipe Standard_Stream

YAML
---
schemaVersion: '1.0'
description: Document to hold regional settings for Session Manager
sessionType: Standard_Stream
inputs:
s3BucketName: ''
s3KeyPrefix: ''
s3EncryptionEnabled: true
cloudWatchLogGroupName: ''
cloudWatchEncryptionEnabled: true
cloudWatchStreamingEnabled: true
kmsKeyId: ''
runAsEnabled: true
runAsDefaultUser: ''
idleSessionTimeout: '20'
maxSessionDuration: '60'
shellProfile:
windows: ''
linux: ''
JSON
{ "schemaVersion": "1.0", "description": "Document to hold regional settings for Session Manager", "sessionType": "Standard_Stream", "inputs": { "s3BucketName": "", "s3KeyPrefix": "", "s3EncryptionEnabled": true, "cloudWatchLogGroupName": "", "cloudWatchEncryptionEnabled": true, "cloudWatchStreamingEnabled": true, "kmsKeyId": "", "runAsEnabled": true, "runAsDefaultUser": "", "idleSessionTimeout": "20", "maxSessionDuration": "60", "shellProfile": { "windows": "date", "linux": "pwd;ls" } } }

Contoh dokumen sesi tipe InteractiveCommands

YAML
--- schemaVersion: '1.0' description: Document to view a log file on a Linux instance sessionType: InteractiveCommands
parameters: logpath: type: String description: The log file path to read. default: "/var/log/amazon/ssm/amazon-ssm-agent.log" allowedPattern: "^[a-zA-Z0-9-_/]+(.log)$"
properties: linux: commands: "tail -f {{ logpath }}" runAsElevated: true
JSON
{ "schemaVersion": "1.0", "description": "Document to view a log file on a Linux instance", "sessionType": "InteractiveCommands", "parameters": { "logpath": { "type": "String", "description": "The log file path to read.", "default": "/var/log/amazon/ssm/amazon-ssm-agent.log", "allowedPattern": "^[a-zA-Z0-9-_/]+(.log)$" } }, "properties": { "linux": { "commands": "tail -f {{ logpath }}", "runAsElevated": true } } }

Contoh dokumen sesi tipe Port

YAML
--- schemaVersion: '1.0' description: Document to open given port connection over Session Manager sessionType: Port parameters: paramExample: type: string description: document parameter
properties: portNumber: anyPortNumber
JSON
{ "schemaVersion": "1.0", "description": "Document to open given port connection over Session Manager", "sessionType": "Port", "parameters": { "paramExample": { "type": "string", "description": "document parameter" } }, "properties": { "portNumber": "anyPortNumber" } }

Contoh dokumen sesi dengan karakter khusus

YAML
--- schemaVersion: '1.0' description: Example document with quotation marks sessionType: InteractiveCommands parameters: Test: type: String description: Test Input maxChars: 32 properties: windows: commands: | $Test = '{{ Test }}' $myVariable = \"Computer name is $env:COMPUTERNAME\" Write-Host "Test variable: $myVariable`.`nInput parameter: $Test" runAsElevated: false
JSON
{ "schemaVersion":"1.0", "description":"Test document with quotation marks", "sessionType":"InteractiveCommands", "parameters":{ "Test":{ "type":"String", "description":"Test Input", "maxChars":32 } }, "properties":{ "windows":{ "commands":[ "$Test = '{{ Test }}'", "$myVariable = \\\"Computer name is $env:COMPUTERNAME\\\"", "Write-Host \"Test variable: $myVariable`.`nInput parameter: $Test\"" ], "runAsElevated":false } } }