VM Console Proxy
This project adds a new API extension to Kubernetes,
that can be used to generate time limited tokens to access VNC.
Note: This project no longer provides VNC proxy functionality, so the project name should be changed in the future.
Demo

Installation
With SSP operator
The SSP operator can be configured to install the VM Console Proxy together with
a Route to expose it to the external network.
Without SSP operator
To deploy the latest version, use the following command:
kubectl apply -f "https://github.com/kubevirt/vm-console-proxy/releases/latest/download/vm-console-proxy.yaml"
API
See the API documentation.
API Access Permissions
The token.kubevirt.io:generate
ClusterRole
can be bound to users or service accounts to give
them permission to call the API.
Here are example commands how to bind it to a user or a service account:
# Bind ClusterRole to a user
kubectl create rolebinding "${ROLE_BINDING_NAME}" --clusterrole="token.kubevirt.io:generate" --user="${USER_NAME}"
# Bind ClusterRole to a ServiceAccount
kubectl create rolebinding "${ROLE_BINDING_NAME}" --clusterrole="token.kubevirt.io:generate" --serviceaccount="${SERVICE_ACCOUNT_NAME}"