> For the complete documentation index, see [llms.txt](https://thorstenkramm.gitbook.io/saltstack/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://thorstenkramm.gitbook.io/saltstack/salt-acs.md).

# Salt ACS

Sie müssen die `salt`-Befehle nicht zwangsläufig als root-User ausführen. Sie können normale Benutzer für alle oder nur einzelne Salt-Befehle autorisieren. Der Salt-Master verfügt dazu über ein Regelwerk, das [📖 Access Controll System](https://docs.saltproject.io/en/latest/topics/eauth/access_control.html).

> `publisher_acl` ist nützlich, um lokalen Systembenutzern die Ausführung von Salt-Befehlen zu ermöglichen, ohne ihnen Root-Rechte zu geben. Wenn Sie sich direkt beim Salt-Master anmelden können, können Sie mit `publisher_acl` Salt ohne Root-Rechte verwenden.

### Berechtigungen pflegen

{% code title="/etc/salt/master.d/publisher\_acl.conf " %}

```
publisher_acl:
  fred:
    - test.ping
  hans:
    - web*:
      - state.apply
  thorsten.kramm:
    - .*
```

{% endcode %}

<figure><img src="/files/AOI2BQ7pX2Lwbrne8b9a" alt=""><figcaption><p>ACS Beispiel</p></figcaption></figure>

{% hint style="danger" %}
Änderungen an den `publisher_acl` Berechtigungen werden nur durch den Neustart des Salt-Masters aktiviert.
{% endhint %}

### Dateisystemberechtigungen

Legen Sie eine neue Gruppe, z. B. `salt` an, und fügen Sie die Benutzer hinzu, welche Salt-Master-Befehle ausführen dürfen.

```
sudo chgrp salt /var/log/salt
sudo chgrp salt /var/log/salt/master
sudo chmod g+rw /var/log/salt/master
```

Die nachfolgenden Änderungen sind nur notwendig, wenn Benutzer zum Ändern von Salt-States oder Pillars berechtigt werden sollen.&#x20;

```
sudo groupadd salt                  # create new
sudo usermod -G salt thorsten.kramm # add user to group
sudo chgrp -R salt /srv/salt        # grant permissions to states
sudo chgrp -R salt /srv/pillar      # grant permissions to pillars
sudo chmod g+rw /srv/salt/
```
