Kirjaudu sisään Ilmainen ikuisesti Aloita

MSP-työkalut

Teidän RMM-järjestelmänne tekee jo API-kutsuja.
Clavitor tekee niistä turvallisia.

Teidän teknikkonne käyttävät Dattoa, N-ablea ja ConnectWisea päivittäin. Jokainen skripti, jokainen automaatio, jokainen ajoitettu tehtävä tarvitsee tunnistetietoja. Tänään ne ovat skriptimuuttujissa, mukautetuissa kentissä tai jaetussa holvissa, jota kaikki voivat lukea. Clavitor-välityspalvelin ja CLI muuttavat tämän muuttamatta työnkulkuja.

Välityspalvelinmalli RMM-järjestelmille

Aseta HTTPS_PROXY päätepisteeseen, ja olemassa olevat skriptinne toimivat muuttumattomina. Välityspalvelin sieppaa lähtevät HTTPS-pyynnöt, ratkaisee otsikoiden clavitor://-viittaukset ja injektoi todellisen tunnistetiedon. Skriptinne ei koskaan näe salaista tietoa. RMM-konsolinne ei koskaan kirjaa sitä.

# On the managed endpoint — one-time setup
$env:HTTPS_PROXY = "http://localhost:1983"

# Your existing automation scripts work unchanged
# The proxy resolves clavitor:// references in request headers
Invoke-RestMethod -Uri "https://api.openai.com/v1/models" `
  -Headers @{ Authorization = "Bearer clavitor://OpenAI/key" }

PowerShell

PowerShell on MSP:n päivittäinen kieli. Sekä CLI että välityspalvelin toimivat natiivisti.

CLI – yksittäiset arvot

# Resolve, use, scrub — the credential lives for one statement
$cred = clavitor-cli get "Client-Acme/VPN" --field password
Add-VpnConnection -Name "Acme" -ServerAddress "vpn.acme.com" -AuthenticationMethod MSChapv2
$secure = ConvertTo-SecureString $cred -AsPlainText -Force
Set-VpnConnectionUsernamePassword -ConnectionName "Acme" -Password $secure
Remove-Variable cred, secure

Renderöinti – konfiguraatiomallit

# Template with clavitor:// references (safe to store in your RMM)
clavitor-cli render monitoring-config.json | `
  Set-Content -Path "C:\ProgramData\Monitor\config.json"

Välityspalvelin – läpinäkyvä injektointi

$env:HTTPS_PROXY = "http://localhost:1983"

# Every Invoke-RestMethod and Invoke-WebRequest now resolves clavitor://
Invoke-RestMethod -Uri "https://api.datto.com/v1/devices" `
  -Headers @{ Authorization = "Bearer clavitor://Datto API/key" }

Atera

Atera korvaa mukautettujen kenttien paikkamerkit skriptiparametreihin ajon aikana käyttäen {[Atera.<level>.CustomField.<name>]}-syntaksia. Syötä Clavitor-tunnus kertaluonteiseen asennusskriptiin parametrina; myöhemmät skriptit kutsuvat CLI:tä päätepisteessä.

Asennus IT-automaatioprofiilin kautta

Luo Ateran skriptikirjastoon Asenna Clavitor -niminen PowerShell-skripti yhdellä parametrilla. Käytä sitä suorittavassa IT-automaatioprofiilissa asiakastason kentän paikkamerkin kanssa:

Install-Clavitor.ps1 -Token "{[Atera.Customer.CustomField.ClavitorToken]}"

Atera korvaa arvot ennen kuin agentti lukee sen argumenttiluettelon. Skripti:

param([Parameter(Mandatory)][string]$Token)
$Token | clavitor-cli init
Remove-Variable Token

Tunnistetietojen ratkaisu ajon aikana

Kun päätepiste on rekisteröity, kaikki myöhemmät Atera-skriptit lukevat tunnistetiedot holvista – Atera pitää vain tunnusslottia:

$pass = clavitor-cli get "Client-Acme/SQL Server" --field password
$secure = ConvertTo-SecureString $pass -AsPlainText -Force
Invoke-Sqlcmd -ServerInstance "sql.acme.local" `
  -Credential (New-Object PSCredential("sa", $secure)) -Query "SELECT 1"
Remove-Variable pass, secure

ConnectWise Automate

Automate korvaa Extra Data Field (EDF) -makrot skriptivaiheen argumentteihin käyttäen {%^el:FieldName^%}-syntaksia (tietokonetason EDF). CLI asennetaan Automate-skriptin avulla, joka lataa binäärin ja kutsuu PowerShell-vaiheen parametrina syötetyn tunnuksen kanssa – EDF-arvo korvataan ennen skriptivaiheen suorittamista.

Automate-skripti: asennus

Luo Automate-skriptieditorissa skripti kahdella vaiheella:

Step 1  File Download from LTShare       clavitor-cli.exe → %windir%\Temp\
Step 2  Shell Execute (PowerShell)       Install-Clavitor.ps1 -Token "{%^el:ClavitorToken^%}"

{%^el:ClavitorToken^%}-makro korvataan tietokonetason EDF-arvolla ennen PowerShell-vaiheen suorittamista. Pidä tunnukset alle 255 merkkiä, jotta ne pysyvät LabReplace-korvausrajan sisällä. Itse skripti:

# Install-Clavitor.ps1
param([Parameter(Mandatory)][string]$Token)
$Token | clavitor-cli init
Remove-Variable Token

Automate-skripti: verkkotunnuksen tunnistetietojen rotaatio

Myöhemmät skriptit lukevat holvista ja kirjoittavat tilan takaisin EDF:ään kojelautaa varten:

$cred = clavitor-cli get "Client-Delta/Domain Admin" --field password
$secure = ConvertTo-SecureString $cred -AsPlainText -Force
Reset-ComputerMachinePassword `
  -Credential (New-Object PSCredential("administrator", $secure))
# Push timestamp back to EDF "LastRotation" via Automate's ExtraData Set Value step
Write-Output (Get-Date -Format o)
Remove-Variable cred, secure

Datto RMM

Datto RMM paljastaa sivusto- ja globaalit muuttujat PowerShell-komponenteille ympäristömuuttujina $env:-etuliitteellä; käyttäjän määrittämät kentät (UDF) paljastetaan $env:UDF_1$env:UDF_30. Yksi komponentti asentaa CLI:n; kaikki sen jälkeen lukee holvista.

Komponentti: asennus ja alustus

Määritä sivustomuuttuja ClavitorToken Dattokonsolissa – se näkyy komponentissa $env:ClavitorToken:

# Datto RMM component: bootstrap Clavitor CLI
# Site variable "ClavitorToken" → $env:ClavitorToken at runtime
$env:ClavitorToken | clavitor-cli init

Komponentti: API-monitori välityspalvelimen kautta

Myöhemmät komponentit kirjoittavat clavitor://-viittauksia pyyntöotsikoihin – välityspalvelin ratkaisee ne isännällä. Tunnistetieto ei koskaan pääse skriptin muistiin tai Dattokirjauksiin:

# Scheduled monitor — runs every 15 minutes
$env:HTTPS_PROXY = "http://localhost:1983"
$response = Invoke-RestMethod -Uri "https://api.client.com/v1/status" `
  -Headers @{ Authorization = "Bearer clavitor://Client-Bravo/Monitoring API" }

# Push a status code back into UDF_5 for the Datto dashboard
New-ItemProperty -Path "HKLM:\SOFTWARE\CentraStage" `
  -Name "Custom5" -Value $response.status -Force | Out-Null

Kaseya VSA

VSA-agenttitoimenpiteet korvaavat #variable#-makrot PowerShell-argumentteihin ajon aikana ja suorittavat sitten skriptin executePowershell-vaiheperheen kautta (executePowerShell64BitSystem jne.). Agenttitietueen mukautettu kenttä sisältää Clavitor-tunnuksen; toimenpide syöttää sen alustukseen stdin kautta.

Agenttitoimenpide: asennus

Lisää agentin mukautettu kenttä ClavitorToken (Audit → Edit Profile → Custom Fields) ja rakenna sitten toimenpide kahdella vaiheella:

Step 1  Get File from VSA Server     clavitor-cli.exe → C:\Program Files\Clavitor\
Step 2  Execute PowerShell (64 Sys)  "C:\Program Files\Clavitor\clavitor-cli.exe init" \
                                     stdin = "#vAgentConfiguration.ClavitorToken#"

#vAgentConfiguration.ClavitorToken#-makro korvataan mukautetun kentän arvolla ennen kuin VSA suorittaa komennon – tunnus ei näy VSA:n toimenpidelokissa.

Agenttitoimenpide: pääkäyttäjän tunnistetietojen rotaatio

Alustuksen jälkeen mikä tahansa myöhempi toimenpide lukee holvista:

# Executed via executePowerShell64BitSystem
$cred = clavitor-cli get "Client-Hotel/Local Admin" --field password
$secure = ConvertTo-SecureString $cred -AsPlainText -Force
Set-LocalUser -Name "Administrator" -Password $secure
Remove-Variable cred, secure

N-able N-central

Automaation yksikkö on AMP (Automation Manager Policy) – PowerShell-pohjainen käytäntö, joka on rakennettu Automation Managerissa. Organisaatio-, asiakas- tai sivustotasoiset mukautetut ominaisuudet voidaan syöttää Run PowerShell Script -objektiin syöttöparametreina.

AMP: asennus mukautetulla ominaisuudella syötteenä

Lisää asiakastason mukautettu ominaisuus ClavitorToken (Administration → Custom Properties). Luo Automation Managerissa AMP, jonka Run PowerShell Script -objekti sitoo syöttöparametrin Token kyseiseen mukautettuun ominaisuuteen. Skripti:

param([Parameter(Mandatory)][string]$Token)
$Token | clavitor-cli init
Remove-Variable Token

Mukautettu ominaisuusarvo virtaa sisään $Token. Se ei koskaan näy AMP:n viedyssä XML:ssä tai N-centralin auditlokissa.

Skriptirepositorio: hae tunnistetieto ajon aikana

Skriptirepositorion (Configuration → Repository → Scripts/Software) kautta lähetetyille ad-hoc-skripteille päätepiste on jo alustettu – skripti kutsuu vain CLI:tä:

$dbPass = clavitor-cli get "Client-Bcme/SQL Server" --field password
$secure = ConvertTo-SecureString $dbPass -AsPlainText -Force
Invoke-Sqlcmd -ServerInstance "sql.bcme.com" `
  -Credential (New-Object PSCredential("sa", $secure)) -Query "SELECT 1"
Remove-Variable dbPass, secure

N-able N-sight

N-sight (aiemmin SolarWinds RMM) käyttää samaa Automation Manager -moottoria kuin N-central, sekä Script Manageria .ps1, AMP-, batch- ja muihin skriptityyppeihin. Malli peilaa N-centralia: AMP syöttöparametrilla tunnukselle, sitten kaikki muu ratkeaa ajon aikana.

Script Manager: asennus automaattisen tehtävän kautta

Lataa Install-Clavitor.ps1 asetuksiin → Script Manager parametrilla tunnukselle. Liitä se automaattiseksi tehtäväksi päätepisteeseen; syötä tunnus skriptin argumenttina laitetason asetuksesta:

param([Parameter(Mandatory)][string]$Token)
$Token | clavitor-cli init
Remove-Variable Token

Automaattinen tehtävä: ajoitettu varmuuskopiointi holvin tunnistetiedoilla

Kun ajoitetut tehtävät on alustettu, ne hakevat tunnistetiedot holvista. Mikä tahansa tavallinen tuloste enintään 255 merkkiä näkyy takaisin N-sight-kojelaudassa:

$pass = clavitor-cli get "Client-India/SQL Backup" --field password
$secure = ConvertTo-SecureString $pass -AsPlainText -Force
Backup-SqlDatabase -ServerInstance "sql.india.com" -Database "AppDB" `
  -Credential (New-Object PSCredential("backup-svc", $secure))
Write-Output "backup OK $(Get-Date -Format o)"
Remove-Variable pass, secure

NinjaOne

Päätepisteessä suoritettavat NinjaOne-skriptit voivat lukea ja kirjoittaa mukautettuja kenttiä sisäänrakennetuilla cmdlet-komennoilla: Ninja-Property-Get <name> palauttaa arvon, Ninja-Property-Set <name> <value> kirjoittaa sen takaisin. Tallenna Clavitor-tunnus organisaation mukautettuun kenttään (tyyppi Secure, jotta se on kirjoitussuojattu konsolista); asennusskripti lukee sen kerran.

Asennusskripti: lue tunnus mukautetusta kentästä

Lisää Administration → Library → Custom Fields -kohdassa organisaatiokenttä clavitorToken tyyppiä Secure. Suorita sitten asennusskripti:

$token = Ninja-Property-Get clavitorToken
$token | clavitor-cli init
Remove-Variable token

Mukautettu toiminto: API-kutsu välityspalvelimen kautta

Kun automaatiot on asennettu, ne kutsuvat ulkoisia API-rajapintoja välityspalvelimen kautta – tunnistetietoa ei koskaan kopioida skriptimuuttujaan:

$env:HTTPS_PROXY = "http://localhost:1983"
$response = Invoke-RestMethod -Uri "https://api.client-echo.com/v1/status" `
  -Headers @{ Authorization = "Bearer clavitor://Client-Echo/Monitoring API" }

# Push the result back to a device custom field for dashboarding
Ninja-Property-Set lastApiStatus $response.status

Syncro

Syncro paljastaa resurssien mukautetut kentät ja tagit Platform-skriptimuuttujina käyttäen {{asset_custom_field_<name>}}-kaksois-aaltosulkeiden syntaksia. Määritä alustan tyyppinen skriptimuuttuja ja sido se kenttään – Syncro korvaa arvon PowerShell-parametrilla skriptin suoritusajankohtana.

Syncro-skripti: asennus

Luo resurssin mukautettu kenttä clavitor_token. Määritä skriptieditorissa muuttuja Token tyyppiä Platform, joka on sidottu {{asset_custom_field_clavitor_token}}; syötä se PowerShell-parametriin skriptin rungossa:

param([Parameter(Mandatory)][string]$Token)
$Token | clavitor-cli init
Remove-Variable Token

Syncro-skriptieditorin jokaisen paneelin alareunassa oleva Quick Help -paneeli listaa kaikki saatavilla olevat alustan muuttujat resurssin, asiakkaan ja tiketin kontekstissa.

Syncro-skripti: yhdistä VPN holvin tunnistetiedoilla

Asennuksen jälkeen skriptit ja automaattiset korjaukset ratkaisevat tunnistetiedot holvista ja käyttävät niitä suoraan:

$pass = clavitor-cli get "Client-Golf/VPN" --field password
$secure = ConvertTo-SecureString $pass -AsPlainText -Force
Add-VpnConnection -Name "Golf" -ServerAddress "vpn.golf.com" `
  -AuthenticationMethod MSChapv2 -Force
Set-VpnConnectionUsernamePassword -ConnectionName "Golf" -Password $secure
# Write status back to asset for Syncro dashboard
Rmm-Alert -Category "vpn-status" -Body "Golf connected $(Get-Date -Format o)"
Remove-Variable pass, secure

Miksi tämä on tärkeää MSP:ille

Jokainen RMM-alusta tallentaa tunnistetiedot johonkin – mukautetut ominaisuudet, sivustomuuttujat, lisätietokentät, skriptiparametrit. Jokainen teknikkö, jolla on konsolikäyttö, voi nähdä ne. Jokainen RMM-konsolin tietomurto paljastaa jokaisen asiakkaan tunnistetiedot.

Clavitor siirtää tunnistetiedot pois RMM-järjestelmästä. RMM tallentaa vain agenttitunnuksen (yksi per asiakas). Tunnus antaa rajatun pääsyn kyseisen asiakkaan holviin. RMM-konsolin tietomurto paljastaa tunnuksia, ei tunnistetietoja – ja jokainen tunnus on IP-rajoitettu päätepisteeseen, johon se on otettu käyttöön.

Rajattu per asiakas

Jokaisella asiakkaan holvilla on oma agenttitunnus. Teknikon pääsyä hallitaan rajauksen perusteella, ei sen perusteella, "kuka voi kirjautua RMM-konsoliin."

Auditoitu per skripti

Jokainen tunnistetietojen käyttö kirjataan – mikä skripti, mikä päätepiste, mikä tunnistetieto, milloin. Asiakkaanne voivat nähdä auditlokin. Voitte todistaa, kuka käytti mitäkin.

Peruutettu yhdellä napsautuksella

Asiakas lähtee? Peruuta heidän agenttitunnuksensa. Jokainen päätepiste lopettaa tunnistetietojen ratkaisemisen välittömästi. Ei salasanoja vaihdettavaksi, ei mukautettuja ominaisuuksia tyhjennettäväksi 200 koneelta.

Lopeta tunnistetietojen tallentaminen RMM-järjestelmään.

Yksi CLI. Jokainen asiakas. Jokainen tunnistetieto rajattu, auditoitu ja peruutettavissa.