Authorization
En la pestaña AUTHORIZATION puede crear y aplicar reglas de política de autorización para un servicio determinado, así como ver las reglas ya aplicadas.
Es decir, aquí es donde se establece cómo se comprobarán los permisos de acceso cuando se envían peticiones a un servicio dentro de un namespace.
Permisos de acceso
Las acciones que puede realizar en esta pantalla dependen de los permisos establecidos para su usuario en Sensedia Access Control.
La siguiente tabla muestra los posibles permisos y sus acciones:
Permiso | Descripción |
---|---|
List Api Authorizations |
Permite ver la lista con las reglas de política de autorización creadas. |
Read Api Authorizations |
Permite ver los detalles de las configuraciones de las reglas de política de autorización ya creadas. |
Write Api Authorizations |
Permite al usuario crear, editar y eliminar reglas de política de autorización para los servicios. |
Lista de reglas
La pestaña AUTHORIZATION enumera las reglas de política de autorización que ya se han aplicado a un servicio, mostrando la siguiente información:
-
nombre identificador para la regla;
-
métodos que están dentro del ámbito de aplicación de la regla;
-
endpoints a los que se aplica la regla;
-
estado del servicio;
-
fecha de creación de la regla.
Además, la lista contiene iconos de acción:
-
para editar la regla; y
-
para eliminarla.
Configuración de la autorización
Para configurar una nueva regla de política de autorización, haga clic en el botón ADD NEW RULE y rellene los campos siguientes:
-
Name: nombre del identificador de la nueva regla, que debe ser única para el namespace.
-
Methods: métodos HTTP incluidos en el ámbito a configurar.
-
Paths: endpoint al que se aplica la regla de autorización. Se pueden insertar más de un endpoint.
-
CONDITIONS: sección opcional para incluir condiciones, es decir, atributos opcionales formados por clave (Key) y valor (Value). Tenga en cuenta que es posible agregar más de un valor por clave. Consulte aquí las condiciones que puede utilizar.
Actions
Dentro de una política de autorización de Istio, hay un campo llamado action
que es responsable de decirle a Istio qué política se aplicará a las peticiones.
A continuación se muestra un ejemplo de objeto Authorization
:
apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
name: httpbin
namespace: foo
spec:
action: ALLOW
rules:
- from:
- source:
principals: ["cluster.local/ns/default/sa/sleep"]
- source:
namespaces: ["test"]
to:
- operation:
methods: ["GET"]
paths: ["/info*"]
- operation:
methods: ["POST"]
paths: ["/data"]
when:
- key: request.auth.claims[iss]
values: ["https://accounts.google.com"]
Dentro de Sensedia Service Mesh, las políticas de autorización siempre se crean con action: ALLOW
;
por lo tanto, las peticiones solo serán aceptadas si cumplen las normas descritas en la clave rules
(y rechazadas en caso contrario).
Puede consultar esta documentación para obtener más información acerca de los objetos de autorización.
Si la opción Mesh Security está activada (en | ), los servicios de la malla se bloquearán de forma predeterminada. A continuación, tendrá que crear políticas de autorización para todos los servicios a los que desee permitir el acceso.
Share your suggestions with us!
Click here and then [+ Submit idea]