{"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"61e95bfd-b363-4d7e-bf09-22fe0b9ae779","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"61e95bfd-b363-4d7e-bf09-22fe0b9ae779","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"61e95bfd-b363-4d7e-bf09-22fe0b9ae779","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"61e95bfd-b363-4d7e-bf09-22fe0b9ae779","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"61e95bfd-b363-4d7e-bf09-22fe0b9ae779","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55542","PortSpecifier":{"PortValue":55542}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55542","PortSpecifier":{"PortValue":55542}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425070,"nanos":832743945},"http":{"id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"failed to verify signature: failed to verify id token signature"} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","config":{"Name":"openshift-identities","Priority":2,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":null,"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"not authenticated"} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required"}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8a20610e-19c7-4a0d-a9be-ca12b00710fe","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required","headers":[{"WWW-Authenticate":"request.headers.authorization realm=\"api-keys\""},{"WWW-Authenticate":"Bearer **** realm=\"openshift-identities\""}]}} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55548","PortSpecifier":{"PortValue":55548}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55548","PortSpecifier":{"PortValue":55548}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425070,"nanos":887950365},"http":{"id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer","content-length":"35","content-type":"application/json","forwarded":"for=34.228.250.194;host=maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com;proto=https","user-agent":"python-requests/2.32.5","x-envoy-decorator-operation":"maas-api.opendatahub.svc.cluster.local:8443/*","x-envoy-external-address":"10.132.0.14","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"34.228.250.194,10.132.0.14","x-forwarded-host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","x-forwarded-port":"443","x-forwarded-proto":"https","x-request-id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52"},"path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https","protocol":"HTTP/1.1"}},"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"metadata_context":{}}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","config":{"Name":"openshift-identities","Priority":2,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":null,"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"credential not found"} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required"}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5aad8a12-9a5b-4cfb-bd39-cb4c2ce3ae52","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required","headers":[{"WWW-Authenticate":"request.headers.authorization realm=\"api-keys\""},{"WWW-Authenticate":"Bearer **** realm=\"openshift-identities\""}]}} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55558","PortSpecifier":{"PortValue":55558}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55558","PortSpecifier":{"PortValue":55558}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425070,"nanos":913895163},"http":{"id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","content-length":"36","content-type":"application/json","forwarded":"for=34.228.250.194;host=maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com;proto=https","user-agent":"python-requests/2.32.5","x-envoy-decorator-operation":"maas-api.opendatahub.svc.cluster.local:8443/*","x-envoy-external-address":"10.132.0.14","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"34.228.250.194,10.132.0.14","x-forwarded-host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","x-forwarded-port":"443","x-forwarded-proto":"https","x-request-id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3"},"path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https","protocol":"HTTP/1.1"}},"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"metadata_context":{}}} {"level":"info","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required"}} {"level":"debug","ts":"2026-07-07T11:51:10Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6b6365b7-1504-4dc9-b712-7c3f0253afd3","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required","headers":[{"WWW-Authenticate":"request.headers.authorization realm=\"api-keys\""},{"WWW-Authenticate":"Bearer **** realm=\"openshift-identities\""}]}} {"level":"info","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55566","PortSpecifier":{"PortValue":55566}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55566","PortSpecifier":{"PortValue":55566}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425071,"nanos":997745},"http":{"id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"oidc: token is expired (Token Expiry: 2026-07-07 10:51:10 +0000 UTC)"} {"level":"debug","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","config":{"Name":"openshift-identities","Priority":2,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":null,"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"not authenticated"} {"level":"info","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required"}} {"level":"debug","ts":"2026-07-07T11:51:11Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"7f92896f-56bd-46fc-8fc6-c6aa65d017be","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required","headers":[{"WWW-Authenticate":"request.headers.authorization realm=\"api-keys\""},{"WWW-Authenticate":"Bearer **** realm=\"openshift-identities\""}]}} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/3046c0610dcbfd0474f5e4ca2d0fe7439cf0d30d5669171b8b0583e199d5e53e"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/8bfa1d1e6386118154a883403098cc5d5a4de3d2a28d8ee3d2fd52d5a25b2cab"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/2c9b5a8e6e79c57c13920fc229bf78bb66aeef45728fbbaea8b4aeab1e4f2e2e"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/77ad1c4575da499e353a13ad2ab7679f147a84b847afb222832f89e4fa099cfb"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/3497908f3c99945131d95cdb84872277e94936223c4209dfbf9d309bc50199ef"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/112c63b3ed61bb9c723f2b881c74466668ca0db0993224f9268afabe7273c9bb"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/50ad9003671e99d0d95f141b1bdb02bf812b83f75d279e20837e418ecb63a287"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/8149246d89b71223ea6ced38b5c4462a02946ae32d0469d62483fe8ed18e7266"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/188ce6118cecb0b103dc5c9f16fbde11b73865ab1751f155b3173017b4b93ca3"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/d93c71f910619e2026b885fe04647a9b3f425d5d130a636a60f84a7c8c368cc9"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/082ffeeb1a1790082ca57bfeb271f5641314b5a812dbbdf4c06654a17a0dae99"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/f5ee3d7f457f3dce53c320c6926c6816ff074dca0edb299d9b245306996bb113"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/b69d51bd4c71a7d4fc3e14f6a372b5f0b31269396d7857a348bddefe6b178bd6"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/ddbb1000229b3e24948a78b0cd5146c39c715a2285028193545d2dd669b479d5"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/db711e94f63bfee7e519008365e8f3e2a8e525bda6ff7d660756933d0936f745"} {"level":"info","ts":"2026-07-07T11:51:14Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/fb6cf40d63076da8759a408e512c5961c256ef5ac55ba30c6c4db7e4fefb4e3d"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/305bde7d554d0d2810b101d2b8d4e0e15521c2afbf16166555b8e9aa4ed39a3d","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/4dc577fd60594d78a4a8bebe396f4b5a928f41bdc3f95c06d717cf1ddc3158b2","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/98dd9311f361e75de96f77b800598c9f5c79c7fa539cfd493b5f7631f8efab90","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/707878bcd632125ecab845de29fc41570ff2eb882a04dea05a2e77c0ea6d31f9","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/630f18b14e5ce0234d4da773011770ac52ec305a1af3397f72696bf5262056bb","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/9bbfc0b2e9e9acadd41342cd7c36a24afa8a5eef942d161782a6adae8411158a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:40Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/a124e7db3701742524b9534a4ba1eb68cc6d8f337ccc26c3f8f17b958cc795d0","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/d66f5b12bbb76f83ef1cb89313ae7356d9a4c974f276c1405eefa0cb8d66ceda","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/e50f5fdcb9fb7e124557afe69edae9a95d05da488eae1cc4b5c1c7c1220a826a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/18e32965997cdd9967355c6fa5264ed12c0a215989d459ed88d7d6de02865f76","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/d3b195a61a7f24c6bf1fba40f9f2e2565facb6af92e959c1546ac398a9172618","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/b1f82c4ba6cc7617f9c0b90067f72f4a25fdc5de2564c14ccb90af534a2905f6","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/4325b2a5e55bf181d1f503f5c3cbce3259c00ca301216d4ea5bc6b962627f1bd","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/ba8750633b915855593e941d13c912f4f6c6d6c6a659c241b67d178bbe85f188","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/edcceb5a2e0cf1edde0fc3ed43068ce5b123a6fdc41949959c2c3b7a5a48bf24","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/e9607d3c9394ff787a7cb9306c470b1007979008e27c6d6c68281553a4653faa","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/f9a2a1e13eaadb4f450e63a68a3d05ec02a537019380f832f5992d1c5cdee533","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/cc09b530b46a73b0d4ddb40e465580cff15db19d77e93e4903c9737647deeb1a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/9f3df6834dcf2df14d188decd66432f3940127e3a8261065cd3a44bd9ed1db6d","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/df733b2c652bfe2458c9e19932b1091e939c1a62178d6879462b3b4f73fca4bb","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/35d34d59676c333235d7c9f02273e0380bb39f27cfd30856fedc0f7c0e5f79aa","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/3c0d47082320c9bb02d3788ab2b052c696af91abc2ae438437ae71a26936c7c2","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/a394737442ca47bfbcb906bcf34d05c5515587984942470db6d6858608ab543a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/3d32277ea538e86091b57e14fc6f6582cbe1daa3e7e81223282a75b03a512083","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/86cbb62fb4d82d4dc402b3281444539a5625c4bb4c86bbc4912c70e690a2e374","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/98b96558d098c10ea5cd4b877712861a71c554909b27785cf9b672cf28954a5a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/5fea747cb803a5ee3aeb620187bd9ec74ccccd10a92474ef528215a7ff146c8f","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:41Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/30c4b39450ec876cfb2b0e66cbea2a74b7bcfafcf83d80a94c503487492e5a48","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/1ef3f8313d73a7c14b76ea704cc3f23f015b2ab50034887cf570208a050e9863","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/452d598a0ad1047944cd02d3654e6793847781ecc87763544a69e05020a86cf3","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/a89b0896df0d8cd430f1c81b6eb292ddc044daed393537d009a6330718f58d4b","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/3774b789b89cb794db9f2ae5a4e410c6a000c480af86f9e4466977b4dc7de25a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/3dc75fc8307b952a3e873400cf417e90f2861e8a225abec4b22708deb7901db7","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/bf72a6316f6ed79299511e58d068836cdc71dbca5e23944f783c9340ffa0aee1","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/4375a0165d777c3dbcac3b90772aafb3ba82b742e01878423b9fb1e122337433","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/101d9a4d9b715268b3a3623fb114473501068b7352d534f324f4a3121b535746","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/80f10756c0e833d16937036ed66f1daf5bef95559ef05a5e852766b97b9bdaef","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/319a353672fc7601c875fa3f8b807adf60b64f093f022b2a1c3dfef3ac8cd4f4","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/c9f2cdb36f800bc8ef8831e6117ec4c6cc521d8cd63b718b7906225d0f25e59f","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/9903213c635804dd416e9f12956f0fa896195627091daaf593a30df64cf640c5","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/01918e70442d2cb18c94316131b0e0a241b4a5d12df5b1e1981a3bef420bbdb5","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/c098209e055107073c6ded1d63e221315c2239f3cf17a7d15056a7494c5714fb","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/47d4519f979dd8b06fb3b12ecf63e079887e8b64c789a1ff79b4c429f3a6aa2a","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/331dc257e65f55f80700a586f7807093eda7b3d8e7d91215dc3c47731508480c","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/7371c34ce8e4df2309ee8f952c87f921947b289427b6e9ea579dcb9970fc1b86","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/311b1be286674fd5684c9ac59b318287dade9769cfe4aeebd8c88e2dc6b72418","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/e38d76c6f386f12bc12190c87b39e6e77e182be454f85659a9197c301f2cd9be","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/cd452b3491b4064e772f38d1a288406bb3889f19efd54af26f6554f07046a8c0","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/888fdad5bc63ac36546012ce97b2af4b7b1a45ef243fd2eba72f12c306f06e3e","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"debug","ts":"2026-07-07T11:51:42Z","logger":"authorino.controller-runtime.manager.controller.authconfig.jwt","msg":"openid connect configuration updated","authconfig":"kuadrant-system/3dd75e19cd66d310c30638e330078972afd6d2d96305f91055bc6a6f363fb8d3","issuerUrl":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60176","PortSpecifier":{"PortValue":60176}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"87388feb-a877-48f7-96e2-37a5e1210d90","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60176","PortSpecifier":{"PortValue":60176}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":128486661},"http":{"id":"87388feb-a877-48f7-96e2-37a5e1210d90","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"oidc: token is expired (Token Expiry: 2026-07-07 11:52:11 +0000 UTC)"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","config":{"Name":"openshift-identities","Priority":2,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":null,"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"not authenticated"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required"}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"87388feb-a877-48f7-96e2-37a5e1210d90","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required","headers":[{"WWW-Authenticate":"request.headers.authorization realm=\"api-keys\""},{"WWW-Authenticate":"Bearer **** realm=\"openshift-identities\""}]}} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60188","PortSpecifier":{"PortValue":60188}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60188","PortSpecifier":{"PortValue":60188}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":508982357},"http":{"id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Site-Reliability"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:cd876092-7888-7152-3446-f36d17603803","preferred_username":"bob_sre","scope":"profile email","sid":"vGqwjalf5bHRRyoiO3i1QzZu","sub":"32e4fd68-8661-4278-a91f-475ee55b1580","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Site-Reliability"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:cd876092-7888-7152-3446-f36d17603803","preferred_username":"bob_sre","scope":"profile email","sid":"vGqwjalf5bHRRyoiO3i1QzZu","sub":"32e4fd68-8661-4278-a91f-475ee55b1580","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"bob_sre"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Site-Reliability\"]"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"9dee47eb-1fbc-4ff4-b6e6-a32be286d617","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"c15374d7-1740-4973-998f-998df47303e3","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60200","PortSpecifier":{"PortValue":60200}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"c15374d7-1740-4973-998f-998df47303e3","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"c15374d7-1740-4973-998f-998df47303e3","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60200","PortSpecifier":{"PortValue":60200}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":743246022},"http":{"id":"c15374d7-1740-4973-998f-998df47303e3","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Engineering","Project-Alpha"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:961d172e-67b5-8c1c-81e0-6eb5856f7af6","preferred_username":"alice_lead","scope":"profile email","sid":"Y6ejsdCxvQ-XlTDrRN5CCn5e","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"c15374d7-1740-4973-998f-998df47303e3","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Engineering","Project-Alpha"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:961d172e-67b5-8c1c-81e0-6eb5856f7af6","preferred_username":"alice_lead","scope":"profile email","sid":"Y6ejsdCxvQ-XlTDrRN5CCn5e","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"c15374d7-1740-4973-998f-998df47303e3","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"c15374d7-1740-4973-998f-998df47303e3","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"c15374d7-1740-4973-998f-998df47303e3","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60216","PortSpecifier":{"PortValue":60216}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60216","PortSpecifier":{"PortValue":60216}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":776950362},"http":{"id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306\"}"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"9a3426d6-5523-4838-a430-06716030ba9b","keyName":"e2e-oidc-4d6650eb","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"9a3426d6-5523-4838-a430-06716030ba9b","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: subscription-info"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"cb72a566-3a1c-4978-b278-f2ae8c58ac89","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":806961941},"http":{"id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","method":"GET","headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306\"}"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"9a3426d6-5523-4838-a430-06716030ba9b","keyName":"e2e-oidc-4d6650eb","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"9a3426d6-5523-4838-a430-06716030ba9b","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":"subscription-info","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"],\"requestedModel\":\"llm/facebook-opt-125m-simulated\",\"requestedSubscription\":\"simulator-subscription\",\"username\":\"alice_lead\"}"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"subscription-info","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","input":{"auth":{"identity":"Bearer **** subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}}},"context":{"context_extensions":{"host":"4375a0165d777c3dbcac3b90772aafb3ba82b742e01878423b9fb1e122337433"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306","user-agent":"Go-http-client/1.1","x-envoy-decorator-operation":"facebook-opt-125m-simulated-kserve-workload-svc.llm.svc.cluster.local:8000/*","x-envoy-external-address":"10.132.0.34","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"10.132.0.34","x-forwarded-proto":"https","x-maas-subscription":"simulator-subscription","x-request-id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20"},"host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","protocol":"HTTP/1.1","scheme":"https","time":{"nanos":806961941,"seconds":1783425136},"url_path":"/llm/facebook-opt-125m-simulated/v1/models","user_agent":"Go-http-client/1.1"},"source":{"address":"10.132.0.34:55690","port":55690}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"subscription-valid","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"name\", \"\") != \"\"\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"error\", \"\") == \"\"\n\tphase := object.get(input.auth.metadata[\"subscription-info\"], \"phase\", \"\")\n\tany([phase == \"Active\", phase == \"Degraded\"])\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"deletionTimestamp\", \"\") == \"\"\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"keyId","Value":{}},{"Name":"groups","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"groups_str":"system:authenticated,Engineering,Project-Alpha","keyId":"9a3426d6-5523-4838-a430-06716030ba9b","keyName":"e2e-oidc-4d6650eb","selected_subscription":"simulator-subscription","selected_subscription_key":"models-as-a-service/simulator-subscription@llm/facebook-opt-125m-simulated","subscription_error":"","subscription_error_message":"","subscription_info":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true},"userid":"alice_lead"}} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"2f6dd26a-87aa-408a-8eb1-e908288ffc20","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60228","PortSpecifier":{"PortValue":60228}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","method":"POST","path":"/llm/facebook-opt-125m-simulated/v1/chat/completions","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60228","PortSpecifier":{"PortValue":60228}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":837600968},"http":{"id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/llm/facebook-opt-125m-simulated/v1/chat/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1UCSgEEsBJWF1nHQM_FuXrEWMhc2OPkUWLMhdV031KxVaB6IfpyASUsbXL306\"}"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"9a3426d6-5523-4838-a430-06716030ba9b","keyName":"e2e-oidc-4d6650eb","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"9a3426d6-5523-4838-a430-06716030ba9b","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":"subscription-info","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"],\"requestedModel\":\"llm/facebook-opt-125m-simulated\",\"requestedSubscription\":\"simulator-subscription\",\"username\":\"alice_lead\"}"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"subscription-info","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","input":{"auth":{"identity":"Bearer **** subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}}},"context":{"context_extensions":{"host":"311b1be286674fd5684c9ac59b318287dade9769cfe4aeebd8c88e2dc6b72418"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/llm/facebook-opt-125m-simulated/v1/chat/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"subscription-valid","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"name\", \"\") != \"\"\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"error\", \"\") == \"\"\n\tphase := object.get(input.auth.metadata[\"subscription-info\"], \"phase\", \"\")\n\tany([phase == \"Active\", phase == \"Degraded\"])\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"deletionTimestamp\", \"\") == \"\"\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"keyId","Value":{}},{"Name":"userid","Value":{}},{"Name":"keyName","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"groups_str":"system:authenticated,Engineering,Project-Alpha","keyId":"9a3426d6-5523-4838-a430-06716030ba9b","keyName":"e2e-oidc-4d6650eb","selected_subscription":"simulator-subscription","selected_subscription_key":"models-as-a-service/simulator-subscription@llm/facebook-opt-125m-simulated","subscription_error":"","subscription_error_message":"","subscription_info":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true},"userid":"alice_lead"}} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"832ab6d8-deec-4ed5-a356-f685cd265d6b","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60236","PortSpecifier":{"PortValue":60236}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60236","PortSpecifier":{"PortValue":60236}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":932210030},"http":{"id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Engineering","Project-Alpha"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:6cb070df-6e07-d695-da1d-2ade00570cae","preferred_username":"alice_lead","scope":"profile email","sid":"aylTMJfFQzrbfnDHOi1v9nL3","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Engineering","Project-Alpha"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:6cb070df-6e07-d695-da1d-2ade00570cae","preferred_username":"alice_lead","scope":"profile email","sid":"aylTMJfFQzrbfnDHOi1v9nL3","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"1906b673-7d99-4e7c-b124-7f408c2b25c2","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60246","PortSpecifier":{"PortValue":60246}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"ee0e3412-35d0-4a7b-8962-25d432134191","method":"DELETE","path":"/maas-api/v1/api-keys/1d6b042f-3394-4d1c-90b6-18a592d3b04f","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60246","PortSpecifier":{"PortValue":60246}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":963197385},"http":{"id":"ee0e3412-35d0-4a7b-8962-25d432134191","method":"DELETE","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"DELETE",":path":"/maas-api/v1/api-keys/1d6b042f-3394-4d1c-90b6-18a592d3b04f",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Engineering","Project-Alpha"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:6cb070df-6e07-d695-da1d-2ade00570cae","preferred_username":"alice_lead","scope":"profile email","sid":"aylTMJfFQzrbfnDHOi1v9nL3","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425196,"groups":["Engineering","Project-Alpha"],"iat":1783425136,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:6cb070df-6e07-d695-da1d-2ade00570cae","preferred_username":"alice_lead","scope":"profile email","sid":"aylTMJfFQzrbfnDHOi1v9nL3","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"DELETE",":path":"/maas-api/v1/api-keys/1d6b042f-3394-4d1c-90b6-18a592d3b04f",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"ee0e3412-35d0-4a7b-8962-25d432134191","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60260","PortSpecifier":{"PortValue":60260}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60260","PortSpecifier":{"PortValue":60260}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425136,"nanos":996531641},"http":{"id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-cPM9es2x0XUCQiBT_VEuu3oi2ejyXPyPc7B6SQbfLbNSE61B9NXWdPgX7WEE"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-cPM9es2x0XUCQiBT_VEuu3oi2ejyXPyPc7B6SQbfLbNSE61B9NXWdPgX7WEE\"}"} {"level":"debug","ts":"2026-07-07T11:52:16Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"reason":"key revoked or expired","tenant":"","valid":false}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","input":{"auth":{"identity":"Bearer **** revoked or expired","tenant":"","valid":false}}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access denied","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"reason":"Unauthorized"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","authorized":false,"response":"PERMISSION_DENIED","object":{"code":7,"status":403,"message":"Unauthorized"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"42fd6af3-b6c5-469e-8ee4-503c00289bc0","authorized":false,"response":"PERMISSION_DENIED","object":{"code":7,"status":403,"message":"Unauthorized","headers":[{"x-ext-auth-reason":""},{"content-type":"text/plain"}]}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60262","PortSpecifier":{"PortValue":60262}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:60262","PortSpecifier":{"PortValue":60262}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":26948509},"http":{"id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-cPM9es2x0XUCQiBT_VEuu3oi2ejyXPyPc7B6SQbfLbNSE61B9NXWdPgX7WEE"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-cPM9es2x0XUCQiBT_VEuu3oi2ejyXPyPc7B6SQbfLbNSE61B9NXWdPgX7WEE\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"reason":"key revoked or expired","tenant":"","valid":false}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","input":{"auth":{"identity":"Bearer **** revoked or expired","tenant":"","valid":false}}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access denied","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"reason":"Unauthorized"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","authorized":false,"response":"PERMISSION_DENIED","object":{"code":7,"status":403,"message":"Unauthorized"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"f95e05f5-19fe-4da5-b952-cc6ea92fe535","authorized":false,"response":"PERMISSION_DENIED","object":{"code":7,"status":403,"message":"Unauthorized","headers":[{"x-ext-auth-reason":""},{"content-type":"text/plain"}]}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"f1c5b665-3499-48ae-85f3-06925230b693","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52584","PortSpecifier":{"PortValue":52584}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"f1c5b665-3499-48ae-85f3-06925230b693","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"f1c5b665-3499-48ae-85f3-06925230b693","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52584","PortSpecifier":{"PortValue":52584}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":147154386},"http":{"id":"f1c5b665-3499-48ae-85f3-06925230b693","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"f1c5b665-3499-48ae-85f3-06925230b693","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"failed to verify signature: failed to verify id token signature"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"f1c5b665-3499-48ae-85f3-06925230b693","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"cannot validate identity","request id":"f1c5b665-3499-48ae-85f3-06925230b693","config":{"Name":"openshift-identities","Priority":2,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":null,"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"Plain":null,"Noop":null,"ExtendedProperties":[]},"reason":"not authenticated"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"f1c5b665-3499-48ae-85f3-06925230b693","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"f1c5b665-3499-48ae-85f3-06925230b693","authorized":false,"response":"UNAUTHENTICATED","object":{"code":16,"status":401,"message":"Authentication required","headers":[{"WWW-Authenticate":"request.headers.authorization realm=\"api-keys\""},{"WWW-Authenticate":"Bearer **** realm=\"openshift-identities\""}]}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52594","PortSpecifier":{"PortValue":52594}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"5caad50e-ad2c-4646-8ab3-74e65690abae","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52594","PortSpecifier":{"PortValue":52594}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":327556970},"http":{"id":"5caad50e-ad2c-4646-8ab3-74e65690abae","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:a6bf8636-fb3f-073c-9e1a-b2fa4bc3936d","preferred_username":"alice_lead","scope":"profile email","sid":"-jBOc7kZFDj-xIegsWd_xa10","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:a6bf8636-fb3f-073c-9e1a-b2fa4bc3936d","preferred_username":"alice_lead","scope":"profile email","sid":"-jBOc7kZFDj-xIegsWd_xa10","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5caad50e-ad2c-4646-8ab3-74e65690abae","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52596","PortSpecifier":{"PortValue":52596}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"f3eaced2-442d-468f-b481-a5252fa6c54e","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52596","PortSpecifier":{"PortValue":52596}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":358300409},"http":{"id":"f3eaced2-442d-468f-b481-a5252fa6c54e","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Site-Reliability"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:5de3de6d-22fa-a5de-bdc4-a9fb28fc11c2","preferred_username":"bob_sre","scope":"profile email","sid":"xYz6Qptb6NBEMPGlexspy7Qn","sub":"32e4fd68-8661-4278-a91f-475ee55b1580","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Site-Reliability"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:5de3de6d-22fa-a5de-bdc4-a9fb28fc11c2","preferred_username":"bob_sre","scope":"profile email","sid":"xYz6Qptb6NBEMPGlexspy7Qn","sub":"32e4fd68-8661-4278-a91f-475ee55b1580","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Site-Reliability\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"bob_sre"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"f3eaced2-442d-468f-b481-a5252fa6c54e","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52606","PortSpecifier":{"PortValue":52606}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52606","PortSpecifier":{"PortValue":52606}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":447553054},"http":{"id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ad415bef-01e5-5114-2481-616adb6fec74","preferred_username":"alice_lead","scope":"profile email","sid":"KLUFMbMEsk1wRujVgypQmZc7","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ad415bef-01e5-5114-2481-616adb6fec74","preferred_username":"alice_lead","scope":"profile email","sid":"KLUFMbMEsk1wRujVgypQmZc7","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"15b2a250-0f7e-44fa-9787-0a38d68e52c5","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52618","PortSpecifier":{"PortValue":52618}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","method":"DELETE","path":"/maas-api/v1/api-keys/498a7001-8593-4e3a-86e6-88606f4b8ca9","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52618","PortSpecifier":{"PortValue":52618}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":476091760},"http":{"id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","method":"DELETE","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"DELETE",":path":"/maas-api/v1/api-keys/498a7001-8593-4e3a-86e6-88606f4b8ca9",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ad415bef-01e5-5114-2481-616adb6fec74","preferred_username":"alice_lead","scope":"profile email","sid":"KLUFMbMEsk1wRujVgypQmZc7","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ad415bef-01e5-5114-2481-616adb6fec74","preferred_username":"alice_lead","scope":"profile email","sid":"KLUFMbMEsk1wRujVgypQmZc7","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"DELETE",":path":"/maas-api/v1/api-keys/498a7001-8593-4e3a-86e6-88606f4b8ca9",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8f726881-fc08-488c-8e4b-d1fef6b0bd88","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52628","PortSpecifier":{"PortValue":52628}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"8634e0bc-5442-4844-8a5f-d15a6527300e","method":"DELETE","path":"/maas-api/v1/api-keys/498a7001-8593-4e3a-86e6-88606f4b8ca9","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52628","PortSpecifier":{"PortValue":52628}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":503389519},"http":{"id":"8634e0bc-5442-4844-8a5f-d15a6527300e","method":"DELETE","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"DELETE",":path":"/maas-api/v1/api-keys/498a7001-8593-4e3a-86e6-88606f4b8ca9",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ad415bef-01e5-5114-2481-616adb6fec74","preferred_username":"alice_lead","scope":"profile email","sid":"KLUFMbMEsk1wRujVgypQmZc7","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ad415bef-01e5-5114-2481-616adb6fec74","preferred_username":"alice_lead","scope":"profile email","sid":"KLUFMbMEsk1wRujVgypQmZc7","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"DELETE",":path":"/maas-api/v1/api-keys/498a7001-8593-4e3a-86e6-88606f4b8ca9",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8634e0bc-5442-4844-8a5f-d15a6527300e","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"fc6e35be-41b6-4681-90b0-620096c47590","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52640","PortSpecifier":{"PortValue":52640}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"fc6e35be-41b6-4681-90b0-620096c47590","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"fc6e35be-41b6-4681-90b0-620096c47590","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52640","PortSpecifier":{"PortValue":52640}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":594980568},"http":{"id":"fc6e35be-41b6-4681-90b0-620096c47590","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:5db8b837-5938-5a32-8903-c8b2e1725601","preferred_username":"alice_lead","scope":"profile email","sid":"n9IzqDqtcuiHyj0OKlC4dccr","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"fc6e35be-41b6-4681-90b0-620096c47590","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:5db8b837-5938-5a32-8903-c8b2e1725601","preferred_username":"alice_lead","scope":"profile email","sid":"n9IzqDqtcuiHyj0OKlC4dccr","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"fc6e35be-41b6-4681-90b0-620096c47590","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"fc6e35be-41b6-4681-90b0-620096c47590","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"fc6e35be-41b6-4681-90b0-620096c47590","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52654","PortSpecifier":{"PortValue":52654}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"bb4ef9c3-333f-4036-a5b5-38262673f968","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52654","PortSpecifier":{"PortValue":52654}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":623155656},"http":{"id":"bb4ef9c3-333f-4036-a5b5-38262673f968","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-J4QMrJaRmTpfrfxG_6ophTtRzySTK3bulSyecpDRYWCT6Ko6SoDPtC6Ktw4B"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-J4QMrJaRmTpfrfxG_6ophTtRzySTK3bulSyecpDRYWCT6Ko6SoDPtC6Ktw4B\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"0a277afe-2af7-44cb-8be3-f9ef4ed06901","keyName":"e2e-oidc-3641bdcd","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"0a277afe-2af7-44cb-8be3-f9ef4ed06901","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: subscription-info"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"bb4ef9c3-333f-4036-a5b5-38262673f968","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"db25b01d-17e4-43b7-9236-81ea32647155","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"db25b01d-17e4-43b7-9236-81ea32647155","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"db25b01d-17e4-43b7-9236-81ea32647155","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":630592756},"http":{"id":"db25b01d-17e4-43b7-9236-81ea32647155","method":"GET","headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-J4QMrJaRmTpfrfxG_6ophTtRzySTK3bulSyecpDRYWCT6Ko6SoDPtC6Ktw4B"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-J4QMrJaRmTpfrfxG_6ophTtRzySTK3bulSyecpDRYWCT6Ko6SoDPtC6Ktw4B\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"0a277afe-2af7-44cb-8be3-f9ef4ed06901","keyName":"e2e-oidc-3641bdcd","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"0a277afe-2af7-44cb-8be3-f9ef4ed06901","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":"subscription-info","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"],\"requestedModel\":\"llm/facebook-opt-125m-simulated\",\"requestedSubscription\":\"simulator-subscription\",\"username\":\"alice_lead\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"subscription-info","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"db25b01d-17e4-43b7-9236-81ea32647155","input":{"auth":{"identity":"Bearer **** subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}}},"context":{"context_extensions":{"host":"4375a0165d777c3dbcac3b90772aafb3ba82b742e01878423b9fb1e122337433"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** sk-oai-J4QMrJaRmTpfrfxG_6ophTtRzySTK3bulSyecpDRYWCT6Ko6SoDPtC6Ktw4B","user-agent":"Go-http-client/1.1","x-envoy-decorator-operation":"facebook-opt-125m-simulated-kserve-workload-svc.llm.svc.cluster.local:8000/*","x-envoy-external-address":"10.132.0.34","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"10.132.0.34","x-forwarded-proto":"https","x-maas-subscription":"simulator-subscription","x-request-id":"db25b01d-17e4-43b7-9236-81ea32647155"},"host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","id":"db25b01d-17e4-43b7-9236-81ea32647155","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","protocol":"HTTP/1.1","scheme":"https","time":{"nanos":630592756,"seconds":1783425137},"url_path":"/llm/facebook-opt-125m-simulated/v1/models","user_agent":"Go-http-client/1.1"},"source":{"address":"10.132.0.34:55690","port":55690}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"subscription-valid","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"name\", \"\") != \"\"\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"error\", \"\") == \"\"\n\tphase := object.get(input.auth.metadata[\"subscription-info\"], \"phase\", \"\")\n\tany([phase == \"Active\", phase == \"Degraded\"])\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"deletionTimestamp\", \"\") == \"\"\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"db25b01d-17e4-43b7-9236-81ea32647155","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"keyId","Value":{}},{"Name":"groups","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"groups_str":"system:authenticated,Engineering,Project-Alpha","keyId":"0a277afe-2af7-44cb-8be3-f9ef4ed06901","keyName":"e2e-oidc-3641bdcd","selected_subscription":"simulator-subscription","selected_subscription_key":"models-as-a-service/simulator-subscription@llm/facebook-opt-125m-simulated","subscription_error":"","subscription_error_message":"","subscription_info":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true},"userid":"alice_lead"}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"db25b01d-17e4-43b7-9236-81ea32647155","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"db25b01d-17e4-43b7-9236-81ea32647155","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52662","PortSpecifier":{"PortValue":52662}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52662","PortSpecifier":{"PortValue":52662}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":732596032},"http":{"id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ae2b9ced-430b-dc4b-37ad-7d37213eadf6","preferred_username":"alice_lead","scope":"profile email","sid":"U-oMWGQD7Njzotn2DVxM0XDQ","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:ae2b9ced-430b-dc4b-37ad-7d37213eadf6","preferred_username":"alice_lead","scope":"profile email","sid":"U-oMWGQD7Njzotn2DVxM0XDQ","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5a60236d-8457-4b35-94c0-4dc4b7b0345b","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52670","PortSpecifier":{"PortValue":52670}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52670","PortSpecifier":{"PortValue":52670}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":760568052},"http":{"id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","keyName":"e2e-oidc-215f4aba","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: subscription-info"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6adfc256-bbe6-42ce-834f-77a19f5fae53","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52676","PortSpecifier":{"PortValue":52676}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52676","PortSpecifier":{"PortValue":52676}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":785713717},"http":{"id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","keyName":"e2e-oidc-215f4aba","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: subscription-info"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"99ba2b47-7cc2-48e5-a646-f67ce9d8dd9b","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"a98d288a-e543-4470-a7f6-42293c272f26","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"a98d288a-e543-4470-a7f6-42293c272f26","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"a98d288a-e543-4470-a7f6-42293c272f26","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":793006491},"http":{"id":"a98d288a-e543-4470-a7f6-42293c272f26","method":"GET","headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","keyName":"e2e-oidc-215f4aba","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":"subscription-info","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"],\"requestedModel\":\"llm/facebook-opt-125m-simulated\",\"requestedSubscription\":\"simulator-subscription\",\"username\":\"alice_lead\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"subscription-info","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"a98d288a-e543-4470-a7f6-42293c272f26","input":{"auth":{"identity":"Bearer **** subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}}},"context":{"context_extensions":{"host":"4375a0165d777c3dbcac3b90772aafb3ba82b742e01878423b9fb1e122337433"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** sk-oai-1WZHgNSkvbvJoIwKD_HvYT0A1VPOz0W8yIl5mM1KctLNetcZ1xwxd3E0KjSEA","user-agent":"Go-http-client/1.1","x-envoy-decorator-operation":"facebook-opt-125m-simulated-kserve-workload-svc.llm.svc.cluster.local:8000/*","x-envoy-external-address":"10.132.0.34","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"10.132.0.34","x-forwarded-proto":"https","x-maas-subscription":"simulator-subscription","x-request-id":"a98d288a-e543-4470-a7f6-42293c272f26"},"host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","id":"a98d288a-e543-4470-a7f6-42293c272f26","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","protocol":"HTTP/1.1","scheme":"https","time":{"nanos":793006491,"seconds":1783425137},"url_path":"/llm/facebook-opt-125m-simulated/v1/models","user_agent":"Go-http-client/1.1"},"source":{"address":"10.132.0.34:55690","port":55690}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"subscription-valid","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"name\", \"\") != \"\"\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"error\", \"\") == \"\"\n\tphase := object.get(input.auth.metadata[\"subscription-info\"], \"phase\", \"\")\n\tany([phase == \"Active\", phase == \"Degraded\"])\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"deletionTimestamp\", \"\") == \"\"\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a98d288a-e543-4470-a7f6-42293c272f26","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"keyId","Value":{}},{"Name":"groups","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"groups_str":"system:authenticated,Engineering,Project-Alpha","keyId":"47dbb02d-e6e7-4a51-9e23-5a661d75026b","keyName":"e2e-oidc-215f4aba","selected_subscription":"simulator-subscription","selected_subscription_key":"models-as-a-service/simulator-subscription@llm/facebook-opt-125m-simulated","subscription_error":"","subscription_error_message":"","subscription_info":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true},"userid":"alice_lead"}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"a98d288a-e543-4470-a7f6-42293c272f26","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"a98d288a-e543-4470-a7f6-42293c272f26","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52684","PortSpecifier":{"PortValue":52684}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52684","PortSpecifier":{"PortValue":52684}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":880817188},"http":{"id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:85350c82-e4a3-201e-0479-d33aaa3fd41b","preferred_username":"alice_lead","scope":"profile email","sid":"F-se55iq4wXLMvfMMdhh5JLo","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425197,"groups":["Engineering","Project-Alpha"],"iat":1783425137,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:85350c82-e4a3-201e-0479-d33aaa3fd41b","preferred_username":"alice_lead","scope":"profile email","sid":"F-se55iq4wXLMvfMMdhh5JLo","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"c0bffa28-2baa-496d-9dc7-06190430c3a8","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52696","PortSpecifier":{"PortValue":52696}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"a2298f83-32e6-4438-af9e-407fba5f190c","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52696","PortSpecifier":{"PortValue":52696}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":907923617},"http":{"id":"a2298f83-32e6-4438-af9e-407fba5f190c","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"2b814321-5397-4d48-a621-f32a8b000432","keyName":"e2e-oidc-06d7bb72","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"2b814321-5397-4d48-a621-f32a8b000432","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: subscription-info"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"a2298f83-32e6-4438-af9e-407fba5f190c","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"cdfbb791-ba79-408a-84a6-33d9755095e6","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":915138438},"http":{"id":"cdfbb791-ba79-408a-84a6-33d9755095e6","method":"GET","headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"2b814321-5397-4d48-a621-f32a8b000432","keyName":"e2e-oidc-06d7bb72","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"2b814321-5397-4d48-a621-f32a8b000432","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":"subscription-info","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"],\"requestedModel\":\"llm/facebook-opt-125m-simulated\",\"requestedSubscription\":\"simulator-subscription\",\"username\":\"alice_lead\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"subscription-info","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","input":{"auth":{"identity":"Bearer **** subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}}},"context":{"context_extensions":{"host":"4375a0165d777c3dbcac3b90772aafb3ba82b742e01878423b9fb1e122337433"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy","user-agent":"Go-http-client/1.1","x-envoy-decorator-operation":"facebook-opt-125m-simulated-kserve-workload-svc.llm.svc.cluster.local:8000/*","x-envoy-external-address":"10.132.0.34","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"10.132.0.34","x-forwarded-proto":"https","x-maas-subscription":"simulator-subscription","x-request-id":"cdfbb791-ba79-408a-84a6-33d9755095e6"},"host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","id":"cdfbb791-ba79-408a-84a6-33d9755095e6","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","protocol":"HTTP/1.1","scheme":"https","time":{"nanos":915138438,"seconds":1783425137},"url_path":"/llm/facebook-opt-125m-simulated/v1/models","user_agent":"Go-http-client/1.1"},"source":{"address":"10.132.0.34:55690","port":55690}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"subscription-valid","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"name\", \"\") != \"\"\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"error\", \"\") == \"\"\n\tphase := object.get(input.auth.metadata[\"subscription-info\"], \"phase\", \"\")\n\tany([phase == \"Active\", phase == \"Degraded\"])\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"deletionTimestamp\", \"\") == \"\"\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"keyId","Value":{}},{"Name":"groups","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"groups_str":"system:authenticated,Engineering,Project-Alpha","keyId":"2b814321-5397-4d48-a621-f32a8b000432","keyName":"e2e-oidc-06d7bb72","selected_subscription":"simulator-subscription","selected_subscription_key":"models-as-a-service/simulator-subscription@llm/facebook-opt-125m-simulated","subscription_error":"","subscription_error_message":"","subscription_info":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true},"userid":"alice_lead"}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"cdfbb791-ba79-408a-84a6-33d9755095e6","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52702","PortSpecifier":{"PortValue":52702}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","method":"GET","path":"/maas-api/v1/models","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52702","PortSpecifier":{"PortValue":52702}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":941659041},"http":{"id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","method":"GET","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"GET",":path":"/maas-api/v1/models",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"2b814321-5397-4d48-a621-f32a8b000432","keyName":"e2e-oidc-06d7bb72","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"2b814321-5397-4d48-a621-f32a8b000432","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: subscription-info"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6d779dd5-3ab8-4b74-980a-ee860f05e77e","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"19bdea88-8b7d-4938-899f-f88c65bbced3","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.34:55690","PortSpecifier":{"PortValue":55690}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425137,"nanos":949052545},"http":{"id":"19bdea88-8b7d-4938-899f-f88c65bbced3","method":"GET","headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":"apiKeyValidation","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/api-keys/validate","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"keyId":"2b814321-5397-4d48-a621-f32a8b000432","keyName":"e2e-oidc-06d7bb72","subscription":"simulator-subscription","tenant":"models-as-a-service","userId":"2b814321-5397-4d48-a621-f32a8b000432","username":"alice_lead","valid":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":"subscription-info","method":"POST","url":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"],\"requestedModel\":\"llm/facebook-opt-125m-simulated\",\"requestedSubscription\":\"simulator-subscription\",\"username\":\"alice_lead\"}"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"subscription-info","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api.opendatahub.svc.cluster.local:8443/internal/v1/subscriptions/select","DynamicEndpoint":null,"Method":"POST","Body":{},"Parameters":[],"Headers":[],"ContentType":"application/json","SharedSecret":"","OAuth2":null,"OAuth2TokenForceFetch":false,"AuthCredentials":null}},"object":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","input":{"auth":{"identity":"Bearer **** subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true}}},"context":{"context_extensions":{"host":"4375a0165d777c3dbcac3b90772aafb3ba82b742e01878423b9fb1e122337433"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local",":method":"GET",":path":"/llm/facebook-opt-125m-simulated/v1/models",":scheme":"https","accept-encoding":"gzip","authorization":"Bearer **** sk-oai-1OgDNHPiTpdRZVgqC_SFa9EJ97U1wxd5ZEHRG1ZDXE3y7nqn4U8fza0WKOSjy","user-agent":"Go-http-client/1.1","x-envoy-decorator-operation":"facebook-opt-125m-simulated-kserve-workload-svc.llm.svc.cluster.local:8000/*","x-envoy-external-address":"10.132.0.34","x-envoy-peer-metadata":"ChoKCkNMVVNURVJfSUQSDBoKS3ViZXJuZXRlcwqLAQoGTEFCRUxTEoABKn4KSwofc2VydmljZS5pc3Rpby5pby9jYW5vbmljYWwtbmFtZRIoGiZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAovCiNzZXJ2aWNlLmlzdGlvLmlvL2Nhbm9uaWNhbC1yZXZpc2lvbhIIGgZsYXRlc3QKQAoETkFNRRI4GjZtYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdC01NjY1NGRjZjctdmQ1NWQKIAoJTkFNRVNQQUNFEhMaEW9wZW5zaGlmdC1pbmdyZXNzCnQKBU9XTkVSEmsaaWt1YmVybmV0ZXM6Ly9hcGlzL2FwcHMvdjEvbmFtZXNwYWNlcy9vcGVuc2hpZnQtaW5ncmVzcy9kZXBsb3ltZW50cy9tYWFzLWRlZmF1bHQtZ2F0ZXdheS1vcGVuc2hpZnQtZGVmYXVsdAo5Cg1XT1JLTE9BRF9OQU1FEigaJm1hYXMtZGVmYXVsdC1nYXRld2F5LW9wZW5zaGlmdC1kZWZhdWx0","x-envoy-peer-metadata-id":"router~10.133.0.40~maas-default-gateway-openshift-default-56654dcf7-vd55d.openshift-ingress~openshift-ingress.svc.cluster.local","x-forwarded-for":"10.132.0.34","x-forwarded-proto":"https","x-maas-subscription":"simulator-subscription","x-request-id":"19bdea88-8b7d-4938-899f-f88c65bbced3"},"host":"maas-default-gateway-openshift-default.openshift-ingress.svc.cluster.local","id":"19bdea88-8b7d-4938-899f-f88c65bbced3","method":"GET","path":"/llm/facebook-opt-125m-simulated/v1/models","protocol":"HTTP/1.1","scheme":"https","time":{"nanos":949052545,"seconds":1783425137},"url_path":"/llm/facebook-opt-125m-simulated/v1/models","user_agent":"Go-http-client/1.1"},"source":{"address":"10.132.0.34:55690","port":55690}}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"subscription-valid","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"name\", \"\") != \"\"\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"error\", \"\") == \"\"\n\tphase := object.get(input.auth.metadata[\"subscription-info\"], \"phase\", \"\")\n\tany([phase == \"Active\", phase == \"Degraded\"])\n\tobject.get(input.auth.metadata[\"subscription-info\"], \"deletionTimestamp\", \"\") == \"\"\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"X-MaaS-Subscription","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Subscription","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"simulator-subscription"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"X-MaaS-Username","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{"Static":null,"Pattern":"auth.metadata.apiKeyValidation.username"}}},"object":"alice_lead"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"X-MaaS-Group","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"keyId","Value":{}},{"Name":"groups","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","Engineering","Project-Alpha"],"groups_str":"system:authenticated,Engineering,Project-Alpha","keyId":"2b814321-5397-4d48-a621-f32a8b000432","keyName":"e2e-oidc-06d7bb72","selected_subscription":"simulator-subscription","selected_subscription_key":"models-as-a-service/simulator-subscription@llm/facebook-opt-125m-simulated","subscription_error":"","subscription_error_message":"","subscription_info":{"description":"Free-tier subscription with 100 tokens/min rate limit","displayName":"Simulator Subscription (Free)","modelRefs":[{"description":"A simulated OPT-125M model for free-tier testing","display_name":"Facebook OPT 125M (Simulated)","name":"facebook-opt-125m-simulated","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"simulator-subscription","namespace":"models-as-a-service","phase":"Active","priority":10,"ready":true},"userid":"alice_lead"}} {"level":"info","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"19bdea88-8b7d-4938-899f-f88c65bbced3","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52718","PortSpecifier":{"PortValue":52718}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","method":"POST","path":"/maas-api/v1/api-keys","host":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52718","PortSpecifier":{"PortValue":52718}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.133.0.40:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783425138,"nanos":34054649},"http":{"id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","method":"POST","headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"oidc-identities","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OAuth2":null,"JWTAuthentication":{"AuthCredentials":{"KeySelector":"Bearer","In":"authorization_header"}},"MTLS":null,"HMAC":null,"APIKey":null,"KubernetesAuth":null,"Plain":null,"Noop":null,"ExtendedProperties":[]},"object":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425198,"groups":["Engineering","Project-Alpha"],"iat":1783425138,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:7c3d6350-7e38-8349-187e-722f2484a116","preferred_username":"alice_lead","scope":"profile email","sid":"lVJ0RXi4HzAFSGvHj7TaIHdT","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","input":{"auth":{"identity":{"acr":"1","allowed-origins":["*"],"azp":"test-client","email_verified":true,"exp":1783425198,"groups":["Engineering","Project-Alpha"],"iat":1783425138,"iss":"https://keycloak.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com/realms/tenant-a","jti":"onrtro:7c3d6350-7e38-8349-187e-722f2484a116","preferred_username":"alice_lead","scope":"profile email","sid":"lVJ0RXi4HzAFSGvHj7TaIHdT","sub":"0dbe8091-05dd-419a-800f-9db704a731cf","typ":"Bearer"}},"context":{"context_extensions":{"host":"4b78668c68e506f3e4245c5d1f1af6820d0987e90bac1b37e2a03d21cc7ed38d"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.133.0.40:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"maas.apps.0e0c8910-7dac-4abc-aecf-c83c3692a2e9.prod.konfluxeaas.com",":method":"POST",":path":"/maas-api/v1/api-keys",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"tenant-gateway-isolation","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":null,"OPA":{"Rego":"# Tenant hostname isolation stub.\n# Replace with a real maas-api call to validate that the API key's tenant\n# matches the gateway hostname (prevents Coke key on Pepsi gateway).\nallow { true }","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"oidc-groups-safe","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":null,"OPA":{"Rego":"unsafe_group[g] {\n\tg := input.auth.identity.groups[_]\n\tnot regex.match(\"^[A-Za-z0-9:._/-]+$\", g)\n}\n\nallow {\n\tcount(unsafe_group) == 0\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"auth-valid","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"allow {\n object.get(input.auth.metadata, \"apiKeyValidation\", {})\n input.auth.metadata.apiKeyValidation.valid == true\n}\nallow {\n not input.auth.metadata.apiKeyValidation\n}","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"llm/facebook-opt-125m-simulated\":{\"users\":null,\"groups\":[\"system:authenticated\"]}}\n\nrequest_path := object.get(input.context.request.http, \"path\", \"\")\nrequest_headers := object.get(input.context.request.http, \"headers\", {})\n\npath_parts := [p | p := split(request_path, \"/\")[_]; p != \"\"]\n\npath_model_identity := sprintf(\"%s/%s\", [path_parts[0], path_parts[1]]) {\n\tcount(path_parts) >= 2\n\tpath_parts[0] != \"v1\"\n\tpath_parts[0] != \"maas-api\"\n}\n\nraw_header_model_identity := object.get(request_headers, \"x-gateway-model-name\", \"\")\n\nheader_model_identity := sprintf(\"%s/%s\", [split(raw_header_model_identity, \"/\")[1], split(raw_header_model_identity, \"/\")[3]]) {\n\tstartswith(raw_header_model_identity, \"publishers/\")\n} else := raw_header_model_identity\n\nmodel_identity := path_model_identity {\n\tpath_model_identity != \"\"\n} else := header_model_identity {\n\theader_model_identity != \"\"\n} else := \"\"\n\nusername := input.auth.metadata.apiKeyValidation.username\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.username != \"\" }\nelse := input.auth.identity.preferred_username\n\t{ object.get(input.auth, \"identity\", {}).preferred_username != \"\" }\nelse := input.auth.identity.sub\n\t{ object.get(input.auth, \"identity\", {}).sub != \"\" }\nelse := input.auth.identity.user.username\n\t{ object.get(input.auth, \"identity\", {}).user.username != \"\" }\nelse := \"\"\n\ngroups := input.auth.metadata.apiKeyValidation.groups\n\t{ object.get(input.auth, \"metadata\", {}).apiKeyValidation.groups != [] }\nelse := input.auth.identity.groups\n\t{ object.get(input.auth, \"identity\", {}).groups != [] }\nelse := input.auth.identity.user.groups\n\t{ object.get(input.auth, \"identity\", {}).user.groups != [] }\nelse := []\n\nmodel_rules := object.get(model_access, model_identity, null)\n\n# Management endpoints (e.g. /v1/models, /maas-api/v1/api-keys) carry no model context.\n# Allow them here; subscription and rate-limit checks are gated by model-route conditions.\nallow {\n\tmodel_identity == \"\"\n}\n\n# Inference path: deny by default when no MaaSAuthPolicy covers this model.\n# Allow only when the caller's username or a group is explicitly listed.\nallow {\n\tmodel_rules != null\n\tmodel_rules.users[_] == username\n}\n\nallow {\n\tmodel_rules != null\n\tg := groups[_]\n\tmodel_rules.groups[_] == g\n}\n","ExternalSource":null,"AllValues":false},"JSON":null,"KubernetesAuthz":null,"Authzed":null},"object":{"allow":true}} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"userid","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"X-MaaS-Group-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Group","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"[\"system:authenticated\",\"Engineering\",\"Project-Alpha\"]"} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","config":{"Name":"X-MaaS-Username-Token","Priority":1,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Wrapper":"httpHeader","WrapperKey":"X-MaaS-Username","Metrics":false,"Cache":null,"Wristband":null,"DynamicJSON":null,"Plain":{"Value":{}}},"object":"alice_lead"} {"level":"info","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-07T11:52:18Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"ac5b6645-7a33-4b11-ab8c-3ae978068053","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-07T11:52:22Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/d868b111a95f74dd3a68e594cd8ef33e4cc9d6151e12cbed4f0f3bb03984bbbc"} {"level":"info","ts":"2026-07-07T11:52:22Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/eeb6990ae395be3a7de47c93e00d16a8baba8a25656b0e91d54d38d6fcd337f2"} {"level":"info","ts":"2026-07-07T11:52:31Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/1c346ec83c8b6e5bc43518ed3ec8ad112d7600c461d4967c8a1cca7a4d3547bd"} {"level":"info","ts":"2026-07-07T11:52:31Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/73e590c5b27c395bdb52673cd862b7dcda922b5da50488eb1843b3389ae4a269"}