Cuando integra una aplicación personalizada con el SDK de instancias de KMS o el SDK de secretos, debe usar un ClientKey de un punto de acceso de aplicación para verificar la identidad y los permisos. En este tema se describe cómo crear un punto de acceso de aplicación.
Notas
Como práctica recomendada de seguridad, cree un punto de acceso de aplicación independiente para cada aplicación que integre con KMS. De esta manera, los permisos de acceso quedan aislados.
De forma predeterminada, un ClientKey tiene una vigencia de cinco años. Puede especificar un periodo de validez al crear el ClientKey. Se recomienda establecer dicho periodo en un año. Debe rotar el ClientKey antes de que caduque para evitar interrupciones del servicio. Para obtener más información, consulte Rotate a ClientKey.
Requisitos previos
Compró y habilitó una instancia de KMS. Para obtener más información, consulte Purchase and enable a KMS instance.
Creó una clave o un secreto. Para obtener más información, consulte Get started with Key Management y Get started with Secrets Manager.
Crear un punto de acceso de aplicación en la consola
Puede utilizar la creación rápida o la creación estándar. Si necesita integrar rápidamente su aplicación con un SDK, utilice la creación rápida. En comparación con la creación estándar, la creación rápida presenta las siguientes limitaciones:
Con la creación rápida, solo puede acceder a claves y secretos mediante un endpoint de instancia de KMS. La creación estándar también permite acceder a secretos mediante un endpoint de servicio de KMS.
El periodo de validez del ClientKey es fijo de cinco años y no se puede personalizar. Se recomienda rotar el ClientKey después de un año de uso. Para obtener más información, consulte Rotate a ClientKey.
En la política de permisos del punto de acceso de aplicación, el parámetro Accessible Resources toma de forma predeterminada todas las claves y secretos de la instancia de KMS especificada. Puede modificar la política de permisos después de crear el punto de acceso de aplicación. Para obtener más información, consulte Manage an application access point.
Método 1: Creación rápida
Inicie sesión en la consola de Key Management Service. En la barra de navegación superior, seleccione una región. En el panel de navegación izquierdo, elija .
-
En la pestaña Application Access, haga clic en Create AAP. En el panel Create AAP, configure los parámetros.
Parámetro
Descripción
Mode
Seleccione Quick Creation.
Scope (KMS Instance)
Seleccione la instancia de KMS a la que necesita acceder su aplicación.
Application Access Point Name
Introduzca un nombre para el punto de acceso de aplicación.
Authentication Method
Se establece en ClientKey y no se puede cambiar.
Encryption Algorithm
Seleccione el algoritmo de cifrado que se usa para cifrar el ClientKey. Valores válidos: TripleDES-CBC y RC2-CBC (predeterminado).
NotaRC2-CBC funciona en la mayoría de los entornos y es el recomendado. Si su entorno tiene requisitos de algoritmos más estrictos y no admite RC2-CBC, seleccione TripleDES-CBC.
Default Permission Policy
El valor es
key/secret/y no se puede cambiar. Esto significa que la aplicación puede acceder a todas las claves y secretos de la instancia de KMS especificada. -
Haga clic en OK. El navegador descarga automáticamente el ClientKey. El ClientKey incluye los siguientes archivos:
Credential (ClientKeyContent): el nombre de archivo predeterminado es
clientKey_****.json.Contraseña de la credencial (ClientKeyPassword): el nombre de archivo predeterminado es
clientKey_****_Password.txt.
Método 2: Creación estándar
Inicie sesión en la consola de Key Management Service. En la barra de navegación superior, seleccione una región. En el panel de navegación izquierdo, elija .
-
Cree una regla de acceso de red.
NotaSi no necesita restringir el acceso según las direcciones IP de origen, no es necesario crear una regla de acceso de red. Sin embargo, para mayor seguridad, se recomienda configurar una.
Haga clic en la pestaña Network Access Rules y luego haga clic en Create Network Access Rule.
-
En el panel Create Network Access Rule, configure los parámetros y haga clic en OK.
Parámetro
Descripción
Rule Name
Introduzca un nombre para la regla de acceso de red.
Network Type
Private: la aplicación utiliza un endpoint de instancia de KMS para acceder a claves y secretos.
Public: la aplicación utiliza un endpoint de servicio de KMS (endpoint público) para acceder a secretos.
VPC: la aplicación utiliza un endpoint de servicio de KMS (endpoint de VPC) para acceder a secretos. Esta opción solo está disponible en las regiones China (Hangzhou), China (Shanghai), China (Shenzhen) y China (Zhangjiakou).
NotaOperaciones criptográficas: solo son compatibles cuando se usa el SDK de instancias de KMS para acceder a KMS mediante un endpoint de instancia de KMS. Esto requiere una regla de acceso de red con Network Type establecido en Private.
Recuperación de valores de secretos: puede usar el SDK de instancias de KMS o el SDK de secretos. Se recomienda usar el SDK de secretos con una regla de acceso de red cuyo Network Type esté establecido en Private para lograr un QPS más alto y mayor seguridad.
SDK de instancias de KMS: el tipo de red debe ser Private. La dirección IP de origen debe ser una dirección IP de la VPC asociada con la instancia de KMS.
SDK de secretos: el tipo de red puede ser Private, Public o VPC.
Allowed Source IP Addresses
En la mayoría de los casos, introduzca la dirección IP de su servidor de aplicaciones. La dirección IP debe corresponder al tipo de red seleccionado.
Si el tipo de red es Private, introduzca una dirección IP de la VPC asociada con la instancia de KMS.
Si el tipo de red es Public, introduzca una dirección IP pública.
Si el tipo de red es VPC, introduzca un ID de VPC y una dirección IP de VPC.
Description
Introduzca una descripción para la regla.
-
Cree una política de permisos.
Haga clic en la pestaña Policies y luego haga clic en Create Policy.
-
En el panel Create Policy, configure los parámetros y haga clic en OK.
Parámetro
Descripción
Policy Name
Introduzca un nombre para la política de permisos.
Scope
Si seleccionó Private para Network Type al crear una regla de acceso de red, seleccione una instancia de KMS específica. Si seleccionó Public o VPC para Network Type, seleccione Shared KMS Gateway.
RBAC Permissions
Si seleccionó una instancia de KMS específica para Scope:
CryptoServiceKeyUser: permite usar las claves de la instancia de KMS. Este permiso admite las operaciones criptográficas de la API de la instancia. Para obtener más información, consulte Key-related operations.
CryptoServiceSecretUser: permite usar los secretos de la instancia de KMS. Este permiso admite las operaciones relacionadas con secretos de la API de la instancia. Para obtener más información, consulte Secret-related operations.
Si seleccionó Scope como Shared KMS Gateway:
SecretUser: permite usar todos los secretos de la cuenta actual. Este permiso admite la operación openapi GetSecretValue.
Accessible Resources
Seleccione las claves y los secretos a los que necesita acceder la aplicación.
ImportanteSi selecciona varios secretos y la longitud total de sus nombres supera el límite, recibirá un error de "invalid parameter". En ese caso, use un comodín para especificar los secretos accesibles.
Por ejemplo, si establece este parámetro en
secret/rds-ibm*, la aplicación podrá acceder a todos los secretos cuyos nombres tengan el prefijords-ibm.Network Access Rules
Seleccione la regla de acceso de red que creó.
NotaSi no necesita restringir el acceso según las direcciones IP de origen, no es necesario seleccionar una regla de acceso de red. Sin embargo, para mayor seguridad, se recomienda configurar una.
Description
Introduzca una descripción para la política.
-
Cree el punto de acceso de aplicación.
Haga clic en la pestaña Application Access y luego haga clic en Create AAP.
-
En el panel Create AAP, configure los parámetros.
Parámetro
Descripción
Mode
Seleccione Standard Creation.
Application Access Point Name
Introduzca un nombre para el punto de acceso de aplicación.
Authentication Method
Métodos admitidos: ClientKey y RAMRole. En este tema se usa ClientKey como ejemplo.
Encryption Algorithm
Seleccione el algoritmo de cifrado que se usa para cifrar el ClientKey. Valores válidos: TripleDES-CBC y RC2-CBC (predeterminado). Este parámetro es obligatorio y solo aparece cuando el método de autenticación se establece en ClientKey.
NotaRC2-CBC funciona en la mayoría de los entornos y es el recomendado. Si su entorno tiene requisitos de algoritmos más estrictos y no admite RC2-CBC, seleccione TripleDES-CBC.
Encryption Password
Contraseña para cifrar el ClientKey. Debe tener entre 8 y 64 caracteres e incluir caracteres de como mínimo dos de los siguientes tipos: dígitos, letras mayúsculas y minúsculas, y caracteres especiales
~!@#$%^&*?_-.Validity Period
Periodo de validez del ClientKey.
ImportanteSe recomienda establecer el periodo de validez en un año para reducir el riesgo de filtración del ClientKey. Debe rotar el ClientKey antes de que caduque para evitar interrupciones del servicio. Para obtener más información, consulte Rotate a ClientKey.
Policies
Seleccione la política de permisos que creó.
Description
Introduzca una descripción para el punto de acceso de aplicación.
-
Haga clic en OK. El navegador descarga automáticamente el ClientKey. El ClientKey incluye los siguientes archivos:
Credential (ClientKeyContent): el nombre de archivo predeterminado es
clientKey_****.json.Contraseña de la credencial (ClientKeyPassword): el nombre de archivo predeterminado es
clientKey_****_Password.txt.
Crear un punto de acceso de aplicación mediante OpenAPI
Llame a la operación CreateNetworkRule para establecer las direcciones IP privadas o los bloques CIDR que tienen permitido acceder a KMS.
Llame a la operación CreatePolicy para especificar las claves y los secretos a los que puede acceder la aplicación, y vincule la regla de acceso de red.
Llame a la operación CreateApplicationAccessPoint para establecer el método de autenticación y vincular la política de permisos.
Llame a la operación CreateClientKey para establecer la contraseña de cifrado y el periodo de validez del ClientKey, y vincular el punto de acceso de aplicación.
Crear un punto de acceso de aplicación mediante Terraform
Para obtener más información, consulte Create an application access point by using Terraform.
Operaciones relacionadas
Si un punto de acceso de aplicación tiene como ámbito una instancia de KMS, debe configurar el certificado de CA de la instancia y el endpoint de la instancia de KMS durante la integración del SDK. Esto no es necesario si el ámbito es Shared KMS Gateway.
Obtener el certificado de CA de la instancia de KMS
Las instancias de KMS incluyen certificados SSL/TLS integrados y utilizan el protocolo HTTPS para la autenticación y la comunicación cifrada. Use el certificado de CA de la instancia para comprobar la validez del certificado SSL/TLS de dicha instancia. Esta comprobación verifica si el certificado lo emitió la CA correcta, si se encuentra dentro de su periodo de validez y si corresponde al endpoint de la instancia de KMS.
Las instancias de KMS solo admiten TLS 1.2.
En la página Instances, haga clic en la pestaña Software Key Management o Hardware Key Management y luego seleccione la instancia de KMS de destino.
-
Haga clic en el ID de la instancia o en Details en la columna Actions. En la página Details, dentro de la sección Instance CA Certificate, haga clic en Download y guarde el certificado de forma segura.
NotaEl archivo de certificado de CA descargado se denomina de forma predeterminada
PrivateKmsCA_kst-******.pem.
Obtener el endpoint de la instancia de KMS
En la página Instances, haga clic en la pestaña Software Key Management o Hardware Key Management y luego seleccione la instancia de KMS de destino.
Haga clic en el ID de la instancia para ir a la página de detalles y consulte Instance VPC Endpoint.
Para obtener el endpoint de la instancia de KMS, elimine
https://del valor de Instance VPC Endpoint.
Documentación relacionada
Se recomienda eliminar los puntos de acceso de aplicación que ya no estén en uso. Para obtener más información, consulte Manage an application access point.
Se recomienda rotar un ClientKey que haya estado en uso por más de un año. Para obtener más información, consulte Rotate a ClientKey.
KMS envía un evento de alerta cuando un ClientKey está a punto de caducar. Debe supervisar y gestionar estos eventos de inmediato. Para obtener más información, consulte Alert events.