Creación de una política personalizada de TaurusDB
Se pueden crear políticas personalizadas para complementar las políticas de TaurusDB definidas por el sistema.
Puede crear una política personalizada de cualquiera de las siguientes maneras:
- Visual editor: Seleccione servicios en la nube, acciones, recursos y condiciones de solicitud. Esto no requiere conocimiento de la sintaxis de políticas.
- JSON: Escribir políticas desde cero o basándose en una política existente.
Para obtener más información, véase Creación de una política personalizada. En esta sección se proporcionan ejemplos de políticas personalizadas comunes de TaurusDB.
Ejemplo de las políticas personalizadas
- Ejemplo 1: Permitir a los usuarios crear instancias de TaurusDB
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "gaussdb:instance:create" ] } ] }
- Ejemplo 2: Denegar la eliminación de instancias de TaurusDB
Una política con solo permisos "Deny" debe utilizarse junto con otras políticas. Si los permisos asignados a un usuario contienen tanto "Allow" como "Deny", los permisos "Deny" tienen prioridad sobre los permisos "Allow".
El siguiente método se puede utilizar si necesita asignar permisos de la política GaussDB FullAccess a un usuario pero desea evitar que el usuario elimine instancias de TaurusDB. Cree una política personalizada para denegar la eliminación de instancias de TaurusDB y adjunte ambas políticas al grupo al que pertenece el usuario. A continuación, el usuario puede realizar todas las operaciones en las instancias de TaurusDB, excepto eliminar las instancias de TaurusDB. A continuación se muestra un ejemplo de una política de denegación:
{ "Version": "1.1", "Statement": [ { "Effect": "Deny" "Action": [ "gaussdb:instance:delete" ], } ] }
- Ejemplo 3: Definición de permisos para varios servicios en una política
Una política personalizada puede contener las acciones de uno o varios servicios del mismo tipo (globales o a nivel de proyecto). A continuación se muestra una política de ejemplo que contiene acciones de varios servicios:
{ "Version": "1.1", "Statement": [ { "Action": [ "gaussdb:instance:create", "gaussdb:instance:modify", "gaussdb:instance:delete", "vpc:publicIps:list", "vpc:publicIps:update" ], "Effect": "Allow" } ] }