Przejdź do treści

KRET LANGUAGE ACADEMY · DOKUMENTACJA ZE ŹRÓDEŁ

Błędy konfiguracji: sekret wprost, zakres, polityka w projekcie

INTERMEDIATEVALIDATION_ONLYKretConfig

Trzy warianty odrzucane przez walidator KretConfig: sekret wpisany wprost (`KCS-CFG-0007`), wartość poza zakresem (`KCS-CFG-0005`) i blok `policy` w pliku projektu (`KCS-CFG-0203`).

Edycja i zapisane wyniki

Witryna nie wykonuje kodu ani nie prowadzi walidacji SDK. Wyniki poniżej pochodzą z eksportu określonej wersji i przestają opisywać kod po jego zmianie.

Pobierz źródła JSON

Format tego przykładu nie jest obsługiwany przez edytor Playground. Źródła i instrukcje pozostają dostępne.

Kanoniczne pliki projektu

kconfig "1.0"
profile default {
    api.token "to-nie-powinno-tu-byc"
}

Czytanie kodu linia po linii

Objaśnienia struktury nie są walidacją semantyczną. Szczegółowy kontrakt opisują referencje i README przykładu.

  1. kconfig "1.0"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  2. profile default {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  3. api.token "to-nie-powinno-tu-byc"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  4. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  5. Pusta linia oddziela fragmenty źródła.

Wynik i typowy błąd

Trzy razy kod 1 z odpowiednim kodem `KCS-CFG-…`.

Na co uważać

Oczekiwanie, że plik projektu może zaostrzyć lub poluzować politykę hosta — tylko `policy.kconfig` hosta ustala ograniczenia.

Wymagania wersji i procedura lokalna

sdk
1.0.0-rc.3+kret.local.3
sdkInfoReports
1.0.0-rc.3
core
1.0.0-test.6.11-draft.1
os
Windows 11 x64
dotnet
.NET 10 runtime

Polecenia poniżej są instrukcją do samodzielnego wykonania z właściwym lokalnym SDK. DATA/OUT muszą wskazywać nowe katalogi testowe. Nie ma przycisku uruchamiania na serwerze.

  1. inline-secretkret check inline-secret --jsonKatalog: project · Oczekiwany kod wyjścia: 1
  2. out-of-rangekret check out-of-range --jsonKatalog: project · Oczekiwany kod wyjścia: 1
  3. policy-in-projectkret check policy-in-project --jsonKatalog: project · Oczekiwany kod wyjścia: 1

Wyniki zapisane w pakiecie źródłowym

To dowód z eksportu, nie wynik bieżącego wykonania w przeglądarce.

# EXPECTED_OUTPUT — KRETCONFIG-I01-ConfigErrors
# Rzeczywisty wynik uruchomienia (SDK 1.0.0-rc.3+kret.local.3, 2026-11-01T12:46:23Z). Ścieżki zastąpione znacznikami <project>, <data>, <out>, <sdk>.
# Actual output of the run. Paths replaced by placeholders.

### 1. inline-secret  (exit 1, PASS)
> kret check inline-secret --json
{
  "format": "kret-diagnostics/1",
  "project": "<project>\\inline-secret",
  "succeeded": false,
  "plugin": {
    "id": "LOCAL-KPL-CFM2ERRS",
    "name": "ConfigErrors",
    "version": "1.0.0",
    "profile": "standard",
    "database": false
  },
  "permissions": {
    "required": [],
    "optional": []
  },
  "handlers": {
    "lifecycle": [
      "start",
      "shutdown"
    ],
    "events": [],
    "commands": []
  },
  "diagnostics": [
    {
      "file": "<project>\\inline-secret\\Config\\project.kconfig",
      "line": 3,
      "column": 5,
      "endLine": 3,
      "endColumn": 38,
      "severity": "error",
      "code": "KCS-CFG-0007",
      "message": "klucz api.token jest tajny \u2014 podaj odwo\u0142anie \u201Eapi.token vault \u0022nazwa\u0022\u201D, nie warto\u015B\u0107"
    }
  ]
}

### 2. out-of-range  (exit 1, PASS)
> kret check out-of-range --json
{
  "format": "kret-diagnostics/1",
  "project": "<project>\\out-of-range",
  "succeeded": false,
  "plugin": {
    "id": "LOCAL-KPL-CFM2ERRS",
    "name": "ConfigErrors",
    "version": "1.0.0",
    "profile": "standard",
    "database": false
  },
  "permissions": {
    "required": [],
    "optional": []
  },
  "handlers": {
    "lifecycle": [
      "start",
      "shutdown"
    ],
    "events": [],
    "commands": []
  },
  "diagnostics": [
    {
      "file": "<project>\\out-of-range\\Config\\project.kconfig",
      "line": 3,
      "column": 22,
      "endLine": 3,
      "endColumn": 24,
      "severity": "error",
      "code": "KCS-CFG-0005",
      "message": "klucz refresh.interval: warto\u015B\u0107 poza zakresem 1s\u20131h"
    }
  ]
}

### 3. policy-in-project  (exit 1, PASS)
> kret check policy-in-project --json
{
  "format": "kret-diagnostics/1",
  "project": "<project>\\policy-in-project",
  "succeeded": false,
  "plugin": {
    "id": "LOCAL-KPL-CFM2ERRS",
    "name": "ConfigErrors",
    "version": "1.0.0",
    "profile": "standard",
    "database": false
  },
  "permissions": {
    "required": [],
    "optional": []
  },
  "handlers": {
    "lifecycle": [
      "start",
      "shutdown"
    ],
    "events": [],
    "commands": []
  },
  "diagnostics": [
    {
      "file": "<project>\\policy-in-project\\Config\\project.kconfig",
      "line": 2,
      "column": 1,
      "endLine": 2,
      "endColumn": 7,
      "severity": "error",
      "code": "KCS-CFG-0203",
      "message": "blok policy mo\u017Ce wyst\u0105pi\u0107 tylko w pliku polityki hosta \u2014 plik u\u017Cytkownika, projektu ani modu\u0142u nie mo\u017Ce ustala\u0107 ogranicze\u0144 bezpiecze\u0144stwa"
    }
  ]
}


Czytanie kodu linia po linii

Objaśnienia struktury nie są walidacją semantyczną. Szczegółowy kontrakt opisują referencje i README przykładu.

  1. # EXPECTED_OUTPUT — KRETCONFIG-I01-ConfigErrorsOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  2. # Rzeczywisty wynik uruchomienia (SDK 1.0.0-rc.3+kret.local.3, 2026-11-01T12:46:23Z). Ścieżki zastąpione znacznikami <project>, <data>, <out>, <sdk>.Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  3. # Actual output of the run. Paths replaced by placeholders.Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  4. Pusta linia oddziela fragmenty źródła.
  5. ### 1. inline-secret (exit 1, PASS)Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  6. > kret check inline-secret --jsonOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  7. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  8. "format": "kret-diagnostics/1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  9. "project": "<project>\\inline-secret",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  10. "succeeded": false,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  11. "plugin": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  12. "id": "LOCAL-KPL-CFM2ERRS",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  13. "name": "ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  14. "version": "1.0.0",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  15. "profile": "standard",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  16. "database": falsePole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  17. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  18. "permissions": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  19. "required": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  20. "optional": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  21. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  22. "handlers": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  23. "lifecycle": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  24. "start",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  25. "shutdown"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  26. ],Zamknięcie struktury otwartej we wcześniejszych liniach.
  27. "events": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  28. "commands": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  29. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  30. "diagnostics": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  31. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  32. "file": "<project>\\inline-secret\\Config\\project.kconfig",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  33. "line": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  34. "column": 5,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  35. "endLine": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  36. "endColumn": 38,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  37. "severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  38. "code": "KCS-CFG-0007",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  39. "message": "klucz api.token jest tajny \u2014 podaj odwo\u0142anie \u201Eapi.token vault \u0022nazwa\u0022\u201D, nie warto\u015B\u0107"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  40. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  41. ]Zamknięcie struktury otwartej we wcześniejszych liniach.
  42. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  43. Pusta linia oddziela fragmenty źródła.
  44. ### 2. out-of-range (exit 1, PASS)Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  45. > kret check out-of-range --jsonOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  46. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  47. "format": "kret-diagnostics/1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  48. "project": "<project>\\out-of-range",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  49. "succeeded": false,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  50. "plugin": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  51. "id": "LOCAL-KPL-CFM2ERRS",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  52. "name": "ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  53. "version": "1.0.0",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  54. "profile": "standard",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  55. "database": falsePole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  56. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  57. "permissions": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  58. "required": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  59. "optional": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  60. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  61. "handlers": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  62. "lifecycle": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  63. "start",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  64. "shutdown"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  65. ],Zamknięcie struktury otwartej we wcześniejszych liniach.
  66. "events": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  67. "commands": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  68. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  69. "diagnostics": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  70. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  71. "file": "<project>\\out-of-range\\Config\\project.kconfig",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  72. "line": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  73. "column": 22,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  74. "endLine": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  75. "endColumn": 24,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  76. "severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  77. "code": "KCS-CFG-0005",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  78. "message": "klucz refresh.interval: warto\u015B\u0107 poza zakresem 1s\u20131h"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  79. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  80. ]Zamknięcie struktury otwartej we wcześniejszych liniach.
  81. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  82. Pusta linia oddziela fragmenty źródła.
  83. ### 3. policy-in-project (exit 1, PASS)Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  84. > kret check policy-in-project --jsonOdczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  85. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  86. "format": "kret-diagnostics/1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  87. "project": "<project>\\policy-in-project",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  88. "succeeded": false,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  89. "plugin": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  90. "id": "LOCAL-KPL-CFM2ERRS",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  91. "name": "ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  92. "version": "1.0.0",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  93. "profile": "standard",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  94. "database": falsePole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  95. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  96. "permissions": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  97. "required": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  98. "optional": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  99. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  100. "handlers": {Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  101. "lifecycle": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  102. "start",Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  103. "shutdown"Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  104. ],Zamknięcie struktury otwartej we wcześniejszych liniach.
  105. "events": [],Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  106. "commands": []Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  107. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  108. "diagnostics": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  109. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  110. "file": "<project>\\policy-in-project\\Config\\project.kconfig",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  111. "line": 2,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  112. "column": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  113. "endLine": 2,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  114. "endColumn": 7,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  115. "severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  116. "code": "KCS-CFG-0203",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  117. "message": "blok policy mo\u017Ce wyst\u0105pi\u0107 tylko w pliku polityki hosta \u2014 plik u\u017Cytkownika, projektu ani modu\u0142u nie mo\u017Ce ustala\u0107 ogranicze\u0144 bezpiecze\u0144stwa"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  118. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  119. ]Zamknięcie struktury otwartej we wcześniejszych liniach.
  120. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  121. Pusta linia oddziela fragmenty źródła.
  122. Pusta linia oddziela fragmenty źródła.
Diagnostyka i raporty testów

{
  "format": "kretos-web-playground-diagnostics/1",
  "exampleId": "KRETCONFIG-I01-ConfigErrors",
  "sdk": "1.0.0-rc.3+kret.local.3",
  "origin": "PRECOMPUTED",
  "diagnostics": [
    {
      "id": "diag.KRETCONFIG-I01-ConfigErrors.1.1",
      "exampleId": "KRETCONFIG-I01-ConfigErrors",
      "step": 1,
      "stepName": "inline-secret",
      "command": "kret check inline-secret --json",
      "exitCode": 1,
      "file": "inline-secret/Config/project.kconfig",
      "line": 3,
      "column": 5,
      "endLine": 3,
      "endColumn": 38,
      "severity": "error",
      "code": "KCS-CFG-0007",
      "message": "klucz api.token jest tajny — podaj odwołanie „api.token vault \"nazwa\"”, nie wartość",
      "origin": "PRECOMPUTED (kret check, SDK 1.0.0-rc.3+kret.local.3)"
    },
    {
      "id": "diag.KRETCONFIG-I01-ConfigErrors.2.2",
      "exampleId": "KRETCONFIG-I01-ConfigErrors",
      "step": 2,
      "stepName": "out-of-range",
      "command": "kret check out-of-range --json",
      "exitCode": 1,
      "file": "out-of-range/Config/project.kconfig",
      "line": 3,
      "column": 22,
      "endLine": 3,
      "endColumn": 24,
      "severity": "error",
      "code": "KCS-CFG-0005",
      "message": "klucz refresh.interval: wartość poza zakresem 1s–1h",
      "origin": "PRECOMPUTED (kret check, SDK 1.0.0-rc.3+kret.local.3)"
    },
    {
      "id": "diag.KRETCONFIG-I01-ConfigErrors.3.3",
      "exampleId": "KRETCONFIG-I01-ConfigErrors",
      "step": 3,
      "stepName": "policy-in-project",
      "command": "kret check policy-in-project --json",
      "exitCode": 1,
      "file": "policy-in-project/Config/project.kconfig",
      "line": 2,
      "column": 1,
      "endLine": 2,
      "endColumn": 7,
      "severity": "error",
      "code": "KCS-CFG-0203",
      "message": "blok policy może wystąpić tylko w pliku polityki hosta — plik użytkownika, projektu ani modułu nie może ustalać ograniczeń bezpieczeństwa",
      "origin": "PRECOMPUTED (kret check, SDK 1.0.0-rc.3+kret.local.3)"
    }
  ]
}
Czytanie kodu linia po linii

Objaśnienia struktury nie są walidacją semantyczną. Szczegółowy kontrakt opisują referencje i README przykładu.

  1. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  2. "format": "kretos-web-playground-diagnostics/1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  3. "exampleId": "KRETCONFIG-I01-ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  4. "sdk": "1.0.0-rc.3+kret.local.3",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  5. "origin": "PRECOMPUTED",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  6. "diagnostics": [Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  7. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  8. "id": "diag.KRETCONFIG-I01-ConfigErrors.1.1",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  9. "exampleId": "KRETCONFIG-I01-ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  10. "step": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  11. "stepName": "inline-secret",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  12. "command": "kret check inline-secret --json",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  13. "exitCode": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  14. "file": "inline-secret/Config/project.kconfig",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  15. "line": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  16. "column": 5,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  17. "endLine": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  18. "endColumn": 38,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  19. "severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  20. "code": "KCS-CFG-0007",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  21. "message": "klucz api.token jest tajny — podaj odwołanie „api.token vault \"nazwa\"”, nie wartość",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  22. "origin": "PRECOMPUTED (kret check, SDK 1.0.0-rc.3+kret.local.3)"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  23. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  24. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  25. "id": "diag.KRETCONFIG-I01-ConfigErrors.2.2",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  26. "exampleId": "KRETCONFIG-I01-ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  27. "step": 2,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  28. "stepName": "out-of-range",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  29. "command": "kret check out-of-range --json",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  30. "exitCode": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  31. "file": "out-of-range/Config/project.kconfig",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  32. "line": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  33. "column": 22,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  34. "endLine": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  35. "endColumn": 24,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  36. "severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  37. "code": "KCS-CFG-0005",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  38. "message": "klucz refresh.interval: wartość poza zakresem 1s–1h",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  39. "origin": "PRECOMPUTED (kret check, SDK 1.0.0-rc.3+kret.local.3)"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  40. },Zamknięcie struktury otwartej we wcześniejszych liniach.
  41. {Odczytaj tę linię w kontekście otaczającego bloku i objaśnień autora poniżej.
  42. "id": "diag.KRETCONFIG-I01-ConfigErrors.3.3",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  43. "exampleId": "KRETCONFIG-I01-ConfigErrors",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  44. "step": 3,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  45. "stepName": "policy-in-project",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  46. "command": "kret check policy-in-project --json",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  47. "exitCode": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  48. "file": "policy-in-project/Config/project.kconfig",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  49. "line": 2,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  50. "column": 1,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  51. "endLine": 2,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  52. "endColumn": 7,Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  53. "severity": "error",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  54. "code": "KCS-CFG-0203",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  55. "message": "blok policy może wystąpić tylko w pliku polityki hosta — plik użytkownika, projektu ani modułu nie może ustalać ograniczeń bezpieczeństwa",Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  56. "origin": "PRECOMPUTED (kret check, SDK 1.0.0-rc.3+kret.local.3)"Pole danych JSON; znaczenie wynika z wersjonowanego schematu pliku.
  57. }Zamknięcie struktury otwartej we wcześniejszych liniach.
  58. ]Zamknięcie struktury otwartej we wcześniejszych liniach.
  59. }Zamknięcie struktury otwartej we wcześniejszych liniach.
Pochodzenie i integralność

KRET_TECH_KRETCONFIG.zip:KretConfig/Examples/INTERMEDIATE_ConfigErrors/example.json

02_PLAYGROUND/EXAMPLES/KRETCONFIG-I01-ConfigErrors.json
SHA-256 650E19D94CCC6C4FE8C969280C7BC114E6ED7D4ACA6926349FBCB4EAA9BC7F41

Materiały źródłowe do tego tematu

Przeczytaj powiązane rozdziały. Kod i kontrakty zachowano z importu; historia źródeł jest dostępna przy każdym rozdziale.

KRETCONFIG-I01-ConfigErrors — Błędy konfiguracji: sekret wprost, zakres, polityka w projekcie

KRETCONFIG-I01-ConfigErrors — Błędy konfiguracji: sekret wprost, zakres, polityka w projekcie

🇬🇧 English version below.
PoleWartość
TechnologiaKretConfig
PoziomINTERMEDIATE
KlasyfikacjaVALIDATION_ONLY — Tylko walidacja (bez wykonania)
PlaygroundLOCAL_VALIDATE — lokalnie: walidacja (kret check, lokalny walidator Playground)
SDK1.0.0-rc.3+kret.local.3 (kandydat lokalny, niepodpisany)
Wynik testuTEST_RESULTS.json, rzeczywisty wynik: EXPECTED_OUTPUT.txt

Co pokazuje

Trzy warianty odrzucane przez walidator KretConfig: sekret wpisany wprost (KCS-CFG-0007), wartość poza zakresem (KCS-CFG-0005) i blok policy w pliku projektu (KCS-CFG-0203).

Pliki

Plik
inline-secret/Config/project.kconfig
inline-secret/Config/schema.kconfig
inline-secret/Script/Main.krs
inline-secret/plugin.kretl
out-of-range/Config/project.kconfig
out-of-range/Config/schema.kconfig
out-of-range/Script/Main.krs
out-of-range/plugin.kretl
policy-in-project/Config/project.kconfig
policy-in-project/Config/schema.kconfig
policy-in-project/Script/Main.krs
policy-in-project/plugin.kretl

Jak uruchomić

Katalog roboczy: katalog tego przykładu. kret oznacza <SDK>\Compiler\kret.exe, kretui-host — <SDK>\UiHost\kretui-host.exe. {DATA} / {OUT} to nowe, puste katalogi poza projektem. Wymagania: REQUIREMENTS.md.

  1. kret check inline-secret --json — sekret wprost (oczekiwany błąd)
  2. kret check out-of-range --json — poza zakresem (oczekiwany błąd)
  3. kret check policy-in-project --json — polityka poza plikiem polityki hosta (oczekiwany błąd)

Oczekiwany wynik

Trzy razy kod 1 z odpowiednim kodem KCS-CFG-….

Najczęstszy błąd

Oczekiwanie, że plik projektu może zaostrzyć lub poluzować politykę hosta — tylko policy.kconfig hosta ustala ograniczenia.

Otwórz cały rozdział ze źródłem →

Zaloguj się na konto użytkownika, aby zapisywać postęp i zakładki. Konta obsługi mogą czytać bez zapisu postępu. Logowanie →

Wybierz, co możemy zapamiętać w tej przeglądarce. Możesz zmienić decyzję w każdej chwili.

Polityka prywatności