Handleidingen

Know-How Protection via API

Vergrendel de broncode van uw PLC-blokken met Siemens native Know-How Protection - programmatisch, in batch, vanaf elke AI of script.

T
T-IA Connect Team
8 min leestijd
Bijgewerkt op 26 april 2026

Automatiseer Know-How Protection op schaal

Siemens TIA Portal's Know-How Protection vergrendelt de broncode van een blok met een wachtwoord. Het blok blijft zichtbaar in de projectstructuur (naam, type, publieke interface), maar de interne logica kan niet worden gelezen, geëxporteerd of gewijzigd zonder het wachtwoord. Met T-IA Connect kunt u deze bescherming programmatisch toepassen via de REST API, MCP-tools voor AI-assistenten of de ingebouwde Copilot - inclusief batchbescherming voor volledige projecten in enkele seconden.

Vereisten

  • TIA Portal project geopend in T-IA Connect (V17, V18, V19 of V20)
  • PLC-blokken gecompileerd zonder fouten (vereist vóór bescherming)
  • T-IA Connect server draait (elke editie)

Stap 1: Identificeer onbeschermde blokken

Geef alle blokken in uw PLC-apparaat weer. Elk blok bevat een isKnowHowProtected veld dat de huidige beschermingsstatus toont.

curl - GET /api/devices/{deviceName}/blocks
curl http://localhost:9000/api/devices/PLC_1/blocks \
  -H "X-API-Key: your-api-key"
Response
{
  "Success": true,
  "Data": [
    {
      "Name": "FB_Fill",
      "Type": "FB",
      "Number": 1,
      "Language": "SCL",
      "IsKnowHowProtected": false
    },
    {
      "Name": "FB_Drain",
      "Type": "FB",
      "Number": 2,
      "Language": "SCL",
      "IsKnowHowProtected": false
    },
    {
      "Name": "FC_Recipe_Manager",
      "Type": "FC",
      "Number": 10,
      "Language": "SCL",
      "IsKnowHowProtected": false
    },
    {
      "Name": "FB_SafetyMonitor",
      "Type": "FB",
      "Number": 3,
      "Language": "LAD",
      "IsKnowHowProtected": true
    }
  ]
}

Stap 2: Compileer het apparaat

Blokken moeten worden gecompileerd voordat ze kunnen worden beschermd. Compileer het hele apparaat om ervoor te zorgen dat alle blokken zich in een geldige staat bevinden.

curl - POST /api/devices/{deviceName}/actions/compile
curl -X POST http://localhost:9000/api/devices/PLC_1/actions/compile \
  -H "X-API-Key: your-api-key"
Response
{
  "Success": true,
  "Message": "Compilation completed.",
  "Data": {
    "Errors": 0,
    "Warnings": 2
  }
}

Stap 3: Know-How Protection toepassen

Bescherm een blok door de apparaatnaam, bloknaam en een wachtwoord op te geven. Het wachtwoord wordt veilig doorgegeven en nooit opgeslagen door T-IA Connect.

curl - POST /api/devices/{deviceName}/blocks/{blockName}/actions/protect
curl -X POST http://localhost:9000/api/devices/PLC_1/blocks/FB_Fill/actions/protect \
  -H "X-API-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "password": "MySecretPassword123"
  }'
Response
{
  "Success": true,
  "Message": "Block 'FB_Fill' is now know-how protected.",
  "Data": {
    "BlockName": "FB_Fill",
    "IsKnowHowProtected": true,
    "IsProtectable": true
  }
}

Stap 4: Verifieer beschermingsstatus

Bevestig dat de bescherming correct is toegepast door de gedetailleerde status van het blok te controleren. Het antwoord vertelt u of het blok beschermd en beschermbaar is.

curl - GET /api/devices/{deviceName}/blocks/{blockName}/protection
curl http://localhost:9000/api/devices/PLC_1/blocks/FB_Fill/protection \
  -H "X-API-Key: your-api-key"
Response
{
  "Success": true,
  "Data": {
    "BlockName": "FB_Fill",
    "IsKnowHowProtected": true,
    "IsProtectable": true,
    "Reason": null
  }
}

Batchbescherming

Bescherm tientallen blokken in een enkele API-aanroep. Het batch-eindpunt maakt gebruik van best-effort verwerking en retourneert een gedetailleerd rapport voor elk blok.

curl - POST /api/devices/{deviceName}/blocks/actions/protect-batch
curl -X POST http://localhost:9000/api/devices/PLC_1/blocks/actions/protect-batch \
  -H "X-API-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "blockNames": ["FB_Fill", "FB_Drain", "FC_Recipe_Manager", "DB_Config"],
    "password": "MySecretPassword123"
  }'
Response
{
  "Success": true,
  "Message": "3/4 blocks protected successfully.",
  "Data": {
    "TotalRequested": 4,
    "Succeeded": 3,
    "Failed": 1,
    "Details": [
      { "BlockName": "FB_Fill", "IsKnowHowProtected": true, "Reason": null },
      { "BlockName": "FB_Drain", "IsKnowHowProtected": true, "Reason": null },
      { "BlockName": "FC_Recipe_Manager", "IsKnowHowProtected": true, "Reason": null },
      { "BlockName": "DB_Config", "IsKnowHowProtected": true, "Reason": "Already protected." }
    ]
  }
}

Know-How Protection is het systeemeigen blokbeschermingsmechanisme van Siemens. Het heeft nul impact op de PLC runtime prestaties. Het wachtwoord wordt nooit opgeslagen door T-IA Connect - het wordt als een SecureString doorgegeven aan de Siemens Openness API en nooit gelogd.

Ook beschikbaar via MCP & Copilot

Dezelfde beschermingsfuncties zijn beschikbaar als MCP-tools voor AI-assistenten (Claude, Gemini, ChatGPT) en in de ingebouwde Copilot. Tools: protect_block, unprotect_block, get_block_protection_status, protect_blocks (batch).

Uw Know-How, beschermd in seconden

Stop met het handmatig één voor één rechtsklikken op 50 blokken in TIA Portal. Bescherm uw gehele project in een enkele API-aanroep - of laat uw AI-assistent het doen.

Download T-IA Connect om Know-How Protection te automatiseren vanuit code, scripts of AI.