Jobs als Nicht-Root-Nutzer erstellen und ausführen

In diesem Dokument wird beschrieben, wie Sie einen Batch-Job als Nicht-Root-Nutzer erstellen und ausführen.

Batch führt standardmäßig Runnables als Root-Nutzer aus. Wenn Batch Runnables als Nicht-Root-Nutzer ausführen soll, etwa um eine Anwendung auszuführen, die Root-Nutzer nicht zulässt oder um die Sicherheitsanforderungen zu erfüllen, erstellen Sie einen Batchjob mit OS Login. Wenn Sie OS Login in einem Batch-Job aktivieren, konfiguriert OS Login für Sie ein Nutzerkonto auf den VMs, auf denen Ihr Job ausgeführt wird. Alle Runnables im Job werden dann über Ihr Nutzerkonto auf der VM und nicht vom Root-Nutzer ausgeführt.

Hinweise

Job erstellen, der als Nicht-Root-Nutzer ausgeführt wird

Erstellen Sie einen Batchjob, der ausführbare Dateien über Ihr eigenes Nutzerkonto ausführt. Gehen Sie dazu so vor:

Verwenden Sie die Google Cloud CLI oder die REST API, um einen Job zu erstellen, bei dem das Feld runAsNonRoot im Haupttext der JSON-Datei auf true gesetzt ist:

"runAsNonRoot": true

Beispielsweise hat ein Job, der ausführbare Dateien als Nicht-Root-Nutzer ausführt, eine JSON-Konfigurationsdatei ähnlich der folgenden:

{
    "taskGroups": [
      {
        "taskSpec": {
          "runnables": [
            {
              "script": {
                "text": "echo Hello World! This is task $BATCH_TASK_INDEX executed by $(whoami)."
              }
            }
          ]
        },
        "taskCount": 3,
        "runAsNonRoot": true
      }
    ],
    "logsPolicy": {
        "destination": "CLOUD_LOGGING"
    }
}

Nächste Schritte