Uso compartido de documentos de SSM - AWS Systems Manager

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso compartido de documentos de SSM

Puede compartir documentos AWS Systems Manager (SSM) de forma privada o pública con las cuentas del mismo Región de AWS. Para compartir un documento de forma privada, modifique los permisos del documento y permita que personas específicas obtengan acceso a él conforme a sus ID de Cuenta de AWS . Para compartir un documento de SSM de forma pública, modifique los permisos del documento y especifique All. Los documentos no se pueden compartir simultáneamente de forma pública y privada.

aviso

Utilice solo documentos de SSM compartidos procedentes de fuentes de confianza. Cuando utilice cualquier documento compartido, analice detenidamente el contenido del documento antes de utilizarlo para poder comprender la forma en que este cambiará la configuración de la instancia. Para obtener más información sobre las prácticas recomendadas para documentos compartidos, consulte Prácticas recomendadas para documentos de SSM compartidos.

Limitaciones

Cuando empiece a trabajar con documentos de SSM, debe tener en cuenta las siguientes limitaciones.

  • Solo el propietario puede compartir un documento.

  • Debe dejar de compartir un documento para poder eliminarlo. Para obtener más información, consulte Modificar los permisos para un documento de SSM compartido.

  • Puedes compartir un documento con un máximo de 1000 Cuentas de AWS. Puede solicitar un aumento de este límite en el Centro de AWS Support. En Tipo de límite, elija EC2 Systems Manager y describa el motivo de la solicitud.

  • Puede compartir públicamente un máximo de cinco documentos de SSM. Puede solicitar un aumento de este límite en el Centro de AWS Support. En Tipo de límite, elija EC2 Systems Manager y describa el motivo de la solicitud.

  • Los documentos Región de AWS solo se pueden compartir con otras cuentas en la misma cuenta. No se admite el uso compartido entre regiones.

Para obtener más información acerca de las Service Quotas de Systems Manager, consulte Service Quotas de AWS Systems Manager.

Prácticas recomendadas para documentos de SSM compartidos

Revise las siguientes directrices antes de compartir o utilizar un documento compartido.

Eliminar información confidencial

Revisa tu documento AWS Systems Manager (SSM) detenidamente y elimina cualquier información confidencial. Por ejemplo, comprueba que el documento no incluya tus AWS credenciales. Si comparte un documento con personas específicas, esos usuarios podrán ver la información del documento. Si comparte un documento públicamente, cualquiera podrá ver la información del documento.

Bloquear el uso compartido público de documentos

A menos que su caso de uso requiera que active el uso compartido público, le recomendamos que active la configuración de bloqueo de uso compartido público para sus documentos de Systems Manager en la sección Preferencias en la consola de documentos de Systems Manager.

Restringir las acciones de Run Command mediante una política de confianza de IAM

Cree una política restrictiva AWS Identity and Access Management (IAM) para los usuarios que tendrán acceso al documento. La política de IAM determina qué documentos SSM puede ver un usuario en la consola de Amazon Elastic Compute Cloud (Amazon EC2) o ListDocuments llamando mediante () o. AWS Command Line Interface AWS CLI AWS Tools for Windows PowerShell La política también restringe las acciones que puede realizar el usuario con el documento de SSM. Puede crear una política restrictiva, de modo que el usuario solo pueda utilizar documentos específicos. Para obtener más información, consulte Ejemplos de políticas administradas por el cliente.

Actuar con precaución a la hora de utilizar documentos de SSM compartidos

Revise el contenido de cada documento compartido, en particular los documentos públicos, para comprender los comandos que se ejecutarán en sus instancias. Un documento podría tener repercusiones negativas después de haberlo ejecutado, ya sea de forma intencionada o no. Si el documento hace referencia a una red externa, revise la fuente externa antes de utilizar el documento.

Enviar comandos mediante el hash del documento

Al compartir un documento, el sistema crea el hash Sha-256 y lo asigna al documento. El sistema también guarda una instantánea del contenido del documento. Al enviar un comando utilizando un documento compartido, puede especificar el hash en el comando para asegurarse de que las siguientes condiciones sean verdaderas:

  • Está ejecutando un comando desde el documento de Systems Manager correcto

  • El contenido del documento no ha cambiado desde que se compartió con usted.

Si el hash no coincide con el documento especificado o si el contenido del documento compartido ha cambiado, el comando devuelve la excepción InvalidDocument. El hash no puede verificar el contenido de documentos de ubicaciones externas.

Bloquear el uso compartido público de documentos de SSM

A menos que su caso de uso requiera que esté activada la compartición pública, le recomendamos activar la configuración de bloquear la compartición pública de sus documentos AWS Systems Manager (SSM). Si se activa esta configuración, se evita el acceso no deseado a los documentos de SSM. La configuración de bloquear el uso compartido en público es una configuración a nivel de cuenta que puede ser diferente para cada Región de AWS una de ellas. Complete las siguientes tareas para bloquear el uso compartido público de sus documentos de SSM.

Bloquear el uso compartido público (consola)

Para bloquear el uso compartido público de sus documentos de SSM
  1. Abre la AWS Systems Manager consola en https://console.aws.amazon.com/systems-manager/.

  2. En el panel de navegación, elija Documentos.

    -o bien-

    Si la página de AWS Systems Manager inicio se abre primero, seleccione el icono de menú ( 
    The menu icon
  ) para abrir el panel de navegación y, a continuación, elija Documentos en el panel de navegación.

  3. Elija Preferencias, luego elija Edit (Editar) en la sección Bloquear el uso compartido público.

  4. Seleccione la casilla de verificación Bloquear el uso compartido público y, a continuación, elija Guardar.

Bloquear el uso compartido público (línea de comandos)

Abre el AWS Command Line Interface (AWS CLI) o AWS Tools for Windows PowerShell en tu ordenador local y ejecuta el siguiente comando para impedir que se compartan públicamente tus documentos SSM.

Linux & macOS
aws ssm update-service-setting \ --setting-id /ssm/documents/console/public-sharing-permission \ --setting-value Disable \ --region 'The Región de AWS you want to block public sharing in'
Windows
aws ssm update-service-setting ^ --setting-id /ssm/documents/console/public-sharing-permission ^ --setting-value Disable ^ --region "The Región de AWS you want to block public sharing in"
PowerShell
Update-SSMServiceSetting ` -SettingId /ssm/documents/console/public-sharing-permission ` -SettingValue Disable ` –Region The Región de AWS you want to block public sharing in

Confirme que el valor de configuración se ha actualizado mediante el siguiente comando.

Linux & macOS
aws ssm get-service-setting \ --setting-id /ssm/documents/console/public-sharing-permission \ --region The Región de AWS you blocked public sharing in
Windows
aws ssm get-service-setting ^ --setting-id /ssm/documents/console/public-sharing-permission ^ --region "The Región de AWS you blocked public sharing in"
PowerShell
Get-SSMServiceSetting ` -SettingId /ssm/documents/console/public-sharing-permission ` -Region The Región de AWS you blocked public sharing in

Restringir el acceso para bloquear el uso compartido público con IAM

Puede crear políticas AWS Identity and Access Management (IAM) que impidan a los usuarios modificar la configuración de bloquear el uso compartido público. Esto evita que los usuarios permitan el acceso no deseado a los documentos de SSM.

A continuación, se muestra un ejemplo de una política de IAM que impide que los usuarios actualicen la configuración de bloqueo de uso compartido público. Para utilizar este ejemplo, debe reemplazar el ejemplo ID de cuenta de Amazon Web Services por su propio ID de cuenta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "ssm:UpdateServiceSetting", "Resource": "arn:aws:ssm:*:987654321098:servicesetting/ssm/documents/console/public-sharing-permission" } ] }

Compartir un documento de SSM

Puede compartir documentos AWS Systems Manager (SSM) mediante la consola de Systems Manager. Cuando se comparten documentos desde la consola, solo se puede compartir la versión predeterminada del documento. También puede compartir documentos SSM mediante programación llamando a la operación de la ModifyDocumentPermission API mediante AWS Command Line Interface (AWS CLI) o el SDK AWS Tools for Windows PowerShell. AWS Antes de compartir un documento, obtenga los ID de Cuenta de AWS de las personas con las que desea compartir. Especificará esos ID de cuentas cuando comparta el documento.

Compartir un documento (consola)

  1. Abre la AWS Systems Manager consola en https://console.aws.amazon.com/systems-manager/.

  2. En el panel de navegación, elija Documentos.

    -o bien-

    Si la página de AWS Systems Manager inicio se abre primero, seleccione el icono de menú ( 
    The menu icon
  ) para abrir el panel de navegación y, a continuación, elija Documentos en el panel de navegación.

  3. En la lista de documentos, elija el documento que desea compartir y, a continuación, elija Ver detalles. En la pestaña Permisos, verifique que es usted el propietario del documento. Solo el propietario del documento puede compartirlo.

  4. Elija Editar.

  5. Para compartir el comando públicamente, seleccione Public y, a continuación, Guardar. Para compartir el comando de forma privada, elija Privado, ingrese el ID de Cuenta de AWS , elija Añadir permiso y, a continuación, elija Guardar.

Compartir un documento (línea de comandos)

El siguiente procedimiento requiere que especifique una Región de AWS para la sesión de línea de comandos.

  1. Abra la AWS CLI o AWS Tools for Windows PowerShell en su equipo local y ejecute el siguiente comando para especificar sus credenciales.

    En el siguiente comando, reemplace region con su propia información. Para ver una lista de los valores de regiones admitidos, consulte la columna Región en Puntos de conexión de servicio de Systems Manager en la Referencia general de Amazon Web Services.

    Linux & macOS
    aws config AWS Access Key ID: [your key] AWS Secret Access Key: [your key] Default region name: region Default output format [None]:
    Windows
    aws config AWS Access Key ID: [your key] AWS Secret Access Key: [your key] Default region name: region Default output format [None]:
    PowerShell
    Set-AWSCredentials –AccessKey your key –SecretKey your key Set-DefaultAWSRegion -Region region
  2. Utilice el siguiente comando para enumerar todos los documentos de SSM que tiene disponibles. La lista incluye documentos que ha creado y documentos que han sido compartidos con usted.

    Linux & macOS
    aws ssm list-documents
    Windows
    aws ssm list-documents
    PowerShell
    Get-SSMDocumentList
  3. Utilice el siguiente comando para obtener un documento específico.

    Linux & macOS
    aws ssm get-document \ --name document name
    Windows
    aws ssm get-document ^ --name document name
    PowerShell
    Get-SSMDocument ` –Name document name
  4. Utilice el siguiente comando para obtener una descripción del documento.

    Linux & macOS
    aws ssm describe-document \ --name document name
    Windows
    aws ssm describe-document ^ --name document name
    PowerShell
    Get-SSMDocumentDescription ` –Name document name
  5. Utilice el siguiente comando para ver los permisos para el documento.

    Linux & macOS
    aws ssm describe-document-permission \ --name document name \ --permission-type Share
    Windows
    aws ssm describe-document-permission ^ --name document name ^ --permission-type Share
    PowerShell
    Get-SSMDocumentPermission ` –Name document name ` -PermissionType Share
  6. Utilice el siguiente comando para modificar los permisos para el documento y compartirlo. Debe ser el propietario del documento para editar los permisos. Si lo desea, puede especificar la versión del documento que desea compartir con el parámetro --shared-document-version. Si no especifica una versión, el sistema comparte la versión Default del documento. Este comando de ejemplo comparte el documento de forma privada con una persona específica en función de su ID de Cuenta de AWS .

    Linux & macOS
    aws ssm modify-document-permission \ --name document name \ --permission-type Share \ --account-ids-to-add Cuenta de AWS ID
    Windows
    aws ssm modify-document-permission ^ --name document name ^ --permission-type Share ^ --account-ids-to-add Cuenta de AWS ID
    PowerShell
    Edit-SSMDocumentPermission ` –Name document name ` -PermissionType Share ` -AccountIdsToAdd Cuenta de AWS ID
  7. Utilice el siguiente comando para compartir un documento públicamente.

    Linux & macOS
    aws ssm modify-document-permission \ --name document name \ --permission-type Share \ --account-ids-to-add 'all'
    Windows
    aws ssm modify-document-permission ^ --name document name ^ --permission-type Share ^ --account-ids-to-add "all"
    PowerShell
    Edit-SSMDocumentPermission ` -Name document name ` -PermissionType Share ` -AccountIdsToAdd ('all')

Modificar los permisos para un documento de SSM compartido

Si compartes un comando, los usuarios pueden verlo y usarlo hasta que elimines el acceso al documento AWS Systems Manager (SSM) o elimines el documento SSM. Sin embargo, no puede eliminar un documento mientras esté compartido. Primero debe dejar de compartirlo y, a continuación, eliminarlo.

Detener el uso compartido de un documento (consola)

Detener el uso compartido de un documento
  1. Abra la AWS Systems Manager consola en https://console.aws.amazon.com/systems-manager/.

  2. En el panel de navegación, elija Documentos.

    -o bien-

    Si la página de AWS Systems Manager inicio se abre primero, seleccione el icono de menú ( 
    The menu icon
  ) para abrir el panel de navegación y, a continuación, elija Documentos en el panel de navegación.

  3. En la lista de documentos, elija el documento que desee dejar de compartir y, a continuación, seleccione Detalles. En la sección Permisos, comprueba que eres el propietario del documento. Solo el propietario del documento puede dejar de compartirlo.

  4. Elija Editar.

  5. Selecciona X para eliminar el Cuenta de AWS identificador que ya no debería tener acceso al comando y, a continuación, selecciona Guardar.

Dejar de compartir un documento (línea de comandos)

Abre AWS CLI o AWS Tools for Windows PowerShell en tu equipo local y ejecuta el siguiente comando para dejar de compartir un comando.

Linux & macOS
aws ssm modify-document-permission \ --name document name \ --permission-type Share \ --account-ids-to-remove 'Cuenta de AWS ID'
Windows
aws ssm modify-document-permission ^ --name document name ^ --permission-type Share ^ --account-ids-to-remove "Cuenta de AWS ID"
PowerShell
Edit-SSMDocumentPermission ` -Name document name ` -PermissionType Share ` –AccountIdsToRemove Cuenta de AWS ID

Uso de documentos de SSM compartidos

Al compartir un documento AWS Systems Manager (SSM), el sistema genera un nombre de recurso de Amazon (ARN) y lo asigna al comando. Si selecciona y ejecuta un documento compartido desde la consola de Systems Manager, no verá el ARN. Sin embargo, si desea ejecutar un documento de SSM compartido utilizando un método distinto de la consola de Systems Manager, debe especificar el ARN completo del documento para el parámetro de solicitud de DocumentName. Cuando ejecuta el comando para enumerar los documentos verá el ARN completo de un documento de SSM.

nota

No es necesario que especifique los ARN de los documentos AWS públicos (documentos que comienzan por élAWS-*) o de los documentos de su propiedad.

Uso de un documento de SSM compartido (línea de comandos)

Para enumerar todos los documentos de SSM públicos

Linux & macOS
aws ssm list-documents \ --filters Key=Owner,Values=Public
Windows
aws ssm list-documents ^ --filters Key=Owner,Values=Public
PowerShell
$filter = New-Object Amazon.SimpleSystemsManagement.Model.DocumentKeyValuesFilter $filter.Key = "Owner" $filter.Values = "Public" Get-SSMDocumentList ` -Filters @($filter)

Para enumerar los documentos de SSM privados que se han compartido con usted

Linux & macOS
aws ssm list-documents \ --filters Key=Owner,Values=Private
Windows
aws ssm list-documents ^ --filters Key=Owner,Values=Private
PowerShell
$filter = New-Object Amazon.SimpleSystemsManagement.Model.DocumentKeyValuesFilter $filter.Key = "Owner" $filter.Values = "Private" Get-SSMDocumentList ` -Filters @($filter)

Para enumerar todos los documentos de SSM que tiene disponibles

Linux & macOS
aws ssm list-documents
Windows
aws ssm list-documents
PowerShell
Get-SSMDocumentList

Para obtener información acerca de un documento de SSM que se ha compartido con usted

Linux & macOS
aws ssm describe-document \ --name arn:aws:ssm:us-east-2:12345678912:document/documentName
Windows
aws ssm describe-document ^ --name arn:aws:ssm:us-east-2:12345678912:document/documentName
PowerShell
Get-SSMDocumentDescription ` –Name arn:aws:ssm:us-east-2:12345678912:document/documentName

Para ejecutar un documento de SSM compartido

Linux & macOS
aws ssm send-command \ --document-name arn:aws:ssm:us-east-2:12345678912:document/documentName \ --instance-ids ID
Windows
aws ssm send-command ^ --document-name arn:aws:ssm:us-east-2:12345678912:document/documentName ^ --instance-ids ID
PowerShell
Send-SSMCommand ` –DocumentName arn:aws:ssm:us-east-2:12345678912:document/documentName ` –InstanceIds ID