Ich beginne gerade mit der Entwicklung von Ruby on Rails und habe eine Frage zum Quellcode "privacy".
Von dem, was ich bisher weiß ( ich habe noch keine Bereitstellung gemacht, nur RoR in einer lokalen Entwicklungsumgebung verwendet ), dass der Quellcode "sichtbar" ist, wenn eine RoR-Anwendung bereitgestellt wird "auf dem Server?
Wie kann ich meinen Code schützen? sozusagen? Mit Schutz meine ich, der Hauptzweck ist, dass jemand ( wie ein Server-Administrator auf einem RoR-Anbieter ) nicht in der Lage ist, den Code zu "sabotieren", indem er einfach herausfindet, wo im Code "Geige" steht mit ".
Wie stellen Websites wie Shopify, Yellowpages usw., die RoR verwenden, sicher, dass ihr Code nicht "sabotiert" wird?
AKTUALISIEREN Was ich wirklich suche, ist, wenn ich einen Code habe, der Kreditkartentransaktionen durchführt, möchte ich nicht, dass ein böser Mitarbeiter "Klartextquellcode" liest und meinen Code sabotiert Website, sagen Sie, indem Sie meinen Quellcode lesen und dann jeden der angemeldeten Benutzer $ 10 als Gag berechnen. Wie verhindere ich so etwas?
Ähnlich wie Matt Briggs ist, dass wenn Sie Ihrem Webhost nicht vertrauen, Sie das falsche Problem ansprechen. Wenn Ihr Webhost Ihre Daten stehlen will, Ihre Website lahmlegt, Ihre Benutzer umleitet usw., nichts kann sie aufhalten. Selbst wenn der Code vollständig kompilierter Binärcode ist, der in Assembler geschrieben wurde, könnte Ihr Administrator immer noch einen Hack finden, Ressourcen ersetzen oder Ihren Code komplett ersetzen. Moral der Geschichte, finden Sie einen Web-Host, dem Sie vertrauen, machen Sie sich nicht die Mühe, Ihren Code zu verschleiern
Am Ende des Tages steckt Vertrauen. Wenn dein Administrator dich verarschen will, wird er es tun, und die Verschleierung wird nicht viel tun, um ihn aufzuhalten.
Ich bezweifle sehr, dass ein seriöser Hosting-Dienst mit Ihrem Code herumhantiert. Sie sind beschäftigt genug, um ihre Server laufen zu lassen. Und wenn sie es wollen, gibt es nicht viel, was sie tun können, um sie aufzuhalten. Code-Verschleierung (in jeder Sprache) ist eine alberne Sache zu tun.
In Bezug auf Ihre Sicherheitsbedenken hoffe ich, dass Sie keine Kreditkarteninformationen auf Ihrer Website speichern. Sie müssen die PCI-Standards einhalten, um dies zu tun, und das ist nicht einfach. Das Speichern von CC-Informationen ohne PCI-Konformität ist illegal.
Sie müssen also für Ihre Zahlungen ein Zahlungsgateway (wie PayPal oder Authorize.net) verwenden, und ich glaube, dass der Nutzer sehen kann, was ihm in Rechnung gestellt wird.
Ein Hosting-Unternehmen wird niemals Ihren Code anfassen oder untersuchen, es sei denn, Sie tun Dinge, die den Server verletzen (wie Endlosschleifen, alle CPUs wegfressen), und selbst in diesem Fall blockieren sie nur diese Seite oder URL.
Ich kann mir vorstellen, wenn Sie Ihre Anwendung in einem Intranet eines Unternehmens bereitstellen, und sie haben auch ihre Entwickler, dass man Angst haben könnte, Wartungs- und Supportgebühren zu verlieren, weil sie sich selbst übernehmen würden. Aber diese Dinge, die Sie mit Verträgen abdecken.
Die Leute, die direkten Zugang zu Ihrem Ruby-Quellcode haben, sollen Mitarbeiter oder Partner sein, wenn eine klare Geschäftsbeziehung besteht, und normalerweise ist diese Geschäftsbeziehung mehr wert. Wenn Sie Ihren Kollegen oder den Menschen, mit denen Sie arbeiten, nicht vertrauen, sollten Sie Ihre Position überdenken.
Ich glaube sogar, dass so weit wie möglich mit Kunden zu sein (hier ist die Quelle, Sie können es bearbeiten, wenn Sie wollen), im Allgemeinen macht sie Ihnen noch mehr vertrauen und sie eher zurückrufen.
Tags und Links ruby security ruby-on-rails obfuscation