落地报价模板主账与后台:合同映射、灌种 SQL/脚本、智能体填表,并补测服运维探针与合同文档对齐。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
$ErrorActionPreference = "Continue"
|
||||
function Redis-Ping([string]$rh, [int]$port) {
|
||||
try {
|
||||
$tcp = New-Object Net.Sockets.TcpClient
|
||||
$iar = $tcp.BeginConnect($rh, $port, $null, $null)
|
||||
$ok = $iar.AsyncWaitHandle.WaitOne(2000)
|
||||
if (-not $ok) { $tcp.Close(); return "tcp_timeout" }
|
||||
$tcp.EndConnect($iar)
|
||||
$stream = $tcp.GetStream()
|
||||
$stream.ReadTimeout = 2000
|
||||
$payload = [Text.Encoding]::ASCII.GetBytes("*1`r`n`$4`r`nPING`r`n")
|
||||
$stream.Write($payload, 0, $payload.Length)
|
||||
$buf = New-Object byte[] 64
|
||||
$n = $stream.Read($buf, 0, $buf.Length)
|
||||
$tcp.Close()
|
||||
return [Text.Encoding]::ASCII.GetString($buf, 0, $n).Trim()
|
||||
} catch {
|
||||
return ("err:" + $_.Exception.Message)
|
||||
}
|
||||
}
|
||||
function Redis-AuthPw([string]$rh, [int]$port, [string]$pass) {
|
||||
try {
|
||||
$tcp = New-Object Net.Sockets.TcpClient
|
||||
$tcp.Connect($rh, $port)
|
||||
$stream = $tcp.GetStream()
|
||||
$stream.ReadTimeout = 3000
|
||||
# AUTH pass
|
||||
$ms = New-Object IO.MemoryStream
|
||||
$passBytes = [Text.Encoding]::UTF8.GetBytes($pass)
|
||||
$hdr = [Text.Encoding]::ASCII.GetBytes("*2`r`n`$4`r`nAUTH`r`n`$" + $passBytes.Length + "`r`n")
|
||||
$ms.Write($hdr, 0, $hdr.Length)
|
||||
$ms.Write($passBytes, 0, $passBytes.Length)
|
||||
$cr = [Text.Encoding]::ASCII.GetBytes("`r`n")
|
||||
$ms.Write($cr, 0, 2)
|
||||
$payload = $ms.ToArray()
|
||||
$stream.Write($payload, 0, $payload.Length)
|
||||
$buf = New-Object byte[] 128
|
||||
$n = $stream.Read($buf, 0, $buf.Length)
|
||||
$tcp.Close()
|
||||
return [Text.Encoding]::ASCII.GetString($buf, 0, $n).Split("`r")[0]
|
||||
} catch { return ("err:" + $_.Exception.Message) }
|
||||
}
|
||||
function Redis-AuthUserPw([string]$rh, [int]$port, [string]$user, [string]$pass) {
|
||||
try {
|
||||
$tcp = New-Object Net.Sockets.TcpClient
|
||||
$tcp.Connect($rh, $port)
|
||||
$stream = $tcp.GetStream()
|
||||
$stream.ReadTimeout = 3000
|
||||
$userBytes = [Text.Encoding]::UTF8.GetBytes($user)
|
||||
$passBytes = [Text.Encoding]::UTF8.GetBytes($pass)
|
||||
$ms = New-Object IO.MemoryStream
|
||||
$w = {
|
||||
param($s,$b)
|
||||
$h = [Text.Encoding]::ASCII.GetBytes($s)
|
||||
$ms.Write($h,0,$h.Length)
|
||||
if ($b) { $ms.Write($b,0,$b.Length); $c=[Text.Encoding]::ASCII.GetBytes("`r`n"); $ms.Write($c,0,2) }
|
||||
}
|
||||
# manual
|
||||
$parts = @("AUTH", $user, $pass)
|
||||
$pre = [Text.Encoding]::ASCII.GetBytes("*" + $parts.Count + "`r`n")
|
||||
$ms.Write($pre,0,$pre.Length)
|
||||
foreach ($p in $parts) {
|
||||
$b = [Text.Encoding]::UTF8.GetBytes($p)
|
||||
$h = [Text.Encoding]::ASCII.GetBytes("$" + $b.Length + "`r`n")
|
||||
$ms.Write($h,0,$h.Length)
|
||||
$ms.Write($b,0,$b.Length)
|
||||
$c=[Text.Encoding]::ASCII.GetBytes("`r`n"); $ms.Write($c,0,2)
|
||||
}
|
||||
$payload = $ms.ToArray()
|
||||
$stream.Write($payload, 0, $payload.Length)
|
||||
$buf = New-Object byte[] 128
|
||||
$n = $stream.Read($buf, 0, $buf.Length)
|
||||
$tcp.Close()
|
||||
return [Text.Encoding]::ASCII.GetString($buf, 0, $n).Split("`r")[0]
|
||||
} catch { return ("err:" + $_.Exception.Message) }
|
||||
}
|
||||
|
||||
Write-Host ("ping_127=" + (Redis-Ping "127.0.0.1" 6379))
|
||||
Write-Host ("ping_intranet=" + (Redis-Ping "10.206.0.14" 6379))
|
||||
|
||||
# load url password
|
||||
$pass=$null; $user=$null
|
||||
Get-Content "E:\wwwroot\.env" | ForEach-Object {
|
||||
if ($_ -match "^REDIS_URL=redis://([^:/@]+):([^@]+)@") { $user=$Matches[1]; $pass=$Matches[2] }
|
||||
}
|
||||
Write-Host ("loaded user=" + $user + " pw_len=" + $pass.Length)
|
||||
Write-Host ("auth_intranet_pw_only=" + (Redis-AuthPw "10.206.0.14" 6379 $pass))
|
||||
Write-Host ("auth_intranet_user_pw=" + (Redis-AuthUserPw "10.206.0.14" 6379 $user $pass))
|
||||
Write-Host ("auth_127_pw_only=" + (Redis-AuthPw "127.0.0.1" 6379 $pass))
|
||||
Write-Host ("auth_127_user_pw=" + (Redis-AuthUserPw "127.0.0.1" 6379 $user $pass))
|
||||
Write-Host "REDIS_COMPARE_DONE"
|
||||
Reference in New Issue
Block a user