auth
FreeAuthentication and authorization patterns for Rossoctl services
The English summary is being prepared. Showing the original description.
Configure OpenTelemetry Collector with OAuth2 authentication for trace export
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
Configure the OpenTelemetry Collector to authenticate to backends using OAuth2 client credentials flow.
When exporting traces to backends that require authentication (e.g., MLflow with Keycloak), the OTEL Collector can use the oauth2clientauthextension to obtain and attach bearer tokens automatically.
extensions:
oauth2client/mlflow:
client_id: ${env:MLFLOW_CLIENT_ID}
client_secret: ${env:MLFLOW_CLIENT_SECRET}
token_url: ${env:KEYCLOAK_TOKEN_URL}
scopes: ["openid"]
timeout: 10s
tls:
ca_file: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
exporters:
otlphttp/mlflow:
traces_endpoint: http://mlflow:5000/v1/traces
auth:
authenticator: oauth2client/mlflow
extensions:
health_check: {}
oauth2client/mlflow:
client_id: ${env:MLFLOW_CLIENT_ID}
client_secret: ${env:MLFLOW_CLIENT_SECRET}
token_url: ${env:KEYCLOAK_TOKEN_URL}
scopes: ["openid"]
timeout: 10s
tls:
ca_file: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
processors:
batch:
timeout: 1s
send_batch_size: 100
exporters:
otlphttp/mlflow:
traces_endpoint: http://mlflow:5000/v1/traces
auth:
authenticator: oauth2client/mlflow
service:
extensions: [health_check, oauth2client/mlflow]
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlphttp/mlflow]
containers:
- name: otel-collector
env:
- name: MLFLOW_CLIENT_ID
valueFrom:
secretKeyRef:
name: mlflow-oauth-secret
key: MLFLOW_CLIENT_ID
- name: MLFLOW_CLIENT_SECRET
valueFrom:
secretKeyRef:
name: mlflow-oauth-secret
key: MLFLOW_CLIENT_SECRET
- name: KEYCLOAK_TOKEN_URL
value: "http://keycloak-service.keycloak.svc.cluster.local:8080/realms/master/protocol/openid-connect/token"
When the Keycloak endpoint uses HTTPS with a custom CA:
oauth2client/mlflow:
tls:
ca_file: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
insecure: false
When using the internal HTTP endpoint:
oauth2client/mlflow:
token_url: http://keycloak-service.keycloak.svc.cluster.local:8080/realms/master/protocol/openid-connect/token
# No TLS configuration needed
In charts/rossoctl-deps/templates/otel-collector.yaml:
{{- if .Values.otelCollector.mlflow.oauth2.enabled }}
extensions:
oauth2client/mlflow:
client_id: ${env:MLFLOW_CLIENT_ID}
client_secret: ${env:MLFLOW_CLIENT_SECRET}
token_url: {{ .Values.otelCollector.mlflow.oauth2.tokenUrl }}
scopes: ["openid"]
timeout: 10s
{{- if .Values.otelCollector.mlflow.oauth2.tlsEnabled }}
tls:
ca_file: {{ .Values.otelCollector.mlflow.oauth2.caFile }}
{{- end }}
{{- end }}
kubectl exec -it otel-collector-xxx -n rossoctl-system -- env | grep MLFLOW
curl -X POST "$KEYCLOAK_TOKEN_URL" \
-d "grant_type=client_credentials" \
-d "client_id=$MLFLOW_CLIENT_ID" \
-d "client_secret=$MLFLOW_CLIENT_SECRET"
kubectl exec -it otel-collector-xxx -n rossoctl-system -- \
ls -la /etc/pki/ca-trust/extracted/pem/
http://keycloak-service.keycloak.svc.cluster.local:8080
service.extensionskubectl logs -n rossoctl-system -l app=otel-collector
The standard OTEL collector image includes oauth2clientauthextension. If using a custom build, ensure it's included:
# builder-config.yaml
extensions:
- gomod: go.opentelemetry.io/collector/extension/auth/oauth2clientauthextension v0.x.x
auth:keycloak-confidential-clientopenshift:trusted-ca-bundlegenai:semantic-conventions - OTel GenAI semantic conventions for tracesNo reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Authentication and authorization patterns for Rossoctl services
The English summary is being prepared. Showing the original description.
Create confidential OAuth2 clients in Keycloak for server-to-service authentication
The English summary is being prepared. Showing the original description.
Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication
The English summary is being prepared. Showing the original description.
CI pipeline monitoring, status checks, and PR validation workflows
The English summary is being prepared. Showing the original description.
Monitor running CI jobs, wait for completion, create tasks for results
The English summary is being prepared. Showing the original description.
Check PR CI status - all checks, failures, test results, and artifacts
The English summary is being prepared. Showing the original description.