2017-09-29 14 views
-1
chmod 777 ./myapp 

Warum muss ich chmod 777 zu myapp nach jeder Veröffentlichung bereitstellen. Ohne die Berechtigungen zu erteilen, lautet das Ergebnis von ./myapp: Berechtigung verweigert. Auch wenn Sie mit dem Benutzer root eingeloggt sind..Net Core veröffentlichte Anwendung muss chmod 777 Berechtigungen auf Centos7 ausführen

Gibt es Alternativen dazu?

+3

Welches Problem Sie auch lösen möchten, ** anderen Benutzern Schreibzugriff auf Ihr Programm zu geben, ist ein * ernsthafter * Sicherheitsfehler ** und ein Antipattern. Sie müssen das Berechtigungsmodell verstehen und die Berechtigungen erteilen, die das Problem erfordert, aber absolut nicht mehr (normalerweise 755 für ein Skript oder 711 für ein Verzeichnis, auf das Benutzer zugreifen, aber nicht lesen müssen). – tripleee

+2

Welche Version von .NET Core verwenden Sie? Klingt wie Sie https://github.com/dotnet/sdk/pull/1338 – omajid

+0

Ich benutze .NET Core 2.0 und Ausgabe sieht gleich aus. –

Antwort

1

Was auch immer "veröffentlichen" muss die App, um es mit den richtigen Berechtigungen zu schreiben. Sie zeigen uns nicht, wie Sie tun, dass so können wir Ihnen nicht sagen, was genau falsch ist, aber so etwas wie

chmod 755 myapp # only really required the first time 
scp myapp prod:/srv/myapp/ 

Wenn Sie ein Versionskontrollsystem wie Git verwenden, ist die Berechtigungen Änderung eine Änderung, die Sie müssen sich verpflichten, um es zu bewahren.

chmod 755 myapp 
git add myapp 
git commit -m "fixed permissions" myapp 

Jetzt sollte jeder Check-out über die richtigen Berechtigungen haben, und Sie können Sie diese bis zum nächsten Mal vergessen, ein neues Projekt zu starten.

+0

Möglicherweise enthülle ich meine völlige Ignoranz gegenüber .Net - vielleicht hat "publizieren" dort eine spezifische und sehr präzise Bedeutung. Aber die Grundidee gilt wahrscheinlich immer noch. – tripleee

Verwandte Themen