# DB Auth Check

> Используй для безопасной классификации уже полученного свидетельства об ошибке аутентификации или лицензии 1С, когда база нужна будущему runtime workflow, а логин/пароль отсутствуют, неизвестны или не проходят. Текущий applied runtime не запускай для проверки credentials.

- Skill: `ingvarconsulting/db-auth-check` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ingvarconsulting/db-auth-check`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ingvarconsulting/db-auth-check/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: IngvarConsulting (https://skillmd.com/u/ingvarconsulting)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/ingvarconsulting/db-auth-check

---


# db-auth-check — доступ к базе без лишнего риска

Этот skill классифицирует настройки и уже предоставленное runtime evidence, не
перебирая пользователей и не пытаясь чинить лицензирование.

- Runtime идёт через `unica.run`: вызов без `op` отдаёт словарь операций и
контракт каждой — `argsSchema`, `execution`, `previewRequired`,
`ifRevRequiredOnApply`. Контракт вызова бери оттуда, а не из этого текста;
выбирай только операцию с `implemented: true` и не выдумывай аргументов
записи с `argsSchema: null`; превью исполнением не является. Не обходи
контракт прямым runner-ом.
- Не запускай auth probe через `unica.run` и не выдавай чтение connection string или превью за успешное подключение к ИБ.

## Жесткие стопы

Если вывод любой команды похож на проблему лицензии, немедленно остановись и попроси пользователя исправить лицензию 1С в окружении. Не выполняй обходы и ремонт:

- `лиценз`, `license`, `HASP`, `nethasp`, `LM`, `программная лицензия`;
- `Не обнаружена лицензия`, `License not found`, `No license`, `Лицензия не найдена`;
- ошибки запуска платформы, где явно упомянуты лицензии.

## Правило пустых учетных данных

Если пользователь не указал логин/пароль в connection string, аргументах или
безопасном локальном конфиге, не проверяй кандидатов запуском runtime. Попроси
пользователя указать или подтвердить credentials. Если пользователь уже
предоставил независимое свидетельство проверки, допустимо классифицировать
только два явно названных кандидата:

1. `Администратор` с пустым паролем.
2. `Admin` с пустым паролем.

После двух подтверждённых отказов остановись и спроси пользователя, из-под кого подключаться.

Не пробуй другие имена, не создавай пользователя, не сбрасывай пароль.

## Workflow

1. Возьми connection из аргумента или `./v8project.yaml`, не публикуя её значение.
2. Если credentials явно заданы, не проверяй их текущим preview: сообщи, что фактическая аутентификация не подтверждена.
3. Если credentials отсутствуют, запроси их у пользователя; самостоятельно runtime probe не выполняй.
4. Если пользователь предоставил результат отдельной проверки, классифицируй его:
   - лицензия → hard stop;
   - неверный пользователь/пароль → вопрос пользователю либо классификация следующего уже проверенного кандидата;
   - база недоступна/путь неверный → сообщи конкретную ошибку и остановись.
5. Не вызывай `unica.run` с применением или прямой runner ради auth-check.

## Передача credentials

- Предпочитай параметры/переменные окружения, если их поддерживает текущая команда.
- Если приходится записывать credentials в `v8project.yaml` или connection string, не делай это молча: предупреди пользователя и не коммить такой файл.
- Никогда не печатай пароль в итоговом сообщении или логах.

