Учёт DEPO: скрипт снова выполняется; логин bj виден в обоих способах; новые логин и пароль — только после проверки входа
- EXEC(...) в T-SQL склеивает только строки и переменные: REPLACE/QUOTENAME внутри давали ошибку 102, и SQL Server отклонял весь скрипт (.06.4–.06.6). Команда входа собирается в @sql заранее; тест ловит вызовы функций внутри EXEC; живая проверка синтаксиса на SQL Server без выполнения (SET PARSEONLY) — TestDepoSetupScriptParseLive. - «Логин bj / Пароль bj» и в способе «Дать логин администратора»: на общем сервере bj_user может быть занят другим bj — подготовка сменила бы ему пароль. Предупреждение. - Показ скрипта на странице ничего не сохраняет. Логин и пароль из выданного скрипта и из «Проверить подключение» хранятся черновиком (DepoNewUser/DepoNewPass) и становятся рабочими только после успешного входа: службы bj с неверным паролем за минуты блокировали логин на сервере (CHECK_POLICY) — у всех, кто им пользуется. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -324,7 +324,9 @@ func (h *setupHandlers) renderWizard(w http.ResponseWriter, r *http.Request) {
|
||||
if step == 3 {
|
||||
d.Sub = depoWizardSub(r.URL.Query().Get("sub"))
|
||||
d.DepoUser, d.DepoPass = depoSetupLogin(s.Fancy), s.Fancy.Password
|
||||
if s.Fancy.User != d.DepoUser || d.DepoPass == "" {
|
||||
if s.Fancy.DepoNewUser != "" { // скрипт уже выдан, вход ещё не проверен — те же логин и пароль, что в нём
|
||||
d.DepoUser, d.DepoPass = s.Fancy.DepoNewUser, s.Fancy.DepoNewPass
|
||||
} else if s.Fancy.User != d.DepoUser || d.DepoPass == "" {
|
||||
d.DepoPass = depoGenPassword()
|
||||
}
|
||||
d.DepoMode = "auto"
|
||||
|
||||
Reference in New Issue
Block a user