Geavanceerd gebruik van aangepaste velden in NinjaOne (deel één)

An image of a man interacting with a window for the blog NinjaOne Custom Fields

Aangepaste Velden Blog Banner NinjaOne heeft in 2021 de functionaliteit voor aangepaste velden geïntroduceerd en daarmee een nieuw niveau van flexibiliteit, aanpassingsvermogen en automatiseringsmogelijkheden aan ons platform toegevoegd. Aangepaste velden zijn een geavanceerde functie die installatie vereist om te gebruiken, maar eenmaal bezig is de kracht en flexibiliteit van deze functie bijna grenzeloos.

In deel één van deze handleiding behandelen we twee krachtige gebruikssituaties voor aangepaste velden in NinjaOne:

Een kort overzicht van aangepaste velden in NinjaOne

Aangepaste veldrollen

De aangepaste velden van NinjaOne bestaan in twee categorieën: globale aangepaste velden, die van toepassing zijn op alle apparaten, ongeacht hun type, en rolgebaseerde aangepaste velden, die alleen van toepassing zijn op specifieke apparaattypes.

Een globaal aangepast veld kan een soort universeel activa-ID-nummer gebruiken dat u toepast op alle apparaten. U kunt bijvoorbeeld rolgebaseerde aangepaste velden gebruiken om een apparaateigenaar toe te wijzen voor werkstations en laptops, maar niet voor servers.

Aangepaste veldtypen

NinjaOne biedt meer dan twintig aangepaste veldtypes. Van tekst, tot volledige getallen, tot drop-downs, tot velden voor apparaattoewijzing. We leveren ook UI-elementen om aangepaste velden gebruiksvriendelijker te maken.

Toegang

Elk aangepast veld kan worden aangepast voor toegang door technici en scripts, zodat u precies kunt bepalen wie toegang heeft tot welke gegevens.

Use Case #1: Monitor bijna alles

Zodra u de NinjaOne agent installeert, leveren we honderden gegevenspunten over elk gemonitord eindpunt: van hardwarespecificaties tot geïnstalleerde software tot CPU-gebruik. Toch zijn de specifieke gegevenspunten en monitoringbehoeften van elk bedrijf uniek.

Met de aangepaste velden van NinjaOne kunt u bijna elk gegevenspunt van een eindpunt verzamelen, opslaan en bewaken, zodat u over de informatie beschikt die u nodig heeft om beslissingen te nemen. Een paar voorbeelden die we bij onze partners hebben gezien:

  • Het huidige powerplan identificeren en opslaan
  • Bestaande lokale beheerdersaccounts documenteren
  • Een lijst met geplande taken op een apparaat ophalen
  • CPU-temperatuur bewaken
  • De batterijstatus bewaken
Hoe het te doen?

Laten we een voorbeeld bekijken van het instellen van een aangepast veld en script om de batterijstatus te controleren.

Om een aangepaste monitor met aangepaste velden te maken, heeft u het volgende nodig:

  1. Een aangepast veld
  2. Een script om de gegevens te verzamelen en op te slaan
  3. Een aangepaste voorwaarde om een waarschuwing te maken
Het aangepaste veld instellen

Het aangepaste veld wordt gebruikt om gegevens op te slaan die door een script worden geretourneerd.

1)  Een nieuw aangepast veld toevoegen. Omdat we de batterijstatus van laptops gaan controleren, maken we een aangepast veld voor de rol. 2) De volgende stap is het configureren van het aangepaste veld. Omdat we dit veld via een script willen schrijven, stellen we de toegang voor de technicus in op ‘Alleen lezen’ en stellen we de toegang voor het script in op ‘Lezen / Schrijven’.

Opmerking: als scripttoegang niet is ingesteld op ‘Schrijven’ of ‘Lezen / Schrijven’, kunt u vanuit een script niet naar dit veld schrijven. 3) We moeten nu het aangepaste veld Rol toewijzen aan een Device Role. Navigeer dan naar “Rollen” en selecteer het (de) roltype(s) waarop u dit veld wilt toepassen. In dit geval wijzen we dit aangepaste veld toe aan de rol Windows Laptop.

De monitor instellen

Condities in NinjaOne worden gebruikt om te controleren op statusveranderingen in een eindpunt. NinjaOne biedt de mogelijkheid om aangepaste velden te monitoren. We stellen een monitor in om te controleren op waarschuwingen of verslechterde batterijstatus.

  1. Navigeer in het beleid van uw keuze naar voorwaarden en klik op ‘Een voorwaarde toevoegen’
  2. Selecteer voorwaardetype ‘Aangepaste velden’
  3. Selecteer onder ‘Aangepaste veldwaarde moet voldoen aan voorwaarden’ ‘Toevoegen’ en zoek naar ‘Accustatus’
  4. Stel de selector in op ‘Bevat’ en voeg ‘Gedegradeerd’ toe
  5. Herhaal stap 3 en 4, maar verander ‘Gedegradeerd’ in ‘Waarschuwing’
  6. Stel de instellingen voor ernst, prioriteit, meldingskanaal en ticketing in volgens uw voorkeuren en klik op ‘Toevoegen’.

Voorwaarde 1: Vier geavanceerde toepassingen voor aangepaste velden in NinjaOne Als de voorwaarde wordt geactiveerd, ziet het er ongeveer zo uit:

Een script maken om gegevens op te halen

We moeten een script schrijven dat gegevens van het eindpunt haalt en opslaat in ons aangepaste veld. We passen het script aan dat u hier kunt vinden (u moet ingelogd zijn op Ninja om het te kunnen zien).

$Battery = Get-CimInstance -ClassName win32_batterij

Switch ($Battery.Availability) {
   1{ $Availability = "Other" ;break}
   2  { $Availability =  "Not using battery" ;break}
   3  { $Availability = "Running or Full Power";break}
   4  {$Availability =  "Warning" ;break}
   5  { $Availability = "In Test";break}
   6  { $Availability = "Not Applicable";break}
   7  { $Availability = "Power Off";break}
   8  { $Availability = "Off Line";break}
   9  { $Availability = "Off Duty";break}
   10  {$Availability =  "Degraded";break}
   11  {$Availability =  "Not Installed";break}
   12  {$Availability =  "Install Error";break}
   13  { $Availability = "Power Save - Unknown";break}
   14  { $Availability = "Power Save - Low Power Mode" ;break}
   15  { $Availability = "Power Save - Standby";break}
   16  { $Availability = "Power Cycle";break}
   17  { $Availability = "Power Save - Warning";break}
  }
    
$BatteryOutString = "Status: $($Battery.Status)", 
                    "Battery Name: $($Battery.name)", 
                    "Charge Remaining: $($Battery.EstimatedChargeRemaining)", 
                    "Estimated runtime: $($Battery.EstimatedRunTime)", 
                    "Availability: $Availability" 
                    | Format-Table | Out-String 

Ninja-Property-Set batteryState $BatteryOutString

Dit script haalt batterijgegevens op, formatteert ze en schrijft ze vervolgens naar het aangepaste veld ‘batteryStatus’.

Het enige Ninja-specifieke deel van dit Powershell-script is de laatste regel:

Ninja-Property-Set batteryState $BatteryOutString

Ninja-Property-Set is het NinjaOne Powershell commando om een aangepast veld op een specifieke waarde in te stellen. De syntaxis is:

Ninja-Property-Set fieldName Value

In dit geval stellen we het veld batteryState in op de waarde die is opgeslagen in de variabele $BatteryOutString. Dit script toevoegen aan NinjaOne is eenvoudig.

  1. Navigeer naar ‘Configuratie’ -> ‘Scripting’
  2. klik op ‘Een nieuw script toevoegen’
  3. Kopieer de bovenstaande code in de IDE
    • Als uw aangepaste veld niet ‘batteryState’ heet, pas dan de veldnaam aan naast Ninja-Property-Set
  4. Stel de parameters van het script in op
    • Naam: Set Battery Status
    • Taal: PowerShell
    • Besturingssysteem: Windows
    • Architectuur: All
  5. Het script opslaan
Alles samenvoegen

Nu u uw aangepaste veld, voorwaarde en script heeft, moeten we het allemaal samenvoegen zodat we deze monitor kunnen automatiseren.

Open het beleid waaraan u eerder in deze handleiding uw voorwaarde heeft toegevoegd en navigeer naar ‘Scheduled Scripts’.

Klik op ‘Een gepland script toevoegen’.

Klik op ‘Add Script’ (Script toevoegen)

Selecteer het script ‘Set Battery Status’ (Batterijstatus instellen) dat we hierboven hebben gemaakt.

U kunt dit script zo vaak uitvoeren als u nodig acht. Om elk uur te draaien, selecteert u ‘Elke’ in de vervolgkeuzelijst ‘Planning’ en stelt u ‘Komt elk uur voor’ in op één uur. Druk dan op opslaan.

Het set battery status script zal nu elk uur gegevens ophalen van alle eindpunten die door dit beleid worden beheerd en naar ons aangepaste veld schrijven. Als de retourwaarde op een van deze eindpunten ‘warning’ of ‘degraded’ bevat, krijgen we een waarschuwing zodat we kunnen bijsturen.

Ditzelfde proces kan worden gebruikt om bijna elk gegevenspunt te controleren dat van een eindpunt kan worden gehaald.

Use Case #2: Geavanceerde Scriptautomatisering

NinjaOne biedt u verschillende manieren om taken op al uw beheerde eindpunten te automatiseren, variërend van eenvoudig tot complex. De vier belangrijkste methoden voor het starten van automatiseringen in NinjaOne zijn:

  1. Geplande scripts: Automatiseringen die volgens een vast schema worden uitgevoerd op alle eindpunten in een beleid
  2. Geactiveerde omstandigheden: Automatiseringen die worden geactiveerd door gebeurtenissen, statuswijzigingen of prestatiegedrag op een eindpunt
  3. Geplande taken: Automatiseringen die volgens een vast schema worden uitgevoerd op alle geselecteerde eindpunten
  4. Ad-hoc scripts: Automatiseringen die handmatig worden uitgevoerd tegen één of meerdere eindpunten

Met al deze methoden kunt u een reeks scripts implementeren op basis van een enkele tijd- of gebeurtenisgebaseerde trigger. Op zichzelf kunnen deze automatiseringsmethoden heel krachtig zijn en veel waarde bieden, maar ze zijn niet heel dynamisch.

Voor meer dynamische automatiseringen moeten we twee concepten toevoegen:

  • Script resultaat voorwaarden
  • Aangepaste velden

Beide functies in NinjaOne maken dynamische ketting-automatiseringen mogelijk op basis van de resultaten van een eerste scriptimplementatie. Het belangrijkste verschil is dat scriptresultaatvoorwaarden geen waarden opslaan voor latere analyse en alleen kunnen reageren op een enkel scriptresultaat.

Tellen en waarschuwen bij mislukte aanmeldingen

Met de ingebouwde Windows Event ID-conditie van NinjaOne kunt u een waarschuwing activeren, een ticket aanmaken of een script laten uitvoeren wanneer een specifieke event-ID wordt gedetecteerd. Dit is zeer handig om gebeurtenissen te detecteren zoals het aanmaken van een beheerdersaccount, wijzigingen die worden aangebracht aan de Windows firewall of het identificeren van iets als een Windows Server Backup fout waarbij enkelvoudige gebeurtenissen actie ondernemen.

Als we een groot aantal gebeurtenissen nodig hebben om een waarschuwing bruikbaar te maken, hebben we aangepaste velden nodig. Het is bijvoorbeeld onwaarschijnlijk dat een enkele mislukte aanmelding aanleiding geeft tot actie. Tien mislukte inlogpogingen in het afgelopen uur kunnen daarentegen een teken zijn dat er iets mis is. Laten we dus een automatisering maken die mislukte aanmeldingen over de afgelopen periode van een uur telt en waarschuwt als de drempel van 10 mislukte aanmeldingen wordt overschreden.

Het aangepaste veld instellen

We beginnen met het maken van een aangepast veld om onze mislukte aanmeldingspogingen op te slaan. Voor deze oefening maken we een globaal aangepast veld omdat we mislukte aanmeldingen op verschillende apparaattypes zullen detecteren.

  • Veldlabel: Mislukte aanmeldpogingen
  • Veldnaam: mislukteLoginAttempts
  • Veldtype: Integer
  • Scripts: Lezen / Schrijven

Maak veld 1: Vier geavanceerde toepassingen voor aangepaste velden in NinjaOne We stellen een tweede aangepast veld in om de beveiligings-ID van de meest recente aanmeldpoging op te halen.

  • Veldlabel: Inloggen op account mislukt Gebruikersnaam
  • Veldnaam: failedAccountLoginUserName
  • Veldtype: Tekst
  • Scripts: Lezen / Schrijven
Het bewakingsscript schrijven

Vervolgens schrijven we een script om mislukte aanmeldingen te detecteren. Dit is vrij eenvoudig om te gebeurtenissenlogboek: we raadplegen simpelweg het gebeurtenissenlogboek en tellen het aantal mislukte aanmeldpogingen. We schrijven de geretourneerde waarde dan naar het veld failedLoginAttempts. We sturen ook de gebruikersnaam terug naar het veld failedAccountLoginUserName.

$failedLogins = ((Get-EventLog -LogName Security -After (Get-Date).AddDays(-7) -InstanceID 4625) | Select @{Name="UserName";Expression={$_.ReplacementStrings[5]}} | Group-Object -Propert UserName).count

$Login = ((Get-EventLog -LogName Security -After (Get-Date).AddDays(-7) -InstanceID 4625) | Select @{Name="UserName";Expression={$_.ReplacementStrings[5]}} | Group-Object -Propert UserName).name Ninja-Property-Set failedLoginAttempts $failedLogins Ninja-Property-Set failedAccountLoginUserName $Login

Dit script toevoegen aan NinjaOne is eenvoudig en gemakkelijk.

  1. Navigeer naar ‘Configuratie’ -> ‘Scripting’
  2. klik op ‘Een nieuw script toevoegen’
  3. Kopieer de bovenstaande code in de IDE
    • Als uw aangepaste veld niet ‘failedLoginAttempts’ heet, werk dan de veldnaam bij naast Ninja-Property-Set
  4. Stel de parameters van het script in op
    • Naam: Aantal mislukte aanmeldpogingen
    • Taal: PowerShell
    • Besturingssysteem: Windows
    • Architectuur: Alles
  5. Het script opslaan

Vervolgens moeten we dit script zo instellen dat het periodiek wordt uitgevoerd.

  1. Navigeer in het beleid van uw keuze naar Geplande scripts en klik op Een gepland script toevoegen
  2. Klik op Script toevoegen en selecteer het script Aantal mislukte aanmeldpogingen
  3. Geef het script een naam en beschrijving
  4. Stel het schema zo in dat het elk uur wordt uitgevoerd
Het saneringsscript schrijven

Als we een groot aantal mislukte aanmeldpogingen kunnen ontdekken, kunnen we dit probleem oplossen door de account tijdelijk te vergrendelen.  We halen de gebruikersnaam uit het veld failedAccountLoginUserName en schakelen die gebruiker uit met Powershell.

$User = Ninja-Property-Get failedAccountLoginUserName

Disable-LocalUser -Name $User
De voorwaarde instellen
  1. Navigeer in het beleid van uw keuze naar voorwaarden en klik op ‘Een voorwaarde toevoegen’
  2. Selecteer voorwaardetype ‘Aangepaste velden’
  3. Selecteer onder ‘Aangepaste veldwaarde moet voldoen aan voorwaarden’ ‘Toevoegen’ en zoek naar ‘Mislukte aanmeldpogingen’. Voor een operator gebruikt u ‘groter dan of gelijk aan’ en stelt u de waarde in op 10.
  4. Klik op ‘Toepassen’Conditie 2 Vier geavanceerde toepassingen voor aangepaste velden in NinjaOne
  5. We geven de voorwaarde de naam ‘Hoog aantal mislukte aanmeldpogingen’
  6. De ernst, prioriteit en resetintervallen instellen
  7. Stel in of u meldingen en tickets wilt aanmaken
  8. Klik op ‘Toevoegen’
  9. Als we het uitschakelen van de gebruiker met de lokale account willen automatiseren, kunnen we het Disable Local User script als automatisering aan deze voorwaarde toevoegen

Condition 3 Vier geavanceerde toepassingen voor aangepaste velden in NinjaOneGa hieronder verder naar deel twee en drie van de serie:

Waarom NinjaOne?

Bent u het zat om RMM’s te bekijken en teleurgesteld te raken? Probeer zelf aangepaste velden in Ninja en zie waarom NinjaOne anders is. Start uw gratis demo.gratis trial voor rmm

Volgende stappen

Het opbouwen van een efficiënt en effectief IT-team vereist een gecentraliseerde oplossing die fungeert als uw kerndienstleveringstool. NinjaOne stelt IT-teams in staat om al hun apparaten te monitoren, beheren, beveiligen en ondersteunen, waar ze ook zijn, zonder de noodzaak van complexe on-premises infrastructuur.

Leer meer over NinjaOne Endpoint Management, bekijk een live rondleiding, of start uw gratis trial van het NinjaOne-platform

Wellicht ook interessant voor u

Bent u klaar om een IT-Ninja te worden?

Ontdek hoe NinjaOne u kan helpen IT-Management te vereenvoudigen.
Bekijk een demo×
×

Zie NinjaOne in actie!

Door dit formulier in te dienen geef ik aan akkoord te gaan met het privacybeleid van NinjaOne.

NinjaOne Terms & Conditions

By clicking the “I Accept” button below, you indicate your acceptance of the following legal terms as well as our Terms of Use:

  • Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms.
  • Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party.
  • Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library belonging to or under the control of any other software provider.
  • Warranty Disclaimer: The script is provided “as is” and “as available”, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations.
  • Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks.
  • Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script.
  • EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).