{"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status did not change","authconfig":{"name":"751efa761bd5ac6c5704ddc31d154dfc46b8eb1819abae0e752246c9fcd740f5","namespace":"kuadrant-system"}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/751efa761bd5ac6c5704ddc31d154dfc46b8eb1819abae0e752246c9fcd740f5"} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"False","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsNotLinked","message":"No hosts linked to the resource"},{"type":"Ready","status":"False","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciling"}],"summary":{"ready":false,"hostsReady":[],"numHostsReady":"0/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status updated","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsLinked"},{"type":"Ready","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciled"}],"summary":{"ready":true,"hostsReady":["f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"],"numHostsReady":"1/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status updated","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsLinked"},{"type":"Ready","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciled"}],"summary":{"ready":true,"hostsReady":["f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"],"numHostsReady":"1/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"error","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"failed to update the resource","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"error":"Operation cannot be fulfilled on authconfigs.authorino.kuadrant.io \"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29\": the object has been modified; please apply your changes to the latest version and try again","stacktrace":"github.com/kuadrant/authorino/controllers.(*AuthConfigStatusUpdater).updateAuthConfigStatus\n\t/usr/src/authorino/controllers/auth_config_status_updater.go:162\ngithub.com/kuadrant/authorino/controllers.(*AuthConfigStatusUpdater).Reconcile\n\t/usr/src/authorino/controllers/auth_config_status_updater.go:81\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile\n\t/opt/app-root/src/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:119\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/opt/app-root/src/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:316\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/opt/app-root/src/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/opt/app-root/src/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.16.3/pkg/internal/controller/controller.go:227"} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"False","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsNotLinked","message":"No hosts linked to the resource"},{"type":"Ready","status":"False","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciling"}],"summary":{"ready":false,"hostsReady":[],"numHostsReady":"0/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status updated","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status did not change","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status did not change","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsLinked"},{"type":"Ready","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciled"}],"summary":{"ready":true,"hostsReady":["f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"],"numHostsReady":"1/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status updated","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"False","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsNotLinked","message":"No hosts linked to the resource"},{"type":"Ready","status":"False","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciling"}],"summary":{"ready":false,"hostsReady":[],"numHostsReady":"0/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status updated","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status did not change","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status did not change","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status changed","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"},"authconfig/status":{"conditions":[{"type":"Available","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"HostsLinked"},{"type":"Ready","status":"True","lastTransitionTime":"2026-07-13T22:37:16Z","reason":"Reconciled"}],"summary":{"ready":true,"hostsReady":["f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"],"numHostsReady":"1/1","numIdentitySources":2,"numMetadataSources":2,"numAuthorizationPolicies":4,"numResponseItems":6,"festivalWristbandEnabled":false}}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status updated","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"debug","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig.statusupdater","msg":"resource status did not change","authconfig":{"name":"f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29","namespace":"kuadrant-system"}} {"level":"info","ts":"2026-07-13T22:37:16Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource reconciled","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"info","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50858","PortSpecifier":{"PortValue":50858}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","method":"POST","path":"/maas-api/v1/api-keys","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50858","PortSpecifier":{"PortValue":50858}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982237,"nanos":984485518},"http":{"id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","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":[]},"object":{"authenticated":true,"user":{"username":"system:serviceaccount:default:tester-regular-user","uid":"1ae1158c-1a13-437e-ad59-8868725741d1","groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]}},"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"]}} {"level":"debug","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","input":{"auth":{"identity":{"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"],"authenticated":true,"user":{"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]},"groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"uid":"1ae1158c-1a13-437e-ad59-8868725741d1","username":"system:serviceaccount:default:tester-regular-user"}}},"context":{"context_extensions":{"host":"dcda91e3f34723ba6d82dc099d00b3c6405f8befdb5d0123e2bcbb4ed09583ac"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.132.0.73:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","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-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","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-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","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":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"groups","Value":{}},{"Name":"groups_str","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"info","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:17Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"7de29b99-b1cb-45d1-a04b-fe743f6068d5","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52682","PortSpecifier":{"PortValue":52682}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.75:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","method":"POST","path":"/maas-api/v1/api-keys","host":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:52682","PortSpecifier":{"PortValue":52682}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.75:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982238,"nanos":26667266},"http":{"id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","method":"POST","headers":{":authority":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","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":[]},"object":{"authenticated":true,"user":{"username":"system:serviceaccount:default:tester-regular-user","uid":"1ae1158c-1a13-437e-ad59-8868725741d1","groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]}},"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"]}} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","input":{"auth":{"identity":{"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"],"authenticated":true,"user":{"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]},"groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"uid":"1ae1158c-1a13-437e-ad59-8868725741d1","username":"system:serviceaccount:default:tester-regular-user"}}},"context":{"context_extensions":{"host":"958918473e9dad1c2980bbac024154040036a5933e2e109624d0f6950b80e307"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.132.0.75:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279\":{\"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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"userid","Value":{}},{"Name":"groups","Value":{}},{"Name":"keyId","Value":{}},{"Name":"selected_subscription_key","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"info","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"37f8ecae-bc1f-479d-a93a-f39562b6dada","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50862","PortSpecifier":{"PortValue":50862}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"5b2e4648-4830-4920-8e75-30a764ef40e6","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50862","PortSpecifier":{"PortValue":50862}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982238,"nanos":62527261},"http":{"id":"5b2e4648-4830-4920-8e75-30a764ef40e6","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:18Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5b2e4648-4830-4920-8e75-30a764ef40e6","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"501f1614-eb86-4303-8b97-f006f760bafc","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50864","PortSpecifier":{"PortValue":50864}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"501f1614-eb86-4303-8b97-f006f760bafc","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"501f1614-eb86-4303-8b97-f006f760bafc","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50864","PortSpecifier":{"PortValue":50864}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982239,"nanos":125399638},"http":{"id":"501f1614-eb86-4303-8b97-f006f760bafc","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"501f1614-eb86-4303-8b97-f006f760bafc","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"501f1614-eb86-4303-8b97-f006f760bafc","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"501f1614-eb86-4303-8b97-f006f760bafc","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"501f1614-eb86-4303-8b97-f006f760bafc","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"501f1614-eb86-4303-8b97-f006f760bafc","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"501f1614-eb86-4303-8b97-f006f760bafc","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"501f1614-eb86-4303-8b97-f006f760bafc","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"501f1614-eb86-4303-8b97-f006f760bafc","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"501f1614-eb86-4303-8b97-f006f760bafc","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:19Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"501f1614-eb86-4303-8b97-f006f760bafc","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50876","PortSpecifier":{"PortValue":50876}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50876","PortSpecifier":{"PortValue":50876}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982240,"nanos":165794011},"http":{"id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:20Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"9e683839-df2e-49ae-ab0d-96f0c4bd6592","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50878","PortSpecifier":{"PortValue":50878}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50878","PortSpecifier":{"PortValue":50878}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982241,"nanos":202753548},"http":{"id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:21Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"102d14d3-b8ca-47db-a7d9-211b34fc5fe7","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50884","PortSpecifier":{"PortValue":50884}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"1282dca8-7b1a-4972-8321-a86da1c10d86","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50884","PortSpecifier":{"PortValue":50884}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982242,"nanos":240863451},"http":{"id":"1282dca8-7b1a-4972-8321-a86da1c10d86","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:22Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"1282dca8-7b1a-4972-8321-a86da1c10d86","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50886","PortSpecifier":{"PortValue":50886}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"56a516f7-9603-481c-abc8-05d8d8d33d52","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50886","PortSpecifier":{"PortValue":50886}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982243,"nanos":279805741},"http":{"id":"56a516f7-9603-481c-abc8-05d8d8d33d52","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:23Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"56a516f7-9603-481c-abc8-05d8d8d33d52","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50892","PortSpecifier":{"PortValue":50892}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"6f0a0994-60e7-4d22-85ae-729709e900d0","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50892","PortSpecifier":{"PortValue":50892}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982244,"nanos":315751701},"http":{"id":"6f0a0994-60e7-4d22-85ae-729709e900d0","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:24Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6f0a0994-60e7-4d22-85ae-729709e900d0","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50896","PortSpecifier":{"PortValue":50896}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50896","PortSpecifier":{"PortValue":50896}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982245,"nanos":357186182},"http":{"id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:25Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"1bb33eea-17ad-487a-a62c-1ef8b628ec7e","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50908","PortSpecifier":{"PortValue":50908}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:50908","PortSpecifier":{"PortValue":50908}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982246,"nanos":392065505},"http":{"id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:26Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"af7b33a6-0496-4054-8a9d-2c4c4487eda7","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"21b5a249-902b-4c7a-9196-83b500602d22","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:48028","PortSpecifier":{"PortValue":48028}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"21b5a249-902b-4c7a-9196-83b500602d22","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"21b5a249-902b-4c7a-9196-83b500602d22","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:48028","PortSpecifier":{"PortValue":48028}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982247,"nanos":427650772},"http":{"id":"21b5a249-902b-4c7a-9196-83b500602d22","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"21b5a249-902b-4c7a-9196-83b500602d22","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"21b5a249-902b-4c7a-9196-83b500602d22","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1GlHCrYyJZm93AGaU_mbdcreJipwt332BQdSTM7yQ2YODxwlZ0pGBKNYAPfxT\"}"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"21b5a249-902b-4c7a-9196-83b500602d22","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","subscription":"e2e-rate-iso-a-cf6651","tenant":"e2e-shared-a-0eaefd","userId":"b39175a0-fa48-49c4-b024-009990a935e4","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"21b5a249-902b-4c7a-9196-83b500602d22","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-cf6651\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"21b5a249-902b-4c7a-9196-83b500602d22","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"21b5a249-902b-4c7a-9196-83b500602d22","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"21b5a249-902b-4c7a-9196-83b500602d22","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":"e2e-rate-iso-a-cf6651"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"21b5a249-902b-4c7a-9196-83b500602d22","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"b39175a0-fa48-49c4-b024-009990a935e4","keyName":"e2e-rate-a-cf6651","selected_subscription":"e2e-rate-iso-a-cf6651","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-cf6651@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-cf6651","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"21b5a249-902b-4c7a-9196-83b500602d22","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:27Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"21b5a249-902b-4c7a-9196-83b500602d22","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:48030","PortSpecifier":{"PortValue":48030}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"91c6febb-ee95-478d-a575-7921e5a3311e","method":"POST","path":"/maas-api/v1/api-keys","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:48030","PortSpecifier":{"PortValue":48030}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982256,"nanos":73787881},"http":{"id":"91c6febb-ee95-478d-a575-7921e5a3311e","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","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":[]},"object":{"authenticated":true,"user":{"username":"system:serviceaccount:default:tester-regular-user","uid":"1ae1158c-1a13-437e-ad59-8868725741d1","groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]}},"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"]}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","input":{"auth":{"identity":{"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"],"authenticated":true,"user":{"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]},"groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"uid":"1ae1158c-1a13-437e-ad59-8868725741d1","username":"system:serviceaccount:default:tester-regular-user"}}},"context":{"context_extensions":{"host":"dcda91e3f34723ba6d82dc099d00b3c6405f8befdb5d0123e2bcbb4ed09583ac"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.132.0.73:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","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":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"groups","Value":{}},{"Name":"groups_str","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"info","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"91c6febb-ee95-478d-a575-7921e5a3311e","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55932","PortSpecifier":{"PortValue":55932}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.75:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","method":"POST","path":"/maas-api/v1/api-keys","host":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:55932","PortSpecifier":{"PortValue":55932}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.75:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982256,"nanos":109447898},"http":{"id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","method":"POST","headers":{":authority":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.identity.kubernetesauth","msg":"calling kubernetes token review api","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","tokenreview":{"name":""}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","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":[]},"object":{"authenticated":true,"user":{"username":"system:serviceaccount:default:tester-regular-user","uid":"1ae1158c-1a13-437e-ad59-8868725741d1","groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]}},"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"]}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","input":{"auth":{"identity":{"audiences":["https://prod-eaas-bucket.s3.us-east-1.amazonaws.com/bcbcb558cc4d"],"authenticated":true,"user":{"extra":{"authentication.kubernetes.io/credential-id":["JTI=98dde043-9bd3-440f-9090-3aaa3969afbc"]},"groups":["system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"uid":"1ae1158c-1a13-437e-ad59-8868725741d1","username":"system:serviceaccount:default:tester-regular-user"}}},"context":{"context_extensions":{"host":"958918473e9dad1c2980bbac024154040036a5933e2e109624d0f6950b80e307"},"destination":{"address":{"Address":{"SocketAddress":{"PortSpecifier":{"PortValue":443},"address":"10.132.0.75:443"}}}},"metadata_context":{},"request":{"http":{"headers":{":authority":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279\":{\"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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"cannot build dynamic response","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"keyName","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"userid","Value":{}},{"Name":"groups","Value":{}},{"Name":"keyId","Value":{}},{"Name":"selected_subscription_key","Value":{}}]},"Plain":null},"reason":"no such key: metadata"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"info","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"34c29bd1-fd80-45dc-a78f-7d730fdebce7","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:48042","PortSpecifier":{"PortValue":48042}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"aba9f0ed-72a1-4554-906c-2fffc5575952","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:48042","PortSpecifier":{"PortValue":48042}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982256,"nanos":146919499},"http":{"id":"aba9f0ed-72a1-4554-906c-2fffc5575952","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:36Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"aba9f0ed-72a1-4554-906c-2fffc5575952","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"26fc30bd-3368-4914-ac63-277da15f6401","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47306","PortSpecifier":{"PortValue":47306}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"26fc30bd-3368-4914-ac63-277da15f6401","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"26fc30bd-3368-4914-ac63-277da15f6401","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47306","PortSpecifier":{"PortValue":47306}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982257,"nanos":182460670},"http":{"id":"26fc30bd-3368-4914-ac63-277da15f6401","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"26fc30bd-3368-4914-ac63-277da15f6401","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"26fc30bd-3368-4914-ac63-277da15f6401","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"26fc30bd-3368-4914-ac63-277da15f6401","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"26fc30bd-3368-4914-ac63-277da15f6401","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"26fc30bd-3368-4914-ac63-277da15f6401","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"26fc30bd-3368-4914-ac63-277da15f6401","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"26fc30bd-3368-4914-ac63-277da15f6401","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"26fc30bd-3368-4914-ac63-277da15f6401","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"26fc30bd-3368-4914-ac63-277da15f6401","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:37Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"26fc30bd-3368-4914-ac63-277da15f6401","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47322","PortSpecifier":{"PortValue":47322}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47322","PortSpecifier":{"PortValue":47322}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982258,"nanos":220434838},"http":{"id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:38Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"d5d27617-86dd-4c58-abb4-cfa4dc3a71bc","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47338","PortSpecifier":{"PortValue":47338}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47338","PortSpecifier":{"PortValue":47338}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982259,"nanos":257982143},"http":{"id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:39Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"d5006cee-0c51-4532-90f7-a47be6ecc4db","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47344","PortSpecifier":{"PortValue":47344}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47344","PortSpecifier":{"PortValue":47344}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982260,"nanos":296436153},"http":{"id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:40Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6309cb92-b9cd-43b7-a3f5-2aaa4a719a70","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47348","PortSpecifier":{"PortValue":47348}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"6ebc9345-09c0-464e-af3a-977d2380fe28","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47348","PortSpecifier":{"PortValue":47348}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982261,"nanos":330692573},"http":{"id":"6ebc9345-09c0-464e-af3a-977d2380fe28","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:41Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"6ebc9345-09c0-464e-af3a-977d2380fe28","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47356","PortSpecifier":{"PortValue":47356}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47356","PortSpecifier":{"PortValue":47356}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982262,"nanos":365373443},"http":{"id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:42Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"5af2d6f6-cb5d-4502-9297-553faf22b8be","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47366","PortSpecifier":{"PortValue":47366}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"667c5629-8c6e-40a3-9437-f62b9bac3190","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47366","PortSpecifier":{"PortValue":47366}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982263,"nanos":402109174},"http":{"id":"667c5629-8c6e-40a3-9437-f62b9bac3190","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:43Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"667c5629-8c6e-40a3-9437-f62b9bac3190","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47372","PortSpecifier":{"PortValue":47372}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"e2e19956-d574-4233-b774-36cfbe064dd0","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47372","PortSpecifier":{"PortValue":47372}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982264,"nanos":436567220},"http":{"id":"e2e19956-d574-4233-b774-36cfbe064dd0","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:44Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"e2e19956-d574-4233-b774-36cfbe064dd0","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47376","PortSpecifier":{"PortValue":47376}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:47376","PortSpecifier":{"PortValue":47376}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982265,"nanos":471430965},"http":{"id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:45Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"38cbf1f0-4ade-4fdd-aca6-3057e60133e5","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:58900","PortSpecifier":{"PortValue":58900}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"10e5386a-6005-43cf-b8b0-63a83546ec95","method":"POST","path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions","host":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:58900","PortSpecifier":{"PortValue":58900}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.73:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982266,"nanos":507373257},"http":{"id":"10e5386a-6005-43cf-b8b0-63a83546ec95","method":"POST","headers":{":authority":"e2e-shared-a-0eaefd.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-1PAm2j83N052WFSvv_x7tzroSZ0iEYB1AW1nldcpEY2AAFT5pbj9ZMnjjplpk\"}"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","subscription":"e2e-rate-iso-a-130a99","tenant":"e2e-shared-a-0eaefd","userId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-a-0eaefd.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\",\"requestedSubscription\":\"e2e-rate-iso-a-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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-e2e-shared-a-0eaefd.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd\":{\"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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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":"e2e-rate-iso-a-130a99"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups","Value":{}},{"Name":"userid","Value":{}},{"Name":"selected_subscription","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"keyId","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"f3328fdd-243a-4381-ab80-a2d664cb7d01","keyName":"e2e-rate-a-130a99","selected_subscription":"e2e-rate-iso-a-130a99","selected_subscription_key":"ai-tenant-e2e-shared-a-0eaefd/e2e-rate-iso-a-130a99@ai-tenant-e2e-shared-a-0eaefd/rate-test-model-0eaefd","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-0eaefd","source":"internal","token_rate_limits":[{"limit":3,"window":"1m"}]}],"name":"e2e-rate-iso-a-130a99","namespace":"ai-tenant-e2e-shared-a-0eaefd","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"10e5386a-6005-43cf-b8b0-63a83546ec95","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:39816","PortSpecifier":{"PortValue":39816}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.75:443","PortSpecifier":{"PortValue":443}}}}},"request":{"http":{"id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","method":"POST","path":"/ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279/v1/completions","host":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com","scheme":"https"}}}} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"incoming authorization request","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","object":{"source":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.14:39816","PortSpecifier":{"PortValue":39816}}}}},"destination":{"address":{"Address":{"SocketAddress":{"address":"10.132.0.75:443","PortSpecifier":{"PortValue":443}}}}},"request":{"time":{"seconds":1783982266,"nanos":546936269},"http":{"id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","method":"POST","headers":{":authority":"e2e-shared-b-4b5279.apps.f1b82c64-0b3b-42d8-bbe1-bcbcb558cc4d.prod.konfluxeaas.com",":method":"POST",":path":"/ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279/v1/completions",":scheme":"https","accept":"*/*","accept-encoding":"gzip, deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.identity","msg":"identity validated","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","config":{"Name":"api-keys","Priority":0,"Conditions":{"Left":{"Selector":"request.headers.authorization","Operator":5,"Value":"^Bearer **** sk-oai-D90DM566oEN4pisL_Pe50NIBUWOfB7efMneRYcbeeAUXrPIL7zU4XELQxEZe"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","config":"apiKeyValidation","method":"POST","url":"https://maas-api-e2e-shared-b-4b5279.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/api-keys/validate","headers":{"Content-Type":["application/json"]},"body":"{\"key\":\"sk-oai-D90DM566oEN4pisL_Pe50NIBUWOfB7efMneRYcbeeAUXrPIL7zU4XELQxEZe\"}"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","config":{"Name":"apiKeyValidation","Priority":0,"Conditions":{"Left":{},"Right":{"Left":null,"Right":null}},"Metrics":false,"Cache":{},"UserInfo":null,"UMA":null,"GenericHTTP":{"Endpoint":"https://maas-api-e2e-shared-b-4b5279.odh-ai-gateway-infra.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","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"keyId":"62e9cfd6-8ce2-4d09-aa43-4020dbdfe4a5","keyName":"e2e-rate-b-130a99","subscription":"e2e-rate-iso-b-130a99","tenant":"e2e-shared-b-4b5279","userId":"62e9cfd6-8ce2-4d09-aa43-4020dbdfe4a5","username":"system:serviceaccount:default:tester-regular-user","valid":true}} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata.http","msg":"sending request","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","config":"subscription-info","method":"POST","url":"https://maas-api-e2e-shared-b-4b5279.odh-ai-gateway-infra.svc.cluster.local:8443/internal/v1/subscriptions/select","headers":{"Content-Type":["application/json"]},"body":"{\"groups\":[\"system:authenticated\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"],\"requestedModel\":\"ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279\",\"requestedSubscription\":\"e2e-rate-iso-b-130a99\",\"username\":\"system:serviceaccount:default:tester-regular-user\"}"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.metadata","msg":"fetched auth metadata","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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-e2e-shared-b-4b5279.odh-ai-gateway-infra.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":{"modelRefs":[{"name":"rate-test-model-4b5279","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"e2e-rate-iso-b-130a99","namespace":"ai-tenant-e2e-shared-b-4b5279","phase":"Active","ready":true}} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"evaluating for input","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","input":{"auth":{"identity":"Bearer **** deflate","authorization":"Bearer **** deflate","authorization":"Bearer **** {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","config":{"Name":"require-group-membership","Priority":0,"Conditions":{"Left":null,"Right":null},"Metrics":false,"Cache":{},"OPA":{"Rego":"\nmodel_access := {\"ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279\":{\"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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.authorization","msg":"access granted","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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":"system:serviceaccount:default:tester-regular-user"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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":"e2e-rate-iso-b-130a99"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","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\",\"system:serviceaccounts\",\"system:serviceaccounts:default\",\"system:authenticated\"]"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth.authpipeline.response","msg":"dynamic response built","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","config":{"Name":"identity","Priority":0,"Conditions":{"Left":null,"Right":null},"Wrapper":"envoyDynamicMetadata","WrapperKey":"identity","Metrics":true,"Cache":null,"Wristband":null,"DynamicJSON":{"Properties":[{"Name":"selected_subscription","Value":{}},{"Name":"selected_subscription_key","Value":{}},{"Name":"subscription_error","Value":{}},{"Name":"subscription_info","Value":{}},{"Name":"userid","Value":{}},{"Name":"keyId","Value":{}},{"Name":"subscription_error_message","Value":{}},{"Name":"groups_str","Value":{}},{"Name":"groups","Value":{}},{"Name":"keyName","Value":{}}]},"Plain":null},"object":{"groups":["system:authenticated","system:serviceaccounts","system:serviceaccounts:default","system:authenticated"],"groups_str":"system:authenticated,system:serviceaccounts,system:serviceaccounts:default,system:authenticated","keyId":"62e9cfd6-8ce2-4d09-aa43-4020dbdfe4a5","keyName":"e2e-rate-b-130a99","selected_subscription":"e2e-rate-iso-b-130a99","selected_subscription_key":"ai-tenant-e2e-shared-b-4b5279/e2e-rate-iso-b-130a99@ai-tenant-e2e-shared-b-4b5279/rate-test-model-4b5279","subscription_error":"","subscription_error_message":"","subscription_info":{"modelRefs":[{"name":"rate-test-model-4b5279","source":"internal","token_rate_limits":[{"limit":100,"window":"1m"}]}],"name":"e2e-rate-iso-b-130a99","namespace":"ai-tenant-e2e-shared-b-4b5279","phase":"Active","ready":true},"userid":"system:serviceaccount:default:tester-regular-user"}} {"level":"info","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","authorized":true,"response":"OK"} {"level":"debug","ts":"2026-07-13T22:37:46Z","logger":"authorino.service.auth","msg":"outgoing authorization response","request id":"8e44afbe-dd1f-4dfa-96db-b1195f49fda9","authorized":true,"response":"OK"} {"level":"info","ts":"2026-07-13T22:37:54Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/c7457200c8257af1effb9ef5944174cc682e91aef8417b77776dde9322a0e51a"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/335f078580ae29157c586f8550eb6e5d01fb9d6cf5fcd5539a1ef899c13bc8a6"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/1c96bfca862872ea213a5bdd8dc2fdff1ec9c82ab2e3bbb68549196dc83e48a8"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/2a7d7468d8910383ce0cc1e8b759d24155bd6a0a32197358a3671fb214671278"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/769ef7c908e093a9018325bd796c76c9ffeece14d01fbf936d79d52e65b98edd"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/f3a4cb831e932413fc703ca9039db332bd8c4365271056eaf7dd219bbd348f0b"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/751efa761bd5ac6c5704ddc31d154dfc46b8eb1819abae0e752246c9fcd740f5"} {"level":"info","ts":"2026-07-13T22:37:55Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/a2043e47e7c88525339dc19916d0a8adb3d2a425b9a3fdb6a683cf318a8b435b"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/c50dcbff4abf9ba3e6516437a6f65877d028c282175c966e2304986af2e13398"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/fd93b16a661c7a357d72b7c3e61c5048e62626985f639e330ec32f1c80290180"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/f7753570a5cfe4c2fb0b9cc1107e3bc1c92b5c9a44c163fef72f9702ff346e29"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/a4a1e85d999b07fc0285640448dbd4c762a4b8cbe9af13cbc8087b5fc1163941"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/25a119f81d009f9ce51b7ab7f8fd50f18aab69bbd9b344de315f99daeff0bc06"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/b62f4290a2ff3ef71b9c0bf8e4e175c182cf7382ac254b9944b6e33fb0a851b9"} {"level":"info","ts":"2026-07-13T22:38:01Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/84bce465adc1732fefe8f2c401b3ed33dac7866418864b20e22c65034e70bf92"} {"level":"info","ts":"2026-07-13T22:38:02Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/e1ccfb9bc2808c6e1ace99f02a29c13a0940f9884b77e72a51272e0f81b30ddb"} {"level":"info","ts":"2026-07-13T22:38:12Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/dcda91e3f34723ba6d82dc099d00b3c6405f8befdb5d0123e2bcbb4ed09583ac"} {"level":"info","ts":"2026-07-13T22:38:12Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/685d1254bd9b086145c9fdfff74905feaa7a70d9baa78358c6575b8c0a4be7ba"} {"level":"info","ts":"2026-07-13T22:38:13Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/940615382ccf8b12900b45ea48d0210269f30a70ff90c64c3c64ccb504e32fc8"} {"level":"info","ts":"2026-07-13T22:38:13Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/ad91236a47f8550e4bde8d2dbf0c1fbc273af45d3fb35a0d4794849131571375"} {"level":"info","ts":"2026-07-13T22:38:19Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/c0857c22a8829df74da7294a73b247f39c03604778883ecc155a07b0c6ae3882"} {"level":"info","ts":"2026-07-13T22:38:19Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/a7b5f46ce9551e8c29eb79515e0c7e15b235abb53b5d854e9aa34921279d51bd"} {"level":"info","ts":"2026-07-13T22:38:19Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/c57de447851479ca85c8e3ac4e988ae31529ae6bbd302a702bc6623a97d49572"} {"level":"info","ts":"2026-07-13T22:38:19Z","logger":"authorino.controller-runtime.manager.controller.authconfig","msg":"resource de-indexed","authconfig":"kuadrant-system/958918473e9dad1c2980bbac024154040036a5933e2e109624d0f6950b80e307"}