{% extends "base-sfui.html" %} {% block title %}Kerbside consoles{% endblock %} {% block styles %} {% endblock %} {% block content %} {# Ten columns of names, ids, ports and counts: scroll the table rather than squash it. #}
| Name | Source | UUID | Hypervisor | Insecure Port | Secure Port | Admin | |||
|---|---|---|---|---|---|---|---|---|---|
| {{ console.name }} | {{ console.source }} | {{ console.uuid }} | {% if console.hypervisor %} {{ console.hypervisor }} ({{ console.hypervisor_ip }}) {% else %} {{ console.hypervisor_ip }} {% endif %} | {{ console.insecure_port }} | {{ console.secure_port }} | {# The disclosure ids are derived from the row, not generated, so a later polling phase can morph the table and leave an operator's open disclosure open. #}
{% include 'icons/audit.svg' %}AuditHere are the 20 most recent audit events for this console.
|
{# Real anchors: both are GET downloads of a .vv
file, so middle click, "copy link address" and a
page with no JavaScript all keep working. #}
{# Labelled because the visible summary is a
bare number and the icon beside it is
aria-hidden, so nothing else says what the
number counts. #}
{{ console.token_count }}{% include 'icons/tokens.svg' %}There are {{ console.token_count }} active authentication tokens for this console. An active authentication token is an opportunity to connect to the console. Sessions which were already open survive the expiration of their authentication token. |
{# Nothing to disclose when there is nothing to
terminate: a dim zero says so without offering a
control that does nothing. #}
{% if console.sessions %}
{{ console.sessions | length }}{% include 'icons/sessions.svg' %}
{% for session_id in console.sessions %}
{% endfor %}
|
|