---
title: "MSP-työkalut"
description: "PowerShell, Datto RMM, N-able, ConnectWise Automate. Tunnistetietojen myöntäminen asiakaskunnallesi."
lang: fi
url: https://clavitor.ai/fi/developers/msp
markdown: https://clavitor.ai/fi/developers/msp.md
translation_of: https://clavitor.ai/en/developers/msp.md
authoritative: false
publisher: Clavitor LLC
---

> This is the Finnish translation of [MSP Tools](https://clavitor.ai/en/developers/msp.md). The original English text is authoritative; where the two differ, the English version prevails.

# 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.
[Aloita ilmaiseksi](https://clavitor.ai/fi/checkout)
[Kehittäjän yleiskatsaus →](https://clavitor.ai/fi/developers)
