

• El panel de AWS Systems Manager CloudWatch dejará de estar disponible después del 30 de abril de 2026. Los clientes pueden seguir utilizando la consola de Amazon CloudWatch para ver, crear y administrar sus paneles de Amazon CloudWatch, tal y como lo hacen actualmente. Para obtener más información, consulte la [documentación del panel de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

# Cómo configurar acceso justo a tiempo con Systems Manager
<a name="systems-manager-just-in-time-node-access-setting-up"></a>

Configurar el acceso a los nodos justo a tiempo con Systems Manager implica varios pasos. En primer lugar, debe elegir los *destinos* en los que desee configurar el acceso a los nodos justo a tiempo. Los destinos consisten en unidades organizativas (OU) de AWS Organizations y Regiones de AWS. De forma predeterminada, los mismos destinos que eligió al configurar la consola unificada de Systems Manager se seleccionan para el acceso a los nodos justo a tiempo. Puede elegir configurar el acceso a los nodos justo a tiempo para todos los mismos destinos o para un subconjunto de los destinos que especificó al configurar la consola unificada de Systems Manager. No es posible añadir nuevos destinos que no se seleccionaron al configurar la consola unificada de Systems Manager.

A continuación, creará *políticas de aprobación* para determinar cuándo se requiere una aprobación manual para conectarse a los nodos y cuándo se aprueba automáticamente. Cada cuenta de la organización administra las políticas de aprobación. También puede compartir una política desde la cuenta de administrador delegado para denegar explícitamente la aprobación automática de conexiones a nodos específicos.

**nota**  
La configuración del acceso a los nodos justo a tiempo no afecta las políticas de IAM o preferencias existentes que haya configurado para Session Manager. Debe eliminar de las políticas de IAM el permiso para acciones de la API de `StartSession` a fin de garantizar que solo se utilice el acceso al nodo justo a tiempo cuando los usuarios intenten conectarse a los nodos. Tras configurar el acceso a los nodos justo a tiempo, le recomendamos que pruebe las políticas de aprobación con un subconjunto de usuarios y nodos para verificar que funcionen como se desee antes de eliminar los permisos para Session Manager.

**Soporte de autenticación**  
Tenga en cuenta los siguientes detalles sobre el soporte de autenticación utilizado para el acceso a nodos justo a tiempo:
+ El acceso a nodos justo a tiempo no admite el tipo de autenticación de inicio de sesión único cuando se conecta a instancias de Windows Server con escritorio remoto.
+ Solo se admiten las credenciales de `AssumeRole` de AWS Security Token Service (AWS STS) de seguridad temporales. Para obtener más información, consulte los siguientes temas de la *guía del usuario de IAM*: 
+ 
  + [Credenciales de seguridad temporales en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html)
  + [Comparación de credenciales de AWS STS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_sts-comparison.html)
  + [Solicitud de credenciales de seguridad temporales](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html)

En las siguientes políticas de IAM, se describen los permisos necesarios para administrar y permitir que los usuarios creen solicitudes de acceso a los nodos justo a tiempo con Systems Manager. Tras comprobar que dispone de los permisos necesarios para utilizar el acceso a los nodos justo a tiempo con Systems Manager, puede continuar con el proceso de configuración. Reemplace cada *example resource placeholder* con su propia información.

## Política de IAM para habilitar el acceso a los nodos justo a tiempo
<a name="just-in-time-administrator-policy"></a>

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "QuickSetupConfigurationManagers",
            "Effect": "Allow",
            "Action": [
                "ssm-quicksetup:CreateConfigurationManager",
                "ssm-quicksetup:DeleteConfigurationManager",
                "ssm-quicksetup:GetConfiguration",
                "ssm-quicksetup:GetConfigurationManager",
                "ssm-quicksetup:GetServiceSettings",
                "ssm-quicksetup:ListConfigurationManagers",
                "ssm-quicksetup:ListConfigurations",
                "ssm-quicksetup:ListQuickSetupTypes",
                "ssm-quicksetup:ListTagsForResource",
                "ssm-quicksetup:TagResource",
                "ssm-quicksetup:UntagResource",
                "ssm-quicksetup:UpdateConfigurationDefinition",
                "ssm-quicksetup:UpdateConfigurationManager",
                "ssm-quicksetup:UpdateServiceSettings"
            ],
            "Resource": "*"
        },
        {
            "Sid": "QuickSetupDeployments",
            "Effect": "Allow",
            "Action": [
                "cloudformation:DescribeStackSetOperation",
                "cloudformation:ListStacks",
                "cloudformation:DescribeStacks",
                "cloudformation:DescribeStackResources",
                "cloudformation:ListStackSetOperations",
                "cloudformation:ListStackInstances",
                "cloudformation:DescribeStackSet",
                "cloudformation:ListStackSets",
                "cloudformation:DescribeStackInstance",
                "cloudformation:DescribeOrganizationsAccess",
                "cloudformation:ActivateOrganizationsAccess",
                "cloudformation:GetTemplate",
                "cloudformation:ListStackSetOperationResults",
                "cloudformation:DescribeStackEvents",
                "cloudformation:UntagResource",
                "ssm:DescribeAutomationExecutions",
                "ssm:GetAutomationExecution",
                "ssm:ListAssociations",
                "ssm:DescribeAssociation",
                "ssm:GetDocument",
                "ssm:ListDocuments",
                "ssm:DescribeDocument",
                "ssm:GetOpsSummary",
                "organizations:DeregisterDelegatedAdministrator",
                "organizations:DescribeAccount",
                "organizations:DescribeOrganization",
                "organizations:ListDelegatedAdministrators",
                "organizations:ListRoots",
                "organizations:ListParents",
                "organizations:ListOrganizationalUnitsForParent",
                "organizations:DescribeOrganizationalUnit",
                "organizations:ListAWSServiceAccessForOrganization",
                "iam:ListRoles",
                "iam:ListRolePolicies",
                "iam:GetRole",
                "iam:CreatePolicy",
                "cloudformation:TagResource"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "cloudformation:RollbackStack",
                "cloudformation:CreateStack",
                "cloudformation:UpdateStack",
                "cloudformation:DeleteStack"
            ],
            "Resource": [
                "arn:aws:cloudformation:*:*:stack/StackSet-AWS-QuickSetup-JITNA*",
                "arn:aws:cloudformation:*:*:stack/AWS-QuickSetup-*",
                "arn:aws:cloudformation:*:*:type/resource/*",
                "arn:aws:cloudformation:*:*:stack/StackSet-SSMQuickSetup"
            ]
        },
        {
            "Sid": "StackSetOperations",
            "Effect": "Allow",
            "Action": [
                "cloudformation:CreateStackSet",
                "cloudformation:UpdateStackSet",
                "cloudformation:DeleteStackSet",
                "cloudformation:DeleteStackInstances",
                "cloudformation:CreateStackInstances",
                "cloudformation:StopStackSetOperation"
            ],
            "Resource": [
                "arn:aws:cloudformation:*:*:stackset/AWS-QuickSetup-JITNA*",
                "arn:aws:cloudformation:*:*:type/resource/*",
                "arn:aws:cloudformation:*:*:stackset-target/AWS-QuickSetup-JITNA*:*"
            ]
        },
        {
            "Sid": "IamRolesMgmt",
            "Effect": "Allow",
            "Action": [
                "iam:CreateRole",
                "iam:DeleteRole",
                "iam:GetRole",
                "iam:AttachRolePolicy",
                "iam:PutRolePolicy",
                "iam:DetachRolePolicy",
                "iam:GetRolePolicy",
                "iam:ListRolePolicies"
            ],
            "Resource": [
                "arn:aws:iam::*:role/AWS-QuickSetup-JITNA*",
                "arn:aws:iam::*:role/service-role/AWS-QuickSetup-JITNA*"
            ]
        },
        {
            "Sid": "IamPassRole",
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::*:role/AWS-QuickSetup-JITNA*",
                "arn:aws:iam::*:role/service-role/AWS-QuickSetup-JITNA*"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "ssm.amazonaws.com",
                        "ssm-quicksetup.amazonaws.com",
                        "cloudformation.amazonaws.com"
                    ]
                }
            }
        },
        {
            "Sid": "SSMAutomationExecution",
            "Effect": "Allow",
            "Action": "ssm:StartAutomationExecution",
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/AWS-EnableExplorer",
                "arn:aws:ssm:us-east-1:111122223333:automation-execution/*"
            ]
        },
        {
            "Sid": "SSMAssociationPermissions",
            "Effect": "Allow",
            "Action": [
                "ssm:DeleteAssociation",
                "ssm:CreateAssociation",
                "ssm:StartAssociationsOnce"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:association/*"
        },
        {
            "Sid": "SSMResourceDataSync",
            "Effect": "Allow",
            "Action": [
                "ssm:CreateResourceDataSync",
                "ssm:UpdateResourceDataSync"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:resource-data-sync/AWS-QuickSetup-*"
        },
        {
            "Sid": "ListResourceDataSync",
            "Effect": "Allow",
            "Action": [
                "ssm:ListResourceDataSync"
            ],
            "Resource": "*"
        },
        {
            "Sid": "CreateServiceLinkedRoles",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole"
            ],
            "Condition": {
                "StringEquals": {
                    "iam:AWSServiceName": [
                        "accountdiscovery.ssm.amazonaws.com",
                        "ssm.amazonaws.com",
                        "ssm-quicksetup.amazonaws.com",
                        "stacksets.cloudformation.amazonaws.com"
                    ]
                }
            },
            "Resource": "*"
        },
        {
            "Sid": "CreateStackSetsServiceLinkedRole",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole"
            ],
            "Resource": "arn:aws:iam::*:role/aws-service-role/stacksets.cloudformation.amazonaws.com/AWSServiceRoleForCloudFormationStackSetsOrgAdmin"
        },
        {
            "Sid": "AllowSsmJitnaPoliciesCrudOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:CreateDocument",
                "ssm:UpdateDocument",
                "ssm:UpdateDocumentDefaultVersion",
                "ssm:GetDocument",
                "ssm:DescribeDocument",
                "ssm:DeleteDocument"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/SSM-JustInTimeAccessDenyAccessOrgPolicy"
            ],
            "Condition": {
                "StringEquals": {
                    "ssm:DocumentType": [
                        "AutoApprovalPolicy"
                    ]
                }
            }
        },
        {
            "Sid": "AllowAccessRequestOpsItemOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:GetOpsItem",
                "ssm:DescribeOpsItems",
                "ssm:GetOpsSummary",
                "ssm:DeleteOpsItem",
                "ssm:ListOpsItemEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IdentityCenterPermissions",
            "Effect": "Allow",
            "Action": [
                "sso:DescribeRegisteredRegions",
                "sso:ListDirectoryAssociations",
                "identitystore:GetUserId",
                "identitystore:DescribeUser",
                "identitystore:DescribeGroup",
                "identitystore:ListGroupMembershipsForMember"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Política de IAM para configurar el acceso a los nodos justo a tiempo
<a name="just-in-time-member-administrator-policy"></a>

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowSsmJitnaPoliciesCrudOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:CreateDocument",
                "ssm:UpdateDocument",
                "ssm:UpdateDocumentDefaultVersion",
                "ssm:GetDocument",
                "ssm:DescribeDocument",
                "ssm:DeleteDocument"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/*"
            ],
            "Condition": {
                "StringEquals": {
                    "ssm:DocumentType": [
                        "ManualApprovalPolicy",
                        "AutoApprovalPolicy"
                    ]
                }
            }
        },
        {
            "Sid": "AllowSsmJitnaPoliciesListOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:ListDocuments",
                "ssm:ListDocumentVersions"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::111122223333:role/SSM-JustInTimeAccessTokenRole",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "justintimeaccess.ssm.amazonaws.com"
                    ]
                }
            }
        },
        {
            "Sid": "AllowAccessRequestOpsItemOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:GetOpsItem",
                "ssm:DescribeOpsItems",
                "ssm:GetOpsSummary",
                "ssm:DeleteOpsItem",
                "ssm:ListOpsItemEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowSessionManagerPreferencesOperation",
            "Effect": "Allow",
            "Action": [
                "ssm:CreateDocument",
                "ssm:GetDocument",
                "ssm:DescribeDocument",
                "ssm:UpdateDocument",
                "ssm:DeleteDocument"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:document/SSM-SessionManagerRunShell",
            "Condition": {
                "StringEquals": {
                    "ssm:DocumentType": "Session"
                }
            }
        },
        {
            "Sid": "AllowSessionManagerOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeSessions",
                "ssm:GetConnectionStatus",
                "ssm:TerminateSession"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowRDPConnectionRecordingOperations",
            "Effect": "Allow",
            "Action": [
                "ssm-guiconnect:UpdateConnectionRecordingPreferences",
                "ssm-guiconnect:GetConnectionRecordingPreferences",
                "ssm-guiconnect:DeleteConnectionRecordingPreferences"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowRDPConnectionRecordingKmsOperation",
            "Effect": "Allow",
            "Action": [
                "kms:CreateGrant"
            ],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/SystemsManagerJustInTimeNodeAccessManaged": "true"
                },
                "StringLike": {
                    "kms:ViaService": "ssm-guiconnect.*.amazonaws.com"
                },
                "Bool": {
                    "aws:ViaAWSService": "true"
                }
            }
        },
        {
            "Sid": "AllowFleetManagerOperations",
            "Effect": "Allow",
            "Action": [
                "ssm-guiconnect:GetConnection",
                "ssm-guiconnect:ListConnections"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SNSTopicManagement",
            "Effect": "Allow",
            "Action": [
                "sns:CreateTopic",
                "sns:SetTopicAttributes"
            ],
            "Resource": [
                "arn:aws:sns:us-east-1:111122223333:SSM-JITNA*"
            ]
        },
        {
            "Sid": "SNSListTopics",
            "Effect": "Allow",
            "Action": [
                "sns:ListTopics"
            ],
            "Resource": "*"
        },
        {
            "Sid": "EventBridgeRuleManagement",
            "Effect": "Allow",
            "Action": [
                "events:PutRule",
                "events:PutTargets"
            ],
            "Resource": [
                "arn:aws:events:us-east-1::rule/SSM-JITNA*"
            ]
        },
        {
            "Sid": "ChatbotSlackManagement",
            "Effect": "Allow",
            "Action": [
                "chatbot:CreateSlackChannelConfiguration",
                "chatbot:UpdateSlackChannelConfiguration",
                "chatbot:DescribeSlackChannelConfigurations",
                "chatbot:DescribeSlackWorkspaces",
                "chatbot:DeleteSlackChannelConfiguration",
                "chatbot:RedeemSlackOauthCode",
                "chatbot:DeleteSlackWorkspaceAuthorization",
                "chatbot:GetSlackOauthParameters"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ChatbotTeamsManagement",
            "Effect": "Allow",
            "Action": [
                "chatbot:ListMicrosoftTeamsChannelConfigurations",
                "chatbot:CreateMicrosoftTeamsChannelConfiguration",
                "chatbot:UpdateMicrosoftTeamsChannelConfiguration",
                "chatbot:ListMicrosoftTeamsConfiguredTeams",
                "chatbot:DeleteMicrosoftTeamsChannelConfiguration",
                "chatbot:RedeemMicrosoftTeamsOauthCode",
                "chatbot:DeleteMicrosoftTeamsConfiguredTeam",
                "chatbot:GetMicrosoftTeamsOauthParameters",
                "chatbot:TagResource"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SSMEmailSettings",
            "Effect": "Allow",
            "Action": [
                "ssm:UpdateServiceSetting",
                "ssm:GetServiceSetting"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:servicesetting/ssm/access-request/email-role-mapping",
                "arn:aws:ssm:us-east-1:111122223333:servicesetting/ssm/access-request/enabled-email-notifications"
            ]
        },
        {
            "Sid": "AllowViewingJitnaCloudWatchMetrics",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:GetMetricData",
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:ListMetrics"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "cloudwatch:namespace": "AWS/SSM/JustInTimeAccess"
                }
            }
        },
        {
            "Sid": "QuickSetupConfigurationManagers",
            "Effect": "Allow",
            "Action": [
                "ssm-quicksetup:ListConfigurationManagers",
                "ssm-quicksetup:ListConfigurations",
                "ssm-quicksetup:ListQuickSetupTypes",
                "ssm-quicksetup:GetConfiguration",
                "ssm-quicksetup:GetConfigurationManager"
            ],
            "Resource": "*"
        },
        {
            "Sid": "QuickSetupDeployments",
            "Effect": "Allow",
            "Action": [
                "cloudformation:ListStacks",
                "cloudformation:DescribeStacks",
                "organizations:DescribeOrganization",
                "organizations:ListDelegatedAdministrators"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ManualPolicy",
            "Effect": "Allow",
            "Action": [
                "sso:DescribeRegisteredRegions",
                "ssm:GetServiceSetting",
                "iam:ListRoles"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SessionPreference",
            "Effect": "Allow",
            "Action": [
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowIamListForKMS",
            "Effect": "Allow",
            "Action": [
                "iam:ListUsers"
            ],
            "Resource": "arn:aws:iam::111122223333:user/*"
        },
        {
            "Sid": "KMSPermission",
            "Effect": "Allow",
            "Action": [
                "kms:TagResource",
                "kms:ListAliases",
                "kms:CreateAlias"
            ],
            "Resource": "*"
        },
        {
            "Sid": "KMSCreateKey",
            "Effect": "Allow",
            "Action": [
                "kms:CreateKey"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/SystemsManagerJustInTimeNodeAccessManaged": "true"
                },
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "SystemsManagerJustInTimeNodeAccessManaged"
                    ]
                }
            }
        },
        {
            "Sid": "AllowIamRoleForChatbotAction",
            "Effect": "Allow",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": "arn:aws:iam::111122223333:role/role name",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": [
                        "chatbot.amazonaws.com"
                    ]
                }
            }
        },
        {
            "Sid": "AllowIamServiceRoleForChat",
            "Effect": "Allow",
            "Action": [
                "iam:CreateServiceLinkedRole"
            ],
            "Resource": "arn:aws:iam::111122223333:role/aws-service-role/management.chatbot.amazonaws.com/AWSServiceRoleForAWSChatbot"
        },
        {
            "Sid": "CloudWatchLogs",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups"
            ],
            "Resource": "arn:aws:logs:*:111122223333:log-group::log-stream:"
        },
        {
            "Sid": "IdentityStorePermissions",
            "Effect": "Allow",
            "Action": [
                "sso:ListDirectoryAssociations",
                "identitystore:GetUserId",
                "sso-directory:SearchUsers",
                "sso-directory:SearchGroups",
                "identitystore:DescribeGroup",
                "identitystore:DescribeUser"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Política de IAM para los aprobadores de solicitudes de acceso
<a name="just-in-time-access-request-approver-policy"></a>

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAccessRequestDescriptions",
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeOpsItems",
                "ssm:GetOpsSummary",
                "ssm:ListOpsItemEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowGetSpecificAccessRequest",
            "Effect": "Allow",
            "Action": [
                "ssm:GetOpsItem"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:opsitem/*"
        },
        {
            "Sid": "AllowApprovalRejectionSignal",
            "Effect": "Allow",
            "Action": [
                "ssm:SendAutomationSignal"
            ],
            "Resource": "arn:aws:ssm:*:*:automation-execution/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/SystemsManagerJustInTimeNodeAccessManaged": "true"
                }
            }
        },
        {
            "Sid": "QuickSetupConfigurationManagers",
            "Effect": "Allow",
            "Action": [
                "ssm-quicksetup:ListConfigurationManagers",
                "ssm-quicksetup:ListConfigurations",
                "ssm-quicksetup:GetConfigurationManager",
                "ssm-quicksetup:ListQuickSetupTypes",
                "ssm-quicksetup:GetConfiguration"
            ],
            "Resource": "*"
        },
        {
            "Sid": "QuickSetupDeployments",
            "Effect": "Allow",
            "Action": [
                "cloudformation:ListStacks",
                "cloudformation:DescribeStacks",
                "organizations:DescribeOrganization",
                "organizations:ListDelegatedAdministrators"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowSsmJitnaPoliciesCrudOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:GetDocument",
                "ssm:DescribeDocument"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:document/*"
            ],
            "Condition": {
                "StringEquals": {
                    "ssm:DocumentType": [
                        "ManualApprovalPolicy",
                        "AutoApprovalPolicy"
                    ]
                }
            }
        },
        {
            "Sid": "AllowSsmJitnaPoliciesListOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:ListDocuments",
                "ssm:ListDocumentVersions"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IDCPermissions",
            "Effect": "Allow",
            "Action": [
                "sso:DescribeRegisteredRegions",
                "sso:ListDirectoryAssociations",
                "identitystore:GetUserId",
                "identitystore:DescribeUser",
                "identitystore:DescribeGroup",
                "identitystore:ListGroupMembershipsForMember"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Política de IAM para usuarios con acceso a los nodos justo a tiempo
<a name="just-in-time-access-requester-policy"></a>

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowJITNAOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:StartAccessRequest",
                "ssm:GetAccessToken"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowOpsItemCreationAndRetrieval",
            "Effect": "Allow",
            "Action": [
                "ssm:CreateOpsItem",
                "ssm:GetOpsItem"
            ],
            "Resource": "arn:aws:ssm:*:*:opsitem/*"
        },
        {
            "Sid": "AllowListAccessRequests",
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeOpsItems",
                "ssm:GetOpsSummary",
                "ssm:ListOpsItemEvents",
                "ssm:DescribeSessions"
            ],
            "Resource": "*"
        },
        {
            "Sid": "RequestManualApprovals",
            "Action": "ssm:StartAutomationExecution",
            "Effect": "Allow",
            "Resource": "arn:aws:ssm:*:*:document/*",
            "Condition": {
                "StringEquals": {
                    "ssm:DocumentType": "ManualApprovalPolicy"
                }
            }
        },
        {
            "Sid": "StartManualApprovalsAutomationExecution",
            "Effect": "Allow",
            "Action": "ssm:StartAutomationExecution",
            "Resource": "arn:aws:ssm:*:*:automation-execution/*"
        },
        {
            "Sid": "CancelAccessRequestManualApproval",
            "Effect": "Allow",
            "Action": "ssm:StopAutomationExecution",
            "Resource": "arn:aws:ssm:*:*:automation-execution/*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/SystemsManagerJustInTimeNodeAccessManaged": "true"
                }
            }
        },
        {
            "Sid": "DescribeEC2Instances",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeTags",
                "ec2:GetPasswordData"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowListSSMManagedNodesAndTags",
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeInstanceInformation",
                "ssm:ListTagsForResource"
            ],
            "Resource": "*"
        },
        {
            "Sid": "QuickSetupConfigurationManagers",
            "Effect": "Allow",
            "Action": [
                "ssm-quicksetup:ListConfigurationManagers",
                "ssm-quicksetup:GetConfigurationManager",
                "ssm-quicksetup:ListConfigurations",
                "ssm-quicksetup:ListQuickSetupTypes",
                "ssm-quicksetup:GetConfiguration"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowSessionManagerOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeSessions",
                "ssm:GetConnectionStatus"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowRDPOperations",
            "Effect": "Allow",
            "Action": [
                "ssm-guiconnect:ListConnections",
                "ssm:GetConnectionStatus"
            ],
            "Resource": "*"
        },
        {
            "Sid": "QuickSetupDeployments",
            "Effect": "Allow",
            "Action": [
                "cloudformation:ListStacks",
                "cloudformation:DescribeStacks",
                "organizations:DescribeOrganization",
                "organizations:ListDelegatedAdministrators"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowSsmJitnaPoliciesReadOnly",
            "Effect": "Allow",
            "Action": [
                "ssm:GetDocument",
                "ssm:DescribeDocument"
            ],
            "Resource": [
                "arn:aws:ssm:*:111122223333:document/*"
            ],
            "Condition": {
                "StringEquals": {
                    "ssm:DocumentType": [
                        "ManualApprovalPolicy",
                        "AutoApprovalPolicy"
                    ]
                }
            }
        },
        {
            "Sid": "AllowSsmJitnaPoliciesListOperations",
            "Effect": "Allow",
            "Action": [
                "ssm:ListDocuments",
                "ssm:ListDocumentVersions"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ExploreNodes",
            "Effect": "Allow",
            "Action": [
                "ssm:ListNodesSummary",
                "ssm:ListNodes",
                "ssm:DescribeInstanceProperties"
            ],
            "Resource": "*"
        },
        {
            "Sid": "IdentityStorePermissions",
            "Effect": "Allow",
            "Action": [
                "sso:DescribeRegisteredRegions",
                "sso:ListDirectoryAssociations",
                "identitystore:GetUserId",
                "identitystore:DescribeUser",
                "identitystore:DescribeGroup"
            ],
            "Resource": "*"
        }
    ]
}
```

------

**nota**  
Para restringir el acceso a las operaciones de la API que crean, actualizan o eliminan políticas de aprobación, utilice la clave de condición `ssm:DocumentType` para los tipos de documento `AutoApprovalPolicy` y `ManualApprovalPolicy `. Las operaciones `StartAccessRequest` y `GetAccessToken` de la API no admiten las siguientes claves de contexto globales:  
`aws:SourceVpc`
`aws:SourceVpce`
`aws:VpcSourceIp`
`aws:UserAgent`
`aws:MultiFactorAuthPresent`

Para obtener más información sobre las claves de contexto de condición para Systems Manager, consulte [Claves de condición para AWS Systems Manager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssystemsmanager.html#awssystemsmanager-policy-keys) en la *Referencia de autorizaciones de servicio*.

En el siguiente procedimiento, se describe cómo completar el primer paso de la configuración del acceso a los nodos justo a tiempo.

**Cómo configurar el acceso a los nodos justo a tiempo**

1. Inicie sesión en la cuenta de administrador delegado de Systems Manager de la organización.

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. En el panel de navegación, seleccione **Acceso a nodos justo a tiempo**.

1. Seleccione **Habilitar la nueva experiencia**.

1. Elija las regiones donde desee habilitar el acceso a los nodos justo a tiempo. De forma predeterminada, las mismas regiones que eligió al configurar la consola unificada de Systems Manager se seleccionan para el acceso a los nodos justo a tiempo. No es posible añadir nuevas regiones que no se seleccionaron al configurar la consola unificada de Systems Manager.

1. Seleccione **Habilitar el acceso a los nodos justo a tiempo**.

No se aplica ningún cargo por usar el acceso a los nodos justo a tiempo durante los 30 días posteriores a la activación de la característica. Después del periodo de prueba de 30 días, se aplicará un cargo por utilizarla. Para más información, consulte [Precios de AWS Systems Manager](https://aws.amazon.com/systems-manager/pricing/).

# Cómo crear políticas de aprobación para sus nodos
<a name="systems-manager-just-in-time-node-access-approval-policies"></a>

Las políticas de aprobación definen qué aprobaciones necesitan los usuarios para acceder a un nodo. Dado que el acceso a los nodos justo a tiempo elimina la necesidad de contar con permisos permanentes para acceder a los nodos mediante políticas de IAM, usted debe crear políticas de aprobación para permitir el acceso. Si no hay políticas de aprobación que se apliquen a un nodo, los usuarios no podrán solicitar el acceso.

En el acceso a los nodos justo a tiempo, hay tres tipos de políticas: *aprobación automática*, *denegación de acceso* y *aprobación manual*.

**Tipos de políticas de acceso a los nodos justo a tiempo**
+ Una política de aprobación automática define a qué nodos se pueden conectar los usuarios automáticamente.
+ Las políticas de aprobación manual definen el número y los niveles de aprobaciones manuales que se deben proporcionar para acceder a los nodos especificados.
+ Una política de denegación de acceso impide explícitamente la aprobación automática de las solicitudes de acceso a los nodos especificados. 

Una política de denegación de acceso se aplica a todas las cuentas de una organización de AWS Organizations. Por ejemplo, puede denegar explícitamente las aprobaciones automáticas para el grupo `Intern` a los nodos etiquetados con la clave `Production`. Las políticas de aprobación automática y manual se aplican solo a las Cuentas de AWS y Regiones de AWS en las que se crearon. Cada cuenta de miembro de su organización administra sus propias políticas de aprobación. Las políticas de aprobación se evalúan en el siguiente orden:

1. Denegación de acceso

1. Aprobación automática

1. Manual

Aunque solo puede tener una política de denegación de acceso por organización y una política de aprobación automática por cuenta y región, es probable que tenga varias políticas de aprobación manual en una cuenta. Al evaluar las políticas de aprobación manual, el acceso a los nodos justo a tiempo siempre favorece la política más específica para un nodo. Las políticas de aprobación manual se evalúan en el siguiente orden:

1. Destino específico según la etiqueta

1. Todos los destinos de los nodos

Por ejemplo, tiene un nodo etiquetado con la clave `Demo`. En la misma cuenta, tiene una política de aprobación manual que se dirige a todos los nodos y requiere una aprobación de un nivel. También tiene una política de aprobación manual que requiere dos aprobaciones de dos niveles para los nodos etiquetados con la clave `Demo`. Systems Manager aplica la política que dirige la etiqueta `Demo` al nodo, ya que es más específica que la política que se dirige a todos los nodos. Esto le permite crear una política general para todos los nodos de la cuenta, lo que garantiza que los usuarios puedan enviar solicitudes de acceso y, al mismo tiempo, le permite crear políticas más detalladas según sea necesario.

Según su organización, es posible que se apliquen varias etiquetas a los nodos. En esta situación, si se aplican varias políticas de aprobación manual a un nodo, las solicitudes de acceso fallan. Por ejemplo, un nodo está etiquetado con las claves `Production` y `Database`. En la misma cuenta, tiene una política de aprobación manual que se aplica a los nodos etiquetados con la clave `Production` y otra política de aprobación manual que se aplica a los nodos etiquetados con la clave `Database`. Esto provoca un conflicto en el nodo que está etiquetado con ambas claves, y las solicitudes de acceso fallan. Systems Manager redirige al usuario a la solicitud fallida. Allí, verá los detalles sobre las políticas y etiquetas en conflicto para poder realizar los ajustes necesarios si dispone de los permisos requeridos. De lo contrario, puede notificar a un colega en la organización que tenga los permisos necesarios para modificar las políticas. Los conflictos de políticas que provocan solicitudes de acceso fallidas emiten eventos de EventBridge, lo que le ofrece flexibilidad para crear sus propios flujos de trabajo de respuesta. Además, Systems Manager les envía, a los destinatarios especificados, notificaciones por correo electrónico en caso de conflictos de políticas que provoquen solicitudes de acceso fallidas. Para obtener más información acerca de la configuración de notificaciones por correo electrónico para políticas en conflicto, consulte [Cómo configurar las notificaciones para las solicitudes de acceso justo a tiempo](systems-manager-just-in-time-node-access-notifications.md).

En una política de *denegación de acceso*, se utiliza el lenguaje de políticas de Cedar para definir, de forma explícita, a qué nodos no se pueden conectar automáticamente los usuarios en la organización. Esta política se crea y se comparte desde la cuenta de administrador delegado de su organización. La política de denegación de acceso tiene prioridad sobre todas las políticas de aprobación automática. Solo puede tener una política de denegación de acceso por organización.

En una política de *aprobación automática*, se utiliza el lenguaje de políticas de Cedar para definir qué usuarios pueden conectarse automáticamente a los nodos especificados sin aprobación manual. Si una solicitud de acceso se aprueba automáticamente, la duración del acceso es de 1 hora. Este valor no se puede cambiar. Solo puede tener una política de aprobación automática por cuenta y región.

En una política de aprobación *manual*, se especifica la duración del acceso, cuántos niveles de aprobación se requieren, el número de aprobadores necesarios por nivel y los nodos a los que pueden aprobar las solicitudes de acceso justo a tiempo. La duración del acceso para una política de aprobación manual debe estar entre 1 y 336 horas. Si especifica varios niveles de aprobaciones, las aprobaciones de la solicitud de acceso se procesan de un nivel a la vez. Esto significa que todas las aprobaciones que necesite para un nivel deben proporcionarse antes de que el proceso de aprobación pase a los niveles siguientes. Si especifica varias etiquetas en una política de aprobación manual, se evalúan como instrucciones `or`, no como instrucciones `and`. Por ejemplo, si crea una política de aprobación manual que incluye las etiquetas `Application`, `Web` y `Test`, la política se aplica a cualquier nodo que esté etiquetado con una de esas claves. La política no se aplica solo a los nodos que están etiquetados con las tres claves.

Recomendamos utilizar una combinación de políticas manuales con la política de aprobación automática para ayudar a proteger los nodos que tienen datos críticos y, al mismo tiempo, permitir que los usuarios se conecten a los nodos menos críticos sin intervención. Por ejemplo, puede requerir aprobaciones manuales para las solicitudes de acceso a los nodos de base de datos y aprobar automáticamente las sesiones para los nodos no persistentes de la capa de presentación.

En los siguientes procedimientos, se describe cómo crear políticas de aprobación para el acceso a los nodos justo a tiempo.

**Topics**
+ [

# Cómo crear políticas de aprobación manual sobre el acceso a los nodos justo a tiempo
](systems-manager-just-in-time-node-access-create-manual-policies.md)
+ [

# Estructura de instrucciones y operadores integrados para políticas de aprobación automática y denegación de acceso
](auto-approval-deny-access-policy-statement-structure.md)
+ [

# Cómo crear una política de aprobación automática sobre el acceso a los nodos justo a tiempo
](systems-manager-just-in-time-node-access-create-auto-approval-policies.md)
+ [

# Cómo crear una política de denegación sobre el acceso a los nodos justo a tiempo
](systems-manager-just-in-time-node-access-create-deny-access-policies.md)
+ [

# Cómo crear políticas de aprobación para el acceso a los nodos justo a tiempo con Amazon Q
](systems-manager-just-in-time-node-access-create-approval-policies-q-ide-cli.md)

# Cómo crear políticas de aprobación manual sobre el acceso a los nodos justo a tiempo
<a name="systems-manager-just-in-time-node-access-create-manual-policies"></a>

En el siguiente procedimiento, se describe cómo crear políticas de aprobación manual. Systems Manager le permite crear hasta 50 políticas de aprobación manual por Cuenta de AWS y Región de AWS.

**Cómo crear una política de aprobación manual**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. En el panel de navegación, seleccione **Administrar acceso a nodos**.

1. En la sección **Detalles de la política** del paso **Crear política de aprobación manual**, introduzca un nombre y una descripción para la política de aprobación.

1. Introduzca un valor en **Duración del acceso**. Esta es la cantidad máxima de tiempo que un usuario puede tener la sesión iniciada en un nodo después de que se apruebe una solicitud de acceso. Este valor debe estar entre 1 y 336 horas. 

1. En la sección **Destinos de los nodos**, introduzca los pares clave-valor de etiquetas asociados a los nodos sobre los que desea que se aplique la política. Si ninguna de las etiquetas especificadas en la política está asociada a un nodo, entonces esta no se aplica.

1. En la sección **Aprobadores de solicitudes de acceso**, introduzca los usuarios o grupos que desee que puedan aprobar las solicitudes de acceso a los destinos de los nodos en la política. Los aprobadores de las solicitudes de acceso pueden ser usuarios y grupos de IAM Identity Center o roles de IAM. Puede especificar hasta 5 aprobadores por nivel y hasta 5 niveles de aprobadores.

1. Seleccione **Crear política de aprobación manual**.

# Estructura de instrucciones y operadores integrados para políticas de aprobación automática y denegación de acceso
<a name="auto-approval-deny-access-policy-statement-structure"></a>

En la siguiente tabla, se muestra la estructura de las políticas de aprobación automática y denegación de acceso.


| Componente | Sintaxis | 
| --- | --- | 
| effect |  `permit \| forbid`  | 
| scope |  `(principal, action, resource)`  | 
| cláusula de condición |  <pre>when {<br />    principal or resource has attribute name             <br />};</pre>  | 

## Componentes de política
<a name="policy-components"></a>

Una política de aprobación automática o denegación de acceso contiene los siguientes componentes:
+ **Efecto**: `permit` (permitir) o `forbid` (denegar) el acceso.
+ **Alcance**: las entidades principales, las acciones y los recursos a los que se aplica el efecto. Puede dejar el alcance de Cedar sin definir si no identifica entidades principales, acciones o recursos específicos. En este caso, la política se aplica a todas las entidades principales, acciones y recursos posibles. Para el acceso a los nodos justo a tiempo, `action` siempre es `AWS::SSM::Action::"getTokenForInstanceAccess"`.
+ **Cláusula de condición**: el contexto en el que se aplica el efecto.

## Comentarios
<a name="auth-policies-policy-comments"></a>

Puede incluir comentarios en sus políticas de . Los comentarios se definen como una línea que comienza por `//` y termina con un carácter de nueva línea.

En el siguiente ejemplo se muestran comentarios en una política.

```
// Allows users in the Engineering group from the Platform org to automatically connect to nodes tagged with Engineering and Production keys. 
permit (
    principal in AWS::IdentityStore::Group::"d4q81745-r081-7079-d789-14da1EXAMPLE",
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    principal has organization && resource.hasTag("Engineering") && resource.hasTag("Production") && principal.organization == "Platform"
};
```

## Cláusulas múltiples
<a name="multiple-clauses"></a>

Puede utilizar más de una cláusula de condición en una declaración de política mediante el operador `&&`.

```
// Allow access if node has tag where the tag key is Environment 
// & tag value is Development 

permit(principal, action == AWS::SSM::getTokenForInstanceAccess, resource)
when {
    resource.hasTag("Environment") &&
    resource.getTag("Environment") == "Development"
};
```

## Caracteres reservados
<a name="reserved-characters"></a>

El siguiente ejemplo muestra cómo escribir una política si una propiedad de contexto utiliza un `:` (punto y coma), que es un carácter reservado en el lenguaje de la política.

```
permit (
    principal,
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    principal has employeeNumber && principal.employeeNumber like "E-1*" && resource.hasTag("Purpose") && resource.getTag("Purpose") == "Testing"
}
```

Para ver otros ejemplos, consulte [Ejemplo de instrucciones de políticas](#policy-statement-examples).

## Esquema de acceso a los nodos justo a tiempo
<a name="auto-approval-deny-access-policy-statement-schema"></a>

A continuación, se muestra el esquema Cedar para el acceso a los nodos justo a tiempo.

```
namespace AWS::EC2 {
    entity Instance tags String;
}


namespace AWS::IdentityStore {
    entity Group;
    
    entity User in [Group] {
    employeeNumber?: String,
    costCenter?: String,
    organization?: String,
    division?: String,
    };

}


namespace AWS::IAM {

    entity Role;
    
    type AuthorizationContext = {
        principalTags: PrincipalTags,
    };
    
    entity PrincipalTags tags String;
}

namespace AWS::SSM {

    entity ManagedInstance tags String;

    action "getTokenForInstanceAccess" appliesTo {
    principal: [AWS::IdentityStore::User],
    resource: [AWS::EC2::Instance, AWS::SSM::ManagedInstance],
    context: {
        "iam": AWS::IAM::AuthorizationContext
        }
    };
}
```

## Operadores integrados
<a name="built-in-policy-operators"></a>

Al crear el contexto de una política de aprobación automática o denegación de acceso con varias condiciones, puede utilizar el operador `&&` para añadir condiciones adicionales. También hay muchos otros operadores integrados que puede utilizar para añadir un poder de expresión adicional a las condiciones de su política. La siguiente tabla contiene todos los operadores integrados como referencia.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/systems-manager/latest/userguide/auto-approval-deny-access-policy-statement-structure.html)

## Ejemplo de instrucciones de políticas
<a name="policy-statement-examples"></a>

A continuación, se muestran ejemplos de instrucciones de políticas.

```
// Users assuming IAM roles with a principal tag of "Elevated" can automatically access nodes tagged with the "Environment" key when the value equals "prod"
permit(principal, action == AWS::SSM::getTokenForInstanceAccess, resource)
when {
    // Verify IAM role principal tag
    context.iam.principalTags.getTag("AccessLevel") == "Elevated" &&
    
    // Verify the node has a tag with "Environment" tag key and a tag value of "prod"
    resource.hasTag("Environment") &&
    resource.getTag("Environment") == "prod"
};
```

```
// Identity Center users in the "Contractor" division can automatically access nodes tagged with the "Environment" key when the value equals "dev"
permit(principal, action == AWS::SSM::getTokenForInstanceAccess, resource)
when {
    // Verify that the user is part of the "Contractor" division
    principal.division == "Contractor" &&
    
    // Verify the node has a tag with "Environment" tag key and a tag value of "dev"
    resource.hasTag("Environment") &&
    resource.getTag("Environment") == "dev"
};
```

```
// Identity Center users in a specified group can automatically access nodes tagged with the "Environment" key when the value equals "Production"
permit(principal in AWS::IdentityStore::Group::"d4q81745-r081-7079-d789-14da1EXAMPLE",
    action == AWS::SSM::getTokenForInstanceAccess,
    resource)
when {
    resource.hasTag("Environment") &&
    resource.getTag("Environment") == "Production"
};
```

# Cómo crear una política de aprobación automática sobre el acceso a los nodos justo a tiempo
<a name="systems-manager-just-in-time-node-access-create-auto-approval-policies"></a>

En las políticas de aprobación automática, se utiliza el lenguaje de políticas Cedar para definir qué usuarios pueden conectarse automáticamente a los nodos especificados sin aprobación manual. Una política de aprobación automática contiene varias instrucciones `permit` que especifican `principal` y `resource`. Cada instrucción incluye una cláusula `when` que define las condiciones de la aprobación automática.

A continuación, se muestra un ejemplo de política de aprobación automática.

```
permit (
    principal in AWS::IdentityStore::Group::"e8c17310-e011-7089-d989-10da1EXAMPLE",
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    principal has costCenter && resource.hasTag("CostCenter") && principal.costCenter == resource.getTag("CostCenter")
};

permit (
    principal in AWS::IdentityStore::Group::"d4q81745-r081-7079-d789-14da1EXAMPLE",
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    principal has organization && resource.hasTag("Engineering") && resource.hasTag("Production") && principal.organization == "Platform"
};

permit (
    principal,
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    principal has employeeNumber && principal.employeeNumber like "E-1*" && resource.hasTag("Purpose") && resource.getTag("Purpose") == "Testing"
};
```

En el siguiente procedimiento, se describe cómo crear una política de aprobación automática sobre el acceso a los nodos justo a tiempo. Si una solicitud de acceso se aprueba automáticamente, la duración del acceso es de 1 hora. Este valor no se puede cambiar. Solo puede tener una política de aprobación automática por Cuenta de AWS y Región de AWS. Para obtener más información acerca de cómo crear instrucciones de políticas, consulte [Estructura de instrucciones y operadores integrados para políticas de aprobación automática y denegación de acceso](auto-approval-deny-access-policy-statement-structure.md).

**Cómo crear una política de aprobación automática**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. En el panel de navegación, seleccione **Administrar acceso a nodos**.

1. En la pestaña **Políticas de aprobación**, seleccione **Crear política de aprobación automática**.

1. Introduzca la instrucción de la política de aprobación automática en la sección **Instrucción de la política**. Puede usar las **Instrucciones de ejemplo** proporcionadas que le ayudarán a crear la política.

1. Seleccione **Crear política de aprobación automática**.

# Cómo crear una política de denegación sobre el acceso a los nodos justo a tiempo
<a name="systems-manager-just-in-time-node-access-create-deny-access-policies"></a>

Las políticas de denegación de acceso utilizan el lenguaje de políticas Cedar para definir a qué nodos no se pueden conectar automáticamente los usuarios sin una aprobación manual. Una política de denegación de acceso contiene varias instrucciones `forbid` que especifican la `principal` y el `resource`. Cada instrucción incluye una cláusula `when` que define las condiciones para denegar explícitamente la aprobación automática.

A continuación, se muestra un ejemplo de política de denegación de acceso.

```
forbid (
    principal in AWS::IdentityStore::Group::"e8c17310-e011-7089-d989-10da1EXAMPLE",
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    resource.hasTag("Environment") && resource.getTag("Environment") == "Production"
};

forbid (
    principal,
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    principal has division && principal.division != "Finance" && resource.hasTag("DataClassification") && resource.getTag("DataClassification") == "Financial"
};


forbid (
    principal,
    action == AWS::SSM::Action::"getTokenForInstanceAccess",
    resource
)
when {
    
    principal has employeeNumber && principal.employeeNumber like "TEMP-*" && resource.hasTag("Criticality") && resource.getTag("Criticality") == "High"
};
```

En el siguiente procedimiento, se describe cómo crear una política de denegación de acceso sobre los nodos justo a tiempo. Para obtener más información acerca de cómo crear instrucciones de políticas, consulte [Estructura de instrucciones y operadores integrados para políticas de aprobación automática y denegación de acceso](auto-approval-deny-access-policy-statement-structure.md).

**nota**  
Observe la siguiente información.  
Puede crear políticas de denegación de acceso mientras está conectado a la cuenta de administración de AWS o a la cuenta de administrador delegado. La organización de AWS Organizations solo puede tener una política de denegación de acceso.
El acceso a los nodos justo a tiempo utiliza AWS Resource Access Manager (AWS RAM) para compartir su política de denegación de acceso con las cuentas de miembro de su organización. Si desea compartir su política de denegación de acceso con las cuentas de miembro de su organización, debe habilitar el uso compartido de recursos desde la cuenta de administración de su organización. Para obtener más información, consulte [Habilitar el uso compartido de recursos dentro de AWS Organizations](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs) en la *Guía del usuario de AWS RAM*.

**Cómo crear una política de denegación de acceso**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. En el panel de navegación, seleccione **Administrar acceso a nodos**.

1. En la pestaña **Políticas de aprobación**, seleccione **Crear política de denegación de acceso**.

1. Introduzca su instrucción para la política de denegación de acceso en la sección **Instrucción de la política**. Puede usar las **Instrucciones de ejemplo** proporcionadas que le ayudarán a crear la política.

1. Seleccione **Crear política de denegación de acceso**.

# Cómo crear políticas de aprobación para el acceso a los nodos justo a tiempo con Amazon Q
<a name="systems-manager-just-in-time-node-access-create-approval-policies-q-ide-cli"></a>

El uso de Amazon Q Developer para la línea de comandos proporciona orientación y soporte en varios aspectos del desarrollo de software. En el caso del acceso a los nodos justo a tiempo, Amazon Q le permite crear políticas de aprobación mediante la generación y actualización del código de las políticas, el análisis de las instrucciones de las políticas y mucho más. A continuación, se describe cómo crear políticas de aprobación mediante Amazon Q para la línea de comandos.

## Cómo identificar su caso de uso
<a name="identify-use-case"></a>

El primer paso para crear políticas de aprobación es definir claramente su caso de uso. Por ejemplo, en su organización, es posible que desee aprobar automáticamente las solicitudes de acceso a los nodos con una etiqueta `Environment:Testing`. También puede denegar explícitamente las aprobaciones automáticas a los nodos con una etiqueta `Environment:Production` si el ID de un empleado comienza por `TEMP`. En el caso de los nodos con una etiqueta `Tier:Database`, es posible que desee requerir dos niveles de aprobaciones manuales.

En cualquier situación, es posible que prefiera una política o condición en lugar de otra. Por lo tanto, recomendamos que defina claramente los comportamientos de la política que desee a fin de determinar qué instrucciones se ajustan mejor a su caso de uso y sus preferencias.

## Cómo configurar el entorno de desarrollo.
<a name="set-up-environment"></a>

Instale Amazon Q para la línea de comandos donde desee crear las políticas de aprobación. Para obtener información sobre la instalación de Amazon Q para la línea de comandos, consulte [Instalación de Amazon Q para la línea de comandos](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-installing.html) en la *Guía del usuario de Amazon Q Developer*.

También recomendamos instalar el servidor MCP para obtener la documentación de AWS. Este servidor MCP conecta Amazon Q para la línea de comandos con los recursos de documentación más actuales. Para obtener información sobre el uso de MCP con Amazon Q para la línea de comandos, consulte [Using MCP with Amazon Q Developer](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/command-line-mcp.html) en la *Guía del usuario de Amazon Q Developer*. 

Para obtener más información sobre el servidor MCP de la documentación de AWS, consulte [AWS Documentation MCP Server](https://awslabs.github.io/mcp/servers/aws-documentation-mcp-server/). 

Si aún no lo ha hecho, instale y configure la AWS CLI. Para obtener más información, consulte [Instalación o actualización de la última versión de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

## Cómo desarrollar el contenido de la política de aprobación
<a name="develop-content"></a>

Luego de identificar el caso de uso y configurar el entorno, ya puede desarrollar el contenido de las políticas. Su caso de uso y sus preferencias determinarán en gran medida los tipos de políticas de aprobación e instrucciones que utilice.

Si no sabe cómo utilizar una política concreta o necesita más información sobre el esquema de una política, consulte [Cómo crear políticas de aprobación para sus nodos](systems-manager-just-in-time-node-access-approval-policies.md) y los temas siguientes. En estos temas, se explica en detalle cómo se evalúan las políticas y se proporcionan ejemplos prácticos de instrucciones.

En el siguiente procedimiento, se describe cómo crear políticas de aprobación con Amazon Q para la línea de comandos.

**nota**  
Amazon Q Developer utiliza IA generativa. Es posible que necesite verificar las respuestas. Consulte [Política de IA responsable de AWS](https://aws.amazon.com/ai/responsible-ai/policy/).

**Cómo crear políticas de aprobación mediante Amazon Q para la línea de comandos**

1. Abra la terminal e inicie una sesión con Amazon Q.

   ```
   $ q chat
   ```

1. Introduzca una petición y describa qué tipo de instrucción de política desee crear. Por ejemplo, a partir de la situación anterior para una política de aprobación, podría introducir la siguiente petición:

   ```
   Create a Cedar policy statement that allows a principal to use the “getTokenForInstanceAccess" action for a resource 
   that has a tag key “Environment” and tag value of “Testing”. Use the following example statement for reference to verify the syntax.
   
   permit (
       principal in AWS::IdentityStore::Group::"e8c17310-e011-7089-d989-10da1EXAMPLE",
       action == AWS::SSM::Action::"getTokenForInstanceAccess",
       resource
   )
   when {
       principal has organization && resource.hasTag("Engineering") && resource.hasTag("Production") && principal.organization == "Platform"
   };
   
   The Cedar policy statement you create must be valid. Validate the Cedar statement using the AWS documentation provided for just-in-time node access policy statement structure and make sure you abide by the schema.
   ```

1. Al introducir esta petición de ejemplo, se obtuvo el siguiente resultado:

   ```
   Based on the AWS documentation for Cedar policy statements and the examples provided, I'll create a valid Cedar policy 
   statement that allows a principal to use the "getTokenForInstanceAccess" action for resources with the tag key "Environment" and tag value "Testing".
                               
   Here's the Cedar policy statement:
   
   permit (
       principal,
       action == AWS::SSM::Action::"getTokenForInstanceAccess",
       resource
   )
   when {
       resource.hasTag("Environment") &&
       resource.getTag("Environment") == "Testing"
   };
   
   
   This policy statement:
   1. Uses the permit effect to allow access
   2. Applies to any principal (since no specific principal is defined)
   3. Specifically targets the "getTokenForInstanceAccess" action
   4. Applies to resources that have a tag with key "Environment" and value "Testing"
   5. Uses the proper syntax for the condition clause with the hasTag() and getTag() operators
   
   The statement follows the Cedar policy language structure as documented in the AWS Systems Manager documentation for just-in-time node access policies.
   ```

1. Pegue la instrucción de la política en un nuevo archivo Cedar para validar la sintaxis. También puede usar el [área de pruebas de Cedar](https://www.cedarpolicy.com/en/playground) para validar la instrucción.

1. Tras validar la instrucción, guarde el archivo Cedar.

1. Desde la terminal, ejecute el siguiente comando de AWS CLI para crear un documento SSM con el contenido de la política. Antes de utilizar las políticas de aprobación en un entorno de producción, pruébelas con un subconjunto de identidades y nodos en una Cuenta de AWS y Región de AWS.
**nota**  
En el caso de una política de aprobación automática, el nombre del documento debe ser `SSM-JustInTimeAccessAutoApprovalPolicy`. Solo puede haber una política de aprobación automática por Cuenta de AWS y Región de AWS. En el caso de una política de denegación de acceso, el nombre del documento debe ser `SSM-JustInTimeAccessDenyAccessOrgPolicy`. Solo puede haber una política de denegación de acceso por organización de AWS Organizations, y la política debe crearse en la cuenta de administrador delegado de Systems Manager. Las restricciones de denominación de las políticas de aprobación manual son las mismas que las de otros documentos SSM. Para obtener más información, consulte [CreateDocument](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_CreateDocument.html#systemsmanager-CreateDocument-request-Name).

------
#### [ Linux & macOS ]

   ```
   aws ssm create-document \
       --content file://path/to/file/policyContent.cedar \
       --name "SSM-JustInTimeAccessAutoApprovalPolicy" \
       --document-type "AutoApproval"
   ```

------
#### [  Windows  ]

   ```
   aws ssm create-document ^
       --content file://C:\path\to\file\policyContent.cedar ^
       --name "SSM-JustInTimeAccessAutoApprovalPolicy" ^
       --document-type "AutoApproval"
   ```

------
#### [   PowerShell   ]

   ```
   $cedar = Get-Content -Path "C:\path\to\file\policyContent.cedar" | Out-String
   New-SSMDocument `
       -Content $cedar `
       -Name "SSM-JustInTimeAccessAutoApprovalPolicy" `
       -DocumentType "AutoApproval"
   ```

------

# Cómo actualizar las preferencias de sesión de acceso a los nodos justo a tiempo
<a name="systems-manager-just-in-time-node-access-session-preferences"></a>

Con el acceso a los nodos justo a tiempo, puede especificar las preferencias generales de sesión y registro en cada Cuenta de AWS y Región de AWS de su organización. Como alternativa, puede usar CloudFormation StackSets para crear un documento de preferencias de la sesión en varias cuentas y regiones a fin de tener preferencias coherentes. Para obtener información sobre el esquema de los documentos de preferencias de la sesión, consulte [Esquema del documento de Session](session-manager-schema.md).

Para fines de registro, recomendamos utilizar la opción de transmisión con Registros de Amazon CloudWatch. Esta característica permite enviar un flujo continuo de registros de datos de sesión a los Registros de CloudWatch. Los detalles esenciales, como los comandos que un usuario ha ejecutado en una sesión, el ID del usuario que ejecutó los comandos y las marcas de tiempo para el momento en que los datos de sesión se transmiten a los Registros de CloudWatch, se incluyen cuando se efectúa el streaming de los datos de la sesión. Con el streaming de los datos de la sesión, los registros tienen formato JSON para ayudarlo a integrarse a sus soluciones de registro existentes.

Systems Manager no finaliza automáticamente las sesiones de acceso a los nodos justo a tiempo. Como práctica recomendada, especifique los valores para configurar la *duración máxima de la sesión* y el *tiempo de espera de la sesión inactiva*. Con estos valores, podrá evitar que un usuario permanezca conectado a un nodo durante más tiempo que el periodo aprobado en una solicitud de acceso. En el siguiente procedimiento, se describe cómo actualizar las preferencias de la sesión para el acceso a los nodos justo a tiempo.

**importante**  
Debe etiquetar las claves de AWS KMS utilizadas para el cifrado de Session Manager y el registro RDP en el acceso justo a tiempo al nodo con la clave de etiqueta `SystemsManagerJustInTimeNodeAccessManaged` y el valor de la etiqueta `true`.  
Para obtener más información acerca del etiquetado de claves KMS, consulte [Etiquetas en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html) en la *Guía para desarrolladores de AWS Key Management Service*.

**Cómo actualizar las preferencias de sesión**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Seleccione **Configuración** en el panel de navegación.

1. Seleccione la pestaña **Acceso a los nodos justo a tiempo**.

1. En la sección **Preferencias de la sesión**, seleccione **Editar**.

1. Actualice las preferencias generales y de registro según sea necesario, y seleccione **Guardar**.

# Cómo configurar las notificaciones para las solicitudes de acceso justo a tiempo
<a name="systems-manager-just-in-time-node-access-notifications"></a>

Puede configurar Systems Manager para que envíe notificaciones a las direcciones de correo electrónico o al cliente de chat para los aprobadores y el solicitante cuando un usuario cree una solicitud de acceso a los nodos justo a tiempo. La notificación contiene el motivo de la solicitud de acceso proporcionado por el solicitante, la Cuenta de AWS, la Región de AWS, el estado de la solicitud y el ID del nodo de destino. Actualmente, Systems Manager admite los clientes Slack y Microsoft Teams mediante la integración con Amazon Q Developer en aplicaciones de chat. Cuando se utilizan notificaciones a través de clientes de chat, los aprobadores de las solicitudes de acceso pueden interactuar directamente con estas solicitudes. Esto elimina la necesidad de iniciar sesión en la consola para tomar medidas en relación con las solicitudes de acceso.

**Antes de empezar**  
Antes de configurar un cliente de chat para las notificaciones de acceso a los nodos justo a tiempo, tenga en cuenta el siguiente requisito:
+ Si utiliza roles de IAM para gestionar las identidades de los usuarios en la cuenta, debe asociar manualmente las direcciones de correo electrónico de los aprobadores o solicitantes que posean el rol asociado y a quienes desee enviar notificaciones. De lo contrario, no se podrá notificar por correo electrónico a los destinatarios previstos.

En los siguientes procedimientos, se describe cómo configurar las notificaciones para las solicitudes de acceso a los nodos justo a tiempo.

**Cómo configurar un cliente de chat para las notificaciones de acceso a los nodos justo a tiempo**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Seleccione **Configuración** en el panel de navegación.

1. Seleccione la pestaña **Acceso a los nodos justo a tiempo**.

1. En la sección **Chat**, seleccione **Configurar nuevo cliente**.

1. En el menú desplegable **Seleccionar tipo de cliente**, elija el tipo de cliente de chat que desee configurar y seleccione **Siguiente**.

1. Se le solicitará que permita que Amazon Q Developer en aplicaciones de chat acceda al cliente de chat que utiliza. Seleccione **Permitir**.

1. En la sección **Configurar canal**, introduzca la información del canal del cliente de chat y seleccione los tipos de notificaciones que desee recibir.

1. Si está configurando las notificaciones de Slack, invite a "@Amazon Q" a todos los canales de Slack en los que se estén configurando las notificaciones.

1. Seleccione **Configurar canal**.

**nota**  
Para poder aprobar o rechazar las solicitudes de acceso directamente desde un canal de Slack, asegúrese de que el rol de IAM configurado con el canal de Slack tenga permisos `ssm:SendAutomationSignal` y una política de confianza que incluya el chatbot:  

```
{
            "Effect": "Allow",
            "Principal": {
                "Service": "chatbot.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
}
```

**Cómo configurar las notificaciones por correo electrónico para las notificaciones de acceso a los nodos justo a tiempo**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Seleccione **Configuración** en el panel de navegación.

1. Seleccione la pestaña **Acceso a los nodos justo a tiempo**.

1. En la sección **Correo electrónico**, seleccione **Editar**.

1. Seleccione **Añadir correos electrónicos**, elija el **rol de IAM** al que desee asociar manualmente las direcciones de correo electrónico.

1. Ingrese su dirección de correo electrónico en el campo **Dirección de correo electrónico**. Siempre que se cree una solicitud de acceso que requiera la aprobación del rol de IAM que especificó, se notificará a las direcciones de correo electrónico asociadas a ese rol.

1. Seleccione **Añadir dirección de correo electrónico**.

# Cómo grabar conexiones RDP
<a name="systems-manager-just-in-time-node-access-rdp-recording"></a>

El acceso a los nodos justo a tiempo incluye la posibilidad de grabar las conexiones con el protocolo para escritorios remotos (RDP) realizadas con los nodos de Windows Server. Para grabar las conexiones RDP, se necesita un bucket de S3 y una clave de AWS Key Management Service (AWS KMS) administrada por el cliente. La AWS KMS key se usa para cifrar temporalmente los datos de la grabación mientras se generan y almacenan en los recursos de Systems Manager. La clave administrada por el cliente debe ser una clave simétrica con un uso de cifrado y descifrado. Puede usar una clave multirregional para la organización o debe crear una clave administrada por el cliente en cada región en la que haya habilitado el acceso a los nodos justo a tiempo.

Si habilitó el cifrado de KMS en el bucket de S3 en el que almacena las grabaciones, debe dar acceso a la clave administrada por el cliente. Esta clave se utiliza para el cifrado del bucket en la entidad principal de servicio `ssm-guiconnect`. Esta clave administrada por el cliente puede ser diferente a la que especifique en la configuración de grabación, y debe incluir para que se requiere el permiso `kms:CreateGrant` para establecer conexiones. 

## Configuración del cifrado de bucket de S3 para las grabaciones RDP
<a name="rdp-recording-bucket-encryption"></a>

Las grabaciones de su conexión se almacenan en el bucket de S3 que especifique al habilitar la grabación RDP.

Si utiliza una clave de KMS como mecanismo de cifrado predeterminado para el bucket de S3 (SSE-KMS), debe permitir que la entidad principal de servicio `ssm-guiconnect` acceda a la acción `kms:GenerateDataKey` en la clave. Recomendamos usar una clave administrada por el cliente al usar el cifrado de SSE-KMS con un bucket de S3. Esto se debe a que puede actualizar la política de claves asociada para una clave administrada por el cliente. No puede actualizar las políticas de claves para Claves administradas por AWS.

**importante**  
Debe etiquetar las claves de AWS KMS utilizadas para el cifrado de Session Manager y el registro de RDP en el acceso al nodo justo a tiempo con la clave de etiqueta `SystemsManagerJustInTimeNodeAccessManaged` y el valor de etiqueta `true`.  
Para obtener más información acerca del etiquetado de claves KMS, consulte [Etiquetas en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html) en la *Guía para desarrolladores de AWS Key Management Service*.

Utilice la siguiente política de claves administrada por el cliente para permitir que el servicio `ssm-guiconnect` acceda a la clave KMS para el almacenamiento en S3. Para obtener información sobre la actualización de una clave administrada por el cliente, consulte [Cambio de una política de claves](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html) en la *Guía para desarrolladores de AWS Key Management Service*.

Reemplace cada *example resource placeholder* con su propia información:
+ *account-id* representa el ID de Cuenta de AWS que inicia la conexión.
+ *region* representa la Región de AWS donde está ubicado el bucket de S3. (Puede usar `*` si el bucket recibirá grabaciones de varias regiones. Ejemplo: `s3.*.amazonaws.com`.)

**nota**  
Puede usar `aws:SourceOrgID` en la política en lugar de `aws:SourceAccount` si la cuenta pertenece a una organización en AWS Organizations.

```
{
    "Sid": "Allow the GUI Connect service principal to access S3",
    "Effect": "Allow",
    "Principal": {
        "Service": "ssm-guiconnect.amazonaws.com"
    },
    "Action": [
        "kms:GenerateDataKey*"
    ],
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "aws:SourceAccount": "account-id"
        },
        "StringLike": {
            "kms:ViaService": "s3.region.amazonaws.com"
        }
    }
}
```

## Cómo configurar permisos de IAM para grabar conexiones RDP
<a name="rdp-recording-iam-policy-examples"></a>

Además de los permisos de IAM necesarios del acceso a los nodos justo a tiempo, el usuario o el rol que utilice deben tener los siguientes permisos en función de la tarea que deba realizar.

**Permisos para configurar la grabación de conexiones**  
Para configurar la grabación de conexiones RDP, se necesitan los siguientes permisos:
+ `ssm-guiconnect:UpdateConnectionRecordingPreferences`
+ `ssm-guiconnect:GetConnectionRecordingPreferences`
+ `ssm-guiconnect:DeleteConnectionRecordingPreferences`
+ `kms:CreateGrant`

**Permisos para iniciar conexiones**  
Para establecer conexiones RDP con acceso a los nodos justo a tiempo, se necesitan los siguientes permisos:
+ `ssm-guiconnect:CancelConnection`
+ `ssm-guiconnect:GetConnection`
+ `ssm-guiconnect:StartConnection`
+ `kms:CreateGrant`

**Antes de empezar**  
Para almacenar las grabaciones de las conexiones, primero debe crear un bucket de S3 y añadir la siguiente política de bucket. Reemplace cada *example resource placeholder* con su propia información.

Para obtener información sobre cómo agregar una política de bucket, consulte [Cómo agregar una política de bucket mediante la consola de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/add-bucket-policy.html) en la *Guía del usuario de Amazon Simple Storage Service*.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ConnectionRecording",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "ssm-guiconnect.amazonaws.com"
                ]
            },
            "Action": "s3:PutObject",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket", 
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ],
            "Condition":{
            "StringEquals":{
                "aws:SourceAccount":"111122223333"
                }
            }            
        }
    ]
}
```

------

## Habilitación y configuración de la grabación de conexiones RDP
<a name="enable-rdp-connection-recording"></a>

En el siguiente procedimiento, se describe cómo habilitar y configurar la grabación de conexiones RDP.

**Para habilitar y configurar la grabación de conexiones RDP**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Seleccione **Configuración** en el panel de navegación.

1. Seleccione la pestaña **Acceso a los nodos justo a tiempo**.

1. En la sección **Grabación RDP**, seleccione **Habilitar grabación RDP**.

1. Elija el bucket de S3 en el que desee cargar las grabaciones de las sesiones.

1. Elija la clave administrada por el cliente que desee utilizar para cifrar temporalmente los datos de la grabación mientras se generan y almacenan en los recursos de Systems Manager. Puede ser una clave administrada por el cliente diferente a la que utiliza para cifrar el bucket.

1. Seleccione **Guardar**.

## Valores de estado de la grabación de conexiones RDP
<a name="rdp-recording-status"></a>

Los valores de estado válidos para las grabaciones de conexiones RDP son los siguientes:
+ `Recording`: la conexión está en proceso de grabación.
+ `Processing`: el video se está procesando una vez finalizada la conexión.
+ `Finished`: estado terminal exitoso; el video de grabación de la conexión se procesó correctamente y se cargó en el bucket especificado. 
+ `Failed`: estado terminal fallido. La conexión no se grabó correctamente. 
+ `ProcessingError`: se produjeron uno o más errores o fallos intermedios durante el procesamiento del vídeo. Las posibles causas incluyen fallos de dependencia del servicio o falta de permisos debido a una configuración incorrecta en el bucket de S3 especificado para almacenar las grabaciones. El servicio sigue intentando procesar cuando la grabación se encuentra en este estado.

**nota**  
`ProcessingError` puede deberse a que la entidad principal de servicio `ssm-guiconnect` no tenga permiso para cargar objetos en el bucket de S3 una vez establecida la conexión. Otra posible causa es la falta de permisos de KMS en la clave de KMS que se utiliza para el cifrado del bucket de S3.

# Cómo modificar destinos
<a name="systems-manager-just-in-time-node-access-modify-targets"></a>

Cuando configura el acceso a los nodos justo a tiempo, debe elegir los *destinos* en los que desee hacerlo. Los destinos consisten en unidades organizativas (OU) de AWS Organizations y Regiones de AWS. De forma predeterminada, los mismos destinos que eligió al configurar la consola unificada de Systems Manager se seleccionan para el acceso a los nodos justo a tiempo. Puede elegir configurar el acceso a los nodos justo a tiempo para todos los mismos destinos o para un subconjunto de los destinos que especificó al configurar la consola unificada de Systems Manager. No es posible añadir nuevos destinos que no se seleccionaron al configurar la consola unificada de Systems Manager. Puede cambiar los destinos que seleccionó después de configurar el acceso a los nodos justo a tiempo.

En el siguiente procedimiento, se describe cómo modificar los destinos para el acceso a los nodos justo a tiempo.

**Cómo modificar destinos**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Seleccione **Configuración** en el panel de navegación.

1. Seleccione la pestaña **Acceso a los nodos justo a tiempo**.

1. En la sección **Objetivos**, seleccione **Editar**.

1. Seleccione las **Unidades organizativas** y las **Regiones** en las que desee usar el acceso a los nodos justo a tiempo.

1. Seleccione **Guardar**.

# Cómo cambiar proveedores de identidades
<a name="systems-manager-just-in-time-node-access-change-identity-provider"></a>

De forma predeterminada, el acceso a los nodos justo a tiempo utiliza IAM como proveedor de identidades. Después de habilitar el acceso a los nodos justo a tiempo, los clientes que utilicen la consola unificada con una organización pueden modificar esta configuración para usar IAM Identity Center. El acceso a los nodos justo a tiempo no admite IAM Identity Center como proveedor de identidades cuando se configura para una sola cuenta y región.

En el siguiente procedimiento, se describe cómo modificar el proveedor de identidades para el acceso a los nodos justo a tiempo.

**Cómo modificar proveedores de identidades**

1. Abra la consola de AWS Systems Manager en [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Seleccione **Configuración** en el panel de navegación.

1. Seleccione la pestaña **Acceso a los nodos justo a tiempo**.

1. En la sección **Identidad del usuario**, seleccione **Editar**.

1. Elija **AWS IAM Identity Center**.

1. Seleccione **Guardar**.