Подключите свой Civo API key на Mac один раз.
Сгенерируйте ключ в дашборде Civo, вставьте его один раз, а дальше его держит macOS Keychain.
Любой аккаунт Civo на Mac начинается одинаково: без API key не заработает ничего. Обычный путь это Civo CLI, который кладёт ключ в открытый файл JSON в домашней папке и дальше оставляет заботу о нём на вас. CivoCloudManager берёт тот же ключ, проверяет его через Civo REST API v2 ещё во время онбординга и кладёт не в dotfile, а в macOS Keychain. Ниже оба пути, выбирайте тот, что вам ближе.
Как подключить ключ в CivoCloudManager
-
01
Откройте щит в строке меню.
При первом запуске приложение ставит иконку щита в строку меню. Клик по ней запускает онбординг из шести шагов. Регистрировать ничего не нужно и аккаунта заводить тоже, приложение общается с Civo напрямую.
-
02
Вставьте API key и проверьте его.
Ключ вводится в защищённое текстовое поле. Нажмите Validate, и приложение сходит с ним в Civo, прежде чем пустить вас дальше. Опечатка или уже перевыпущенный ключ отвалятся здесь, а не через три экрана. Рабочий ключ подтверждается тут же.
-
03
Выберите регион.
Приложение подтягивает живой список регионов из вашего аккаунта и показывает каждый вместе со страной. Выбранный регион становится значением по умолчанию для запросов, которым регион нужен. Отдельный запрос по-прежнему можно явно направить в другой регион.
-
04
Отметьте firewall для управления и задайте порт каждому.
Онбординг находит firewall в вашем аккаунте, группирует их по регионам и даёт отметить те, которыми будет управлять строка меню. Каждому назначается порт, по умолчанию 6443 для Kubernetes API server. Шаг можно пропустить и настроить всё позже.
-
05
По желанию включите Launch at Login.
Приложение регистрируется через SMAppService, и щит оказывается в строке меню после перезагрузки. Для доступа по таймеру это важно: чтобы закрыть открытое правило, приложение должно работать и доставать до Civo.
Откуда берётся Civo API key
Ключ генерируется в дашборде Civo, а не в клиенте. Войдите, откройте раздел аккаунта и перейдите в Security, прямая ссылка dashboard.civo.com/security, там перечислены ваши API keys. Ротацию документация Civo описывает там же: кнопка Regenerate рядом с ключом сбрасывает его, изменение вступает в силу сразу, и каждый следующий запрос обязан идти с новым значением. Относитесь к ключу как к паролю, он даёт полный доступ к аккаунту. Если не уверены, актуальный ли ключ у вас на руках, перевыпустите его и вставьте новое значение вместо того, чтобы разбирать 401.
Для сравнения: путь через CLI
Официальный Civo CLI хранит ключи под именами. Добавить ключ: civo apikey add <name> <key>, сделать активным: civo apikey current <name>, посмотреть список: civo apikey list. Всё это оседает в файле .civo.json в домашней папке вместе с настройками вроде региона. Путь переносится переменной окружения CIVO_CONFIG или флагом --config. Для CI/CD и скриптов это правильный инструмент, и скажем прямо: с несколькими именованными аккаунтами CLI справляется лучше приложения. Чего он не делает, так это не защищает ключ ничем, кроме прав на файл.
Что происходит с ключом на вашем Mac
CivoCloudManager пишет ключ в macOS Keychain как generic password, доступный только при разблокированном Mac, и никогда в конфиг в домашней папке. Показ сохранённых секретов внутри приложения, паролей инстансов, паролей баз данных и secret access key от object store, закрыт Touch ID через LocalAuthentication. Ваш ключ Civo уходит ровно на один хост, api.civo.com, это Civo REST API v2. Сервера издателя в этой цепочке нет, телеметрию приложение не собирает. Работает оно в App Sandbox с четырьмя разрешениями: sandbox, исходящий сетевой клиент, выбранные пользователем файлы на чтение и запись для экспорта и закладки в пределах приложения. Одна честная сноска: чтобы открыть firewall для вашего текущего адреса, строке меню нужно узнать ваш публичный IP, и она спрашивает его у публичного echo-сервиса. Никаких доступов к Civo в этом запросе нет.
Тот же ключ достаёт до Kubernetes API, поэтому kubectl необязателен
Вашим API key приложение забирает kubeconfig кластера из Civo, а доступ к Kubernetes живёт именно в kubeconfig. Разбор kubeconfig идёт на Swift, сертификат PEM и закрытый ключ импортируются через SecItemImport, объединяются в identity через SecIdentityCreate, и URLSession открывает mTLS с клиентским сертификатом. Ни kubectl, ни openssl, ни вызовов внешних процессов. CA из kubeconfig становится единственным якорем доверия для этого соединения, поэтому чужой хост, посторонний CA или просроченный сертификат через него не пройдут. По этому же соединению идут логи pod, нагрузки, события и метрики нод. Экспортировать kubeconfig в файл .yaml и работать через kubectl можно в любой момент.
Чтобы пользоваться ключом, покупать ничего не нужно
Управление firewall из строки меню бесплатно навсегда: открытие и закрытие доступа для текущего публичного IP, свой порт на каждый firewall, именованные пресеты IP, доступ по таймеру на 15 минут, 30 минут, час или два часа и массовое закрытие. Полный дашборд ресурсов бесплатен семь календарных дней с первого запуска, дальше нужна разовая покупка в Mac App Store, с Family Sharing. Без карты, без подписки и без аккаунта на нашей стороне. Требуется macOS 15 или новее, Apple silicon или Intel.
Что обычно спрашивают про Civo API key
- Где взять Civo API key?
- В дашборде Civo, в разделе Security вашего аккаунта, прямая ссылка dashboard.civo.com/security. Ключи перечислены там, и у каждого рядом есть кнопка Regenerate. Ни в CLI, ни в сторонних приложениях ключ не создаётся, они только используют тот, что вы сгенерировали в дашборде.
- Безопасно ли хранить Civo API key на Mac?
- Зависит от того, где он лежит. Civo CLI пишет ключ в .civo.json в домашней папке, это обычный файл, защищённый только правами доступа. CivoCloudManager кладёт его в macOS Keychain как generic password, читаемый только при разблокированном Mac, а показ остальных сохранённых секретов закрывает Touch ID. В любом случае ключ даёт полный доступ к аккаунту, так что обращайтесь с ним как с паролем.
- Что будет, если перевыпустить или отозвать Civo API key?
- Перевыпуск в дашборде Civo действует сразу, поэтому любой клиент со старым значением отвалится на следующем же запросе. Чинится это в одном месте: вставьте новый ключ в настройках приложения, и он заменит запись в Keychain, либо выполните civo apikey add
<name><key>и следом civo apikey current<name>для CLI. Больше ничего править не надо, регион, выбор firewall и пресеты IP хранятся отдельно. - Можно ли работать с несколькими аккаунтами Civo?
- Одновременно в CivoCloudManager нет. Приложение держит в Keychain один API key, и смена аккаунта означает замену ключа. Здесь CLI лучше: он хранит несколько именованных ключей и переключается между ними командой civo apikey current
<name>. Если аккаунты приходится тасовать весь день, оставьте это за CLI, а приложение держите на том аккаунте, за которым реально следите. - Нужен ли мне после этого Civo CLI?
- Для CI/CD, скриптов и всего, что должно работать без человека, да, и CLI здесь правильный инструмент. Для повседневной работы на Mac нет. Приложение ходит в тот же Civo REST API v2, достаёт до Kubernetes API по mTLS с клиентским сертификатом без kubectl и показывает логи pod, содержимое S3 и суммы расходов, которых в CLI нет. Многие в итоге держат оба.
Руководства
Шаг за шагом и честные сравнения.
- 01 Открыть firewall для своего IP Ручная процедура, ловушка динамического IP, которая после неё остаётся, и бесплатный путь из строки меню с закрытием по сроку.
- 02 Против Lens, OpenLens и k9s Три инструмента, которым всё равно, чей кластер, и один заточенный под Civo. Разница решает, что вы держите открытым.
- 03 Civo Object Storage по S3 Региональный endpoint, рабочая конфигурация для s3cmd, rclone и AWS CLI и то, что нативный клиент делает иначе.
- 04 Civo DNS на Mac Делегируйте домен на неймсерверы Civo, а зону дальше ведите в нативном приложении, а не во вкладке браузера.
- 05 Changelog Все вышедшие релизы, новые сверху, с подробностями, для которых заметка в магазине слишком коротка.
Подробно
Точечные материалы по каждому продукту Civo.
У каждой области Civo, которой касается CivoCloudManager, есть своя страница с деталями, компромиссами и архитектурой. Выберите ту, что ближе всего к вашей текущей работе.
- 01 Альтернатива Civo CLI для Mac Где GUI сильнее CLI, где нет и как они уживаются вместе.
- 02 Civo Kubernetes GUI для Mac Живой дашборд кластера, логи pod в реальном времени, kubectl не нужен.
- 03 Браузер Civo Object Storage для Mac Нативный S3-совместимый браузер. Пауза простаивающих bucket в общем хранилище.
- 04 Civo firewall из строки меню Mac Открытие и закрытие в один клик, автоопределение IP, таймер автозакрытия.
- 05 Дашборд расходов Civo для Mac Реальные начисления из Civo charges API. Выбор периода и прогноз на конец месяца.
Firewall в строке меню не стоит ничего.
Скачайте CivoCloudManager в Mac App Store, вставьте ключ один раз и открывайте или закрывайте доступ firewall для текущего IP прямо из строки меню бесплатно, покупка для этого не нужна.