Veröffentlichungsrichtlinien
Um Vorlagen, Stacks, Images und Angebote für Oracle Cloud Infrastructure Marketplace zu erstellen, stellen Sie sicher, dass Sie alle relevanten Richtlinien einhalten.
Das Partnerportal wird zur Oracle Cloud-Konsole migriert. Weitere Informationen finden Sie unter Migration des Partnerportals zur Oracle Cloud-Konsole.
Informationen zu Marketplace-Anbieterrichtlinien
Mit OCI können Oracle-Partner ihre Lösungen über den Oracle Cloud Marketplace an OCI-Kunden vertreiben. Oracle-Kunden vertrauen darauf, dass diese Lösungen so entwickelt und gewartet werden, dass Sicherheit und Datenschutz oberste Priorität haben.
Kunden erwarten auch, dass Lösungen wie versprochen liefern, eine hervorragende Dokumentation enthalten und ein effektives und reibungsarmes Support-Erlebnis bieten. In diesem Dokument wird der Mindestbalken beschrieben, der von Oracle-Partnern für die Aufnahme in Oracle Cloud Marketplace benötigt wird. Sie werden ermutigt, diese Spezifikationen zu überschreiten, wo immer möglich. Lösungen, die Ausnahmen von diesen Standards enthalten, müssen von Oracle geprüft und genehmigt werden.
Schlüsselwörter
Dieses Dokument verwendet Schlüsselwörter gemäß IETF RFC 2119. Weitere Informationen finden Sie unter https://www.ietf.org/rfc/rfc2119.txt.
- Muss - Dieses Wort oder die Begriffe "Erforderlich" oder "Soll" bedeuten, dass die Definition eine absolute Anforderung der Spezifikation ist.
- Diese Phrase oder der Ausdruck "Soll nicht" bedeutet, dass die Definition ein absolutes Verbot der Spezifikation ist.
- Sollte - Dieses Wort oder das Adjektiv "Empfohlen" bedeuten, dass es unter bestimmten Umständen gültige Gründe geben kann, ein bestimmtes Element zu ignorieren, aber die vollständigen Auswirkungen müssen verstanden und sorgfältig abgewogen werden, bevor ein anderer Kurs gewählt wird.
- Sollte nicht - Dieser Satz oder der Ausdruck "Nicht empfohlen" bedeuten, dass es unter bestimmten Umständen gültige Gründe geben kann, wenn das bestimmte Verhalten akzeptabel oder sogar nützlich ist, aber die vollständigen Auswirkungen sollten verstanden und der Fall sorgfältig abgewogen werden, bevor ein mit diesem Etikett beschriebenes Verhalten implementiert wird.
- Mai - Dieses Wort oder das Adjektiv "optional" bedeutet, dass ein Artikel wirklich optional ist. Ein Lieferant kann den Artikel einschließen, weil ein bestimmter Marktplatz ihn erfordert oder weil der Lieferant der Meinung ist, dass er das Produkt verbessert, während ein anderer Lieferant denselben Artikel weglassen kann. Eine Implementierung, die keine bestimmte Option enthält, muss bereit sein, mit einer anderen Implementierung zu interagieren, die diese Option beinhaltet, wenn auch möglicherweise mit reduzierter Funktionalität. In gleicher Weise muss eine Implementierung, die eine bestimmte Option enthält, bereit sein, mit einer anderen Implementierung zu interagieren, die nicht die Option enthält (außer natürlich für die Funktion, die diese Option bietet).
Schweregrad der Sicherheitslücke
Wenn in diesem Abschnitt auf Sicherheitslücken verwiesen wird, wird auf das Common Vulnerability Scoring System (CVSS) v3.0-Bewertungssystem verwiesen. Weitere Informationen zu CVSS v3.0 finden Sie unter https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator.
Sicherheitseinstellungen
Im Sicherheitsüberblick zu Oracle Cloud Infrastructure wird Folgendes angegeben:
We [Oracle] believe that a dynamic security-first culture is vital to building a successful security-minded organization. We have cultivated a holistic approach to security culture in which all our team members internalize the role that security plays in our business and are actively engaged in managing and improving our products' security posture. We have also implemented mechanisms that assist us in creating and maintaining a security-aware culture.
Sie müssen den gesamten Sicherheitsansatz von Oracle Cloud Infrastructure lesen und verstehen. Siehe Oracle Cloud Infrastructure - Sicherheitsdokumentation in der Oracle Cloud Infrastructure-Dokumentation.
Sie müssen eine Sicherheitskultur an erster Stelle pflegen, die das Vertrauen unserer gemeinsamen Kunden versteht und schätzt.
Optionen
- Sie müssen über Sicherheitswarnungen und -hinweise informiert sein, die sich auf Ihre Lösungen auswirken. Hier sind einige häufige Quellen für Sicherheitswarnungen:
- SecurityFocus verwaltet aktuelle Advisorys für viele Open Source- und kommerzielle Produkte. https://www.securityfocus.com/
- Die National Vulnerability Database. https://nvd.nist.gov/vuln
- US-CERT und das Industrial Control Systems CERT (ICS-CERT) veröffentlichen regelmäßig aktualisierte Zusammenfassungen der häufigsten Sicherheitsvorfälle mit hoher Auswirkung. https://www.us-cert.gov/ics
- Die vollständige Offenlegung unter SecLists.org ist ein umfangreiches, öffentliches, herstellerneutrales Forum für detaillierte Diskussionen über Sicherheitslücken und Ausnutzungstechniken. https://seclists.org/fulldisclosure/
- Das Computer Emergency Readiness Team Coordination Center (CERT/CC) verfügt über aktuelle Sicherheitslückeninformationen für die beliebtesten Produkte. https://www.cert.org
- Sie sollten nach Oracle Cloud Infrastructure-Plattformupdates suchen, die sich auf veröffentlichte Images auswirken können.
- Sie müssen OCI innerhalb von 3 Werktagen über neu entdeckte Sicherheitslücken informieren, die sich auf Ihre Lösungen auswirken, mit einer CVSS-Bewertung von 9,0 oder höher.
- Sie müssen Oracle Cloud Infrastructure innerhalb von 5 Werktagen über neu entdeckte Sicherheitslücken informieren, die sich auf Ihre Lösungen auswirken, mit einer CVSS-Bewertung zwischen 7.0 und 8.9.
- Sie müssen OCI innerhalb von 20 Werktagen über neu entdeckte Sicherheitslücken informieren, die sich auf Ihre Lösungen auswirken, mit einer CVSS-Bewertung zwischen 4.0 und 6.9.
- Sie müssen aktualisierte Lösungen veröffentlichen, die neu entdeckte Sicherheitslücken zeitnah beseitigen.
- Sie müssen Kunden erlauben, ihre Lösungen auf dem neuesten Stand zu halten, um sich vor neu entdeckten Sicherheitslücken zu schützen. Einige gängige Muster sind:
- Automatisches Einspielen von Sicherheitsupdates.
- Einem Kunden die Ausführung eines Befehls zum Einspielen von Sicherheitsupdates erlauben.
- Bereitstellung eines Prozesses, mit dem ein Kunde alle aktuellen Deployments durch eine aktualisierte Version ersetzen kann. Dieser Vorgang sollte ausreichend reibungsarm sein, so dass ein Kunde nicht von der Durchführung der erforderlichen Arbeiten abgehalten wird.
- Sie sollten aktualisierte Lösungen mit allgemeinen Sicherheitsupdates vierteljährlich veröffentlichen.
- Wenn Sie vor der Offenlegung einer Sicherheitsanfälligkeit gegenüber Oracle die Ausführung einer Geheimhaltungsvereinbarung benötigen, müssen Sie vor der Veröffentlichung Ihres ersten Images einen Oracle-Vertraulichkeitsvertrag (CDA) unterzeichnet haben. Ihr Oracle-Partnerteam unterstützt Sie bei diesem Prozess.
Richtlinien für Listings
Stellen Sie beim Erstellen Ihrer Anwendungslisten sicher, dass Sie mit den relevanten Richtlinien vertraut sind und diese einhalten.
Obligatorische Richtlinien
Die folgenden Richtlinien sind für Anwendungseinträge im Oracle Cloud Infrastructure Marketplace obligatorisch. Jede Richtlinie muss befolgt werden. Vor der Genehmigung wird jede Antragsliste anhand jeder dieser Richtlinien validiert.
- Der App-Name darf maximal 80 Zeichen umfassen. Für eine optimale Anzeige sollten maximal 36 Zeichen lang sein.
- Der App-Name muss klar, präzise und frei von Rechtschreib- und Grammatikfehlern sein. Es dürfen keine Zeilenumbrüche vorhanden sein.
- Die Überschrift muss eindeutig den Zweck der Anwendung angeben. Es muss in zwei Zeilen oder weniger beschrieben werden und frei von Rechtschreib- und Grammatikfehlern sein.
- Schriftart/Abstand auf der Liste muss konsistent sein.
- Alle Texte müssen frei von Rechtschreib- oder Grammatikfehlern sein.
- Die Beschreibung muss umfassend sein und die Zielgruppe/den Benutzertyp erfassen und darlegen, warum die Auflistung wertvoll ist.
- Alle Links müssen auf die richtigen Positionen verweisen und in einer neuen Registerkarte oder einem neuen Fenster geöffnet werden.
- In Symbolen, Bannern, Screenshots oder Videos enthaltener Text muss lesbar sein.
- Bilder dürfen nicht verschwommen oder gestreckt werden.
- Zugehörige Dokumente müssen konsistente Informationen bereitstellen, damit Benutzer:
- Starten Sie eine Instanz über Marketplace.
- Stellen Sie eine Verbindung zur Instanz her.
- Richten Sie die Anwendung ein, oder starten Sie sie.
- Der Abschnitt "Support" muss genaue Kontaktdaten enthalten, damit der Kunde den Partnersupport in Anspruch nehmen kann. Diese Kontaktdaten müssen eine genaue Telefonnummer oder E-Mail-Adresse enthalten.
- Die Systemanforderungen müssen die Liste der erforderlichen Oracle Cloud Infrastructure-Komponenten enthalten, einschließlich Compute-Ausprägungen, Sicherheitsregeln, IAM-Policys, Block-Volumes, sekundäre VNICs usw.
- Die Nutzungsbedingungen müssen in Ihrem App-Installationspaket enthalten sein und frei von Rechtschreib- oder Grammatikfehlern sein. Der Name der Nutzungsbedingungen muss in Groß- und Kleinschreibung angegeben werden. Links in Nutzungsbedingungen müssen auf die richtigen Standorte verweisen und in einer neuen Registerkarte oder einem neuen Fenster geöffnet werden.
- Die Version des App-Installationspakets muss mit der Version übereinstimmen, die in einem anderen zugehörigen Abbild oder Text für dieses Paket angegeben ist.
- Der Benutzer muss die Anwendung und die zugehörige Infrastruktur mit den Anweisungen in den Abschnitten Nutzung und Zugehörige Dokumente starten, verbinden und konfigurieren können.
- Jede veröffentlichte Lösung enthält eine Reihe kundenorientierter Dokumentation. Diese Dokumentation:
- Sie müssen prominente, detaillierte Anweisungen für die Verbindung mit einer Instanz enthalten.
- Muss die Verwendungsdokumentation oder einen Link zur Dokumentation enthalten.
- Muss Supportdetails oder einen Link zu diesen Details enthalten.
- Kompatible Ausprägungen müssen aufgelistet werden.
- Alle auf der Instanz standardmäßig geöffneten Netzwerkports müssen dokumentiert werden.
- Bestätigung: Sie stimmen zu, dass Sie keine kostenpflichtigen Anbietereinträge auf dem Oracle Cloud Marketplace veröffentlichen dürfen, wenn der Kauf von Produkten und Services und/oder die Bereitstellung zugehöriger Services für den Kunden ganz oder teilweise durch Medicare, Medicaid oder ein anderes staatlich oder staatlich finanziertes Gesundheitsprogramm finanziert werden kann.
Empfohlene Richtlinien
Die folgenden Richtlinien können als Best Practices betrachtet werden, die nach Möglichkeit befolgt werden sollten.
- Die Versionshinweise sollten als Aufzählungspunkte mit entsprechenden Zeilenumbrüchen angegeben werden.
- Die zugehörigen Dokumente sollten Informationen zum Kauf einer Lizenz enthalten, falls erforderlich.
Allgemeine Richtlinien
Hier sind einige allgemeine Richtlinien für Listen aller Typen. Richtlinien zu Anwendungslisten oder Bildlisten finden Sie im entsprechenden Abschnitt.
- Um sicherzustellen, dass sich der Listeninhalt korrekt an die plattformübergreifende Formatierung von Oracle Cloud Marketplace anpasst, sind in den Beschreibungsabschnitten nur grundlegende Formatierungen zulässig. Wenn der Inhalt aus einer anderen Rich-Text-Quelle (wie Microsoft Word) kopiert wird, stellen Sie sicher, dass jede zusätzliche Formatierung entfernt wird, bevor Sie das Angebot zur Überprüfung weiterleiten.
- Das Einfügen von Inhalten in Nur-Text wird empfohlen, um verborgene Stile und Formatierungen zu vermeiden. Durch die Einhaltung dieser grundlegenden Formatierungsoptionen wird sichergestellt, dass der Listeninhalt auf mehreren Geräten und Plattformen korrekt angezeigt wird.
- Die Verwendung der Oracle-Marken innerhalb des Angebotsinhalts (z. B. Oracle-Produktnamen) muss den Richtlinien für die Nutzung von Oracle-Marken durch Dritte entsprechen.
- Die Verwendung der Oracle Logos innerhalb des Listeninhalts (wie Infografiken und Screenshots) muss den Richtlinien für die Nutzung von Oracle Logos durch Dritte (Richtlinien für die Nutzung von Oracle Logos durch Dritte) entsprechen.
- Für Bilder wie Logos, Symbole oder Banner:
- Stellen Sie sicher, dass die Größe der Bilder den angegebenen Dimensionen entspricht.
- Speichern Sie Bilder im angegebenen Dateiformat mit Komprimierung.
- Stellen Sie sicher, dass die Größe der Bilddatei innerhalb der angegebenen Dateigröße liegt.
- Ihr Banner muss 1160 Pixel (Breite) x 200 Pixel (Höhe) und maximal 10 MB groß sein und eine BMP-, GIF-, JPEG- oder PNG-Datei sein.
- Ihr Unternehmenslogo muss 115 x 115 Pixel, maximal 5 MB, groß sein und eine BMP-, GIF-, JPEG- oder PNG-Datei sein.
- Ihr Symbol muss 130 x 130 Pixel und maximal 5 MB groß sein und eine BMP-, GIF-, JPEG- oder PNG-Datei sein.
- Anwendungssymbole sollten unverwechselbar und einzigartig sein. Leiten Sie nicht mehrere Bewerbungen mit demselben Symbol weiter.
- Verwenden Sie keine Oracle-Logos oder -Marken in den Anwendungssymbolen. Stellen Sie sicher, dass Sie über die Nutzungsrechte an Bildern Dritter verfügen.
- Der Inhalt des Beschreibungsabschnitts sollte einen allgemeinen Überblick über die Anwendung bieten. Es muss den Wert und Nutzen für den Kunden beim Ausführen/Hosten der Anwendung in der Oracle Cloud beschreiben.
- Einer langen Beschreibung muss eine kurze Beschreibung vorangestellt sein. Wiederholen Sie nicht die kurze Beschreibung im Abschnitt mit der langen Beschreibung.
- Die Beschreibung darf nicht "Oracle Validated Integration" hervorheben oder darauf verweisen. Das Oracle Validated Integration-(OVI-)Programm gilt nur für On-Premises-Lösungen und nicht für die Oracle Cloud.
- Gehen Sie im Feld Verwendungsinformationen wie folgt vor:
- Fügen Sie einen Link zu einem Leitfaden für die ersten Schritte hinzu, der vollständige Details enthält, die von Benutzern für die ersten Schritte benötigt werden.
- Fügen Sie Links zu technischen Dokumentationen, Datenblättern, Benutzerhandbüchern und anderen verwandten Dokumenten hinzu (einschließlich der Dokumente, die Sie im Abschnitt "Verwandte Dokumente" angeben).
- Listen Sie die Ports auf, die geöffnet werden müssen. Fügen Sie einen Link wie "Offene Ports konfigurieren" hinzu, der die Schritte zum Öffnen von Ports mit der Oracle Cloud Infrastructure-Konsole beschreibt.
- Für Screenshots im Feld Screenshots und Videos:
- Es werden mindestens zwei Screenshots empfohlen.
- Blenden Sie bei Bildschirmfotos die Symbolleisten und Menüs des Browsers aus. Verwenden Sie den Browser-Vollbildmodus.
- Die empfohlene Größe für Screenshots beträgt 640 Pixel (Breite) x 480 Pixel (Höhe). Weitere geeignete Größen sind 1024x768 und 1200x900. Größere Bilder sollten zugeschnitten oder skaliert werden.
- Für beste Ergebnisse sollten Bilder mit einem nativen Seitenverhältnis von 4:3 erstellt werden. Bei Bildern, die nicht in das 4:3-Seitenverhältnis passen, wie Screenshots von Handy-Apps, fügen Sie das Bild mit einem entsprechend farbigen oder transparenten Hintergrund auf, um die erforderliche Bildgröße zu erreichen. Verwenden Sie einen Bildeditor, um Abstand hinzuzufügen.
- Screenshots müssen maximal 5 MB groß sein und eine BMP-, GIF-, JPEG- oder PNG-Datei sein.
- Hochgeladene Bilder werden auf der Hauptseite automatisch auf 240 x 180 Pixel Thumbnails skaliert.
- Hochgeladene Bilder werden automatisch an den Media Viewer mit 600 x 450 Pixeln angepasst.
- Fügen Sie ein Demovideo als erstes Element in der Liste in das Feld Screenshots und Videos ein.
- Werbevideos, die auf YouTube oder Vimeo gehostet werden, können direkt in die Screenshot-Liste und den Media Viewer eingebettet werden.
- Die URL-Adresse für das Video muss entweder mit
http://
oderhttps://
beginnen - Das wichtigste Demo-Video sollte kurz und auf den Punkt gebracht sein und sich auf die Hauptfeatures der Anwendung und den Wert der Anwendung/Integration in der Oracle Cloud konzentrieren.
- Längere Videos und Werbeinhalte können als zusätzliche Videos aufgenommen werden.
- Gehen Sie im Feld Zugehörige Dokumente wie folgt vor:
- Das Hinzufügen eines für die Oracle Cloud-Integration spezifischen Datenblatts ist eine Mindestanforderung.
- Datenblätter müssen spezifisch für das Oracle Cloud-fähige Release der Anwendung sein.
- Fügen Sie ein Dokument "Erste Schritte mit Oracle Cloud Infrastructure" hinzu, das vollständige Details für Kunden zur Konfiguration und Einrichtung der Software enthält.
- Im Feld System Requirements:
- Listen Sie alle Oracle Cloud PaaS-Services auf, die zum Installieren und Ausführen der Anwendung erforderlich sind.
- Listen Sie alle Oracle Cloud SaaS-Services auf, mit denen die Anwendung integriert ist.
- Listen Sie alle Systemabhängigkeiten von Drittanbietern auf.
- Schließen Sie in diesem Abschnitt browser-spezifische Abhängigkeiten oder unterstützte mobile Plattformen ein.
- Seien Sie spezifisch für Versions- oder Editionsabhängigkeiten oder Größenanforderungen (falls erforderlich).
Richtlinien für Bilder
Wenn Sie eine Imageliste im Oracle Cloud Infrastructure Marketplace erstellen, stellen Sie sicher, dass die Images, die Sie für den Eintrag erstellen, den relevanten Richtlinien entsprechen.
Obligatorische Richtlinien für Linux-Images
In der folgenden Tabelle sind die erforderlichen Bildrichtlinien und der entsprechende Fehlercode aufgeführt. Jede Richtlinie muss befolgt werden. Bevor ein Image auf dem Oracle Cloud Infrastructure Marketplace veröffentlicht wird, wird jedes Image anhand der folgenden obligatorischen Richtlinien validiert.
Fehlercode | Beschreibung |
---|---|
S01 | SSH-Hostschlüssel müssen für jede Instanz eindeutig sein. Verwenden Sie das Utility oci-image-cleanup, das vom Package oci-utils auf GitHub bereitgestellt wird. Dadurch werden alle SSH-Hostschlüssel entfernt, sodass sie beim ersten Booten neu generiert werden. |
S08 | Images müssen einen SSH-Public Key aufnehmen, der von einem Kunden im Rahmen des Instanzstartprozesses bereitgestellt wird. Stellen Sie sicher, dass das Image cloud-init aktiviert ist. |
S10 | Alle authorized_keys -Dateien dürfen nur Schlüssel enthalten, die vom Benutzer beim Starten der Instanz bereitgestellt werden. Verwenden Sie das Utility oci-image-cleanup, das vom Package oci-utils auf GitHub bereitgestellt wird. |
S14 | Die Anmeldung beim Root-Benutzer muss deaktiviert sein. Mindestens 1 der folgenden 3 Bedingungen muss erfüllt sein:
|
S16 | Für Images dürfen keine Benutzer auf Betriebssystemebene mit einem Kennwort konfiguriert sein und dürfen kein leeres Kennwort haben. |
G01 | Das Image muss für alle kompatiblen Ausprägungen booten. Manuell prüfen, indem Instanzen für jede kompatible Ausprägung erfolgreich gestartet werden. |
G03 | Das Bild darf keine fest codierten MAC-Adressen aufweisen. Leeren Sie die Datei /etc/udev/rules.d/70-persistent-net.rules . |
G05 | DHCP muss aktiviert sein. Stellen Sie sicher, dass die Konfiguration manuell erfolgt. Wenn Sie sicherstellen, dass Sie eine SSH-Verbindung zu einer Instanz dieses Images herstellen können, wird bestätigt, dass DHCP aktiviert ist. |
G08 | Stellen Sie sicher, dass das Image den Instance Metadata Service v1 (IMDSv1) nicht verwendet. Wenn das Image IMDSv1-Endpunkte verwendet, empfiehlt Oracle, IMDSv1 zu deaktivieren und ein Upgrade auf IMDSv2 durchzuführen. Siehe Upgrade auf den Instance Metadata Service v2 in der Oracle Cloud Infrastructure-Dokumentation. |
Erforderliche Richtlinien für Windows-Images
Fehlercode | Beschreibung |
---|---|
W01 | Bevor Sie ein benutzerdefiniertes Windows-Image erstellen, müssen Sie die Windows-Instanz mit Sysprep verallgemeinern. Siehe Generalisierte Images erstellen. |
W02 | Das opc-Konto darf bei der Ausführung von Sysprep generalize nicht beibehalten werden. Siehe Generalisierte Images erstellen. |
G08 | Stellen Sie sicher, dass das Image den Instance Metadata Service v1 (IMDSv1) nicht verwendet. Wenn das Image IMDSv1-Endpunkte verwendet, empfiehlt Oracle, IMDSv1 zu deaktivieren und ein Upgrade auf IMDSv2 durchzuführen. Siehe Upgrade auf den Instance Metadata Service v2 in der Oracle Cloud Infrastructure-Dokumentation. |
Empfohlene Richtlinien für Linux-Images
Die folgenden Richtlinien werden für Images empfohlen, die im Oracle Cloud Infrastructure Marketplace aufgeführt werden. Jede Richtlinie gilt als Best Practice, die nach Möglichkeit befolgt werden sollte.
Fehlercode | Beschreibung |
---|---|
S02 | Obligatorische Zugriffskontrolle (MAC) muss aktiviert sein. Siehe https://www.linux.com/news/securing-linux-mandatory-access-controls. |
S03 | Eine Betriebssystemfirewall muss aktiviert und so konfiguriert sein, dass nicht speziell erforderliche Ports blockiert werden, wie in der Auflistungsdokumentation angegeben. |
S04 | Alle sensiblen Daten wie Passwörter und Private Keys sollten entfernt werden. Dieser Datentyp kann häufig in Logdateien, Quellcode oder Build-Artefakten gefunden werden. Um solche Dateien zu entfernen, verwenden Sie das Utility oci-image-cleanup, das vom Package oci-utils auf GitHub bereitgestellt wird. |
S07 | cloud-init -Packages müssen während des Instanzstarts verfügbar sein. |
S11 | Konfigurieren Sie den SSH-Service, um eine kennwortbasierte Anmeldung zu verhindern. Konfigurieren Sie die folgenden Einstellungen manuell:PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no |
S15 | Die Bildsoftware sollte im Rahmen des endgültigen Verpackungsprozesses aktualisiert werden. |
S17 | Anwendungskennwörter dürfen nicht hartcodiert sein. Alle Kennwörter müssen beim ersten Start der Instanz eindeutig generiert werden: |
G02 | Bilder sollten im paravirtualisierten Modus ausgeführt werden. Bilder können im nativen Modus ausgeführt werden. Bilder dürfen nicht im emulierten Modus ausgeführt werden. |
G04 | Netzwerkmanager sollten gestoppt werden. Siehe https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux_OpenStack_Platform/3/html/Installation_and_Configuration_Guide/Disabling_Network_Manager.html. |
G06 | Images sollten den von Oracle Cloud Infrastructure bereitgestellten NTP-Service verwenden. Siehe Oracle Cloud Infrastructure NTP-Service für Instanzen konfigurieren. |
G07 | Für Images müssen iSCSI-Timeoutwerte für die ordnungsgemäße Boot-Volume-Konnektivität festgelegt sein. Siehe https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Online_Storage_Reconfiguration_Guide/iscsi-modifying-link-loss-behavior-root.html. |
Richtlinien für Stacks
Oracle empfiehlt, allgemeine Terraform-Best Practices zum Erstellen Ihrer Terraform-Vorlage zu übernehmen. Es gibt jedoch spezifische Marketplace-Stackstandards, die befolgt werden müssen, um einen Stack zu veröffentlichen.
Obligatorische Richtlinien
Im Folgenden finden Sie obligatorische Richtlinien für Stacks, die im Oracle Cloud Infrastructure Marketplace aufgeführt sind. Jede Richtlinie muss befolgt werden. Vor der Veröffentlichung wird jedes Stackartefakt anhand jeder dieser Richtlinien validiert.
- Das Stackartefakt muss eine ZIP-Datei mit den Terraform-Konfigurationsdateien und einer Schemadatei sein.
- Die ZIP-Datei muss mindestens eine Konfigurationsdatei
(.tf)
im Stammordner enthalten. - Die ZIP-Datei muss die Schemadatei
(.yaml)
im Stammordner enthalten. - ZIP-Datei darf keine Terraform-Statusdatei in der ZIP-Datei enthalten. Statusdateien werden von Oracle Resource Manager (ORM) verwaltet. Wenn Kunden einen Stack starten, erstellt und verwaltet ORM die Ressourcen, und die Statusdatei steht nur zum Download zur Verfügung.
- ZIP-Datei darf den Terraform-Laufzeitkonfigurationsordner
(.terraform).
nicht enthalten
- Die ZIP-Datei muss mindestens eine Konfigurationsdatei
- Die Terraform-Konfiguration darf nur Instanzimages verwenden, die genehmigte oder veröffentlichte (öffentliche oder private) Marketplace-Images sind. Sie muss über ein Marketplace-Abonnement für jedes dieser Images verfügen. Es muss hartcodierte Referenz(en) zu diesen Marketplace-Images enthalten. Weitere Informationen finden Sie unter Terraform-Beispielkonfiguration für ein Marketplace-Imageabonnement und eine Nutzung.
- Binärdateien dürfen nicht aus externen Repositorys heruntergeladen werden. Alle Binärdateien und Abhängigkeiten müssen in das veröffentlichte Marketplace-Image eingebettet werden.
- Der Terraform-Remoteausführungs-Provisioner darf nur innerhalb der Oracle Cloud Infrastructure-Domain ausgeführt werden. Es darf keine Dateien auf einen Remoteserver herunterladen.
- Code oder Binärdateien von Drittanbietern dürfen nicht mit
cloud-init.
heruntergeladen werdencloud-init
ist ein häufig verwendetes Utility zur Startkonfiguration für Cloud-Compute-Instanzen. Es akzeptiert die Konfiguration über Benutzerdatenmechanismen, die als Teil der Metadatendefinition auf der Ressourceoci_core_instance
angegeben sind.- Es gibt mehrere Benutzerdatenformate, die von
cloud-init.
unterstützt werden Siehe https://cloudinit.readthedocs.io/en/latest/topics/format.html. - Unabhängig vom Benutzerdatenformat darf
cloud-init
NICHT zum Herunterladen von Code oder Binärdateien von Drittanbietern verwendet werden. Alle Binärdateien, die während des Instanzstartprozesses (Bootstrap) erforderlich sind, sollten von einem Prozess (Skript), der als Teil der Imageverteilung gebacken wird, heruntergeladen werden, und nicht übercloud-init
injiziert werden (z.B. unter Verwendung vonwget).
- Möglicherweise ist jedoch eine
cloud-init
-Vorlage eingerichtet, die Kunden in bestimmten Szenarios verwenden können, z.B. um eine Lizenzschlüsseldatei zu importieren oder um eine Konfigurationsdatei zu importieren. In diesem Fall müssen Sie eine Variable im Terraform-Vorlagencode angeben, damit Kunden einige Daten in dencloud-init
-Baustein eingeben können, z.B. mit der Terraform-Datenquelletemplate_file
.
- Der Terraform-Provider muss Oracle Cloud Infrastructure sein. Andere Cloud-Anbieter oder Drittanbieter von Anwendungen werden nicht unterstützt.
- Wenn ein Terraform-Modul verwendet wird, muss es aus lokalen relativen Pfaden geladen werden. Es kann nicht aus einem Remote Repository geladen werden.
- Die Terraform-Konfiguration muss die Instanz-Principal-Authentifizierung verwenden.
-
Sie müssen die minimalen und maximalen unterstützten Terraform-Versionen angeben, auf denen Sie den Stack getestet haben.
- Geben Sie die mindestens erforderliche Terraform-Version im Format
~> <major_version>.<minor_version>.<patch_version>
an.Dabei wird
patch_version
immer auf 0 gesetzt. Wenn ein Stack gestartet wird, prüft Resource Manager die<major_version>.<minor_version>
, die Sie in Ihrem Code definiert haben, und verwendet die neueste verfügbare Patchversion. Aus diesem Grund müssen Sie das~>
-Zeichen anstelle des=>
-Signals verwenden, während Sie die mindestens erforderliche Terraform-Version angeben.Beispiel:
~> 0.14.0
gibt an, dass die unterstützten Terraform-Versionen 0.14.0 oder höher sind. - Geben Sie die maximal erforderliche Terraform-Version im Format
< <major_version>.<minor_version>
an.Beispiel:
< 0.15
gibt an, dass die unterstützten Terraform-Versionen vor 0,15 liegen.
Das folgende Beispiel zeigt, wie Sie die minimale und die maximale unterstützte Terraform-Version angeben, wenn Sie Ihren Stack nur auf Terraform 0.14 getestet haben.
terraform { required_version = "~> 0.14.0, < 0.15" }
- Geben Sie die mindestens erforderliche Terraform-Version im Format
Weitere Informationen zu Terraform, einschließlich des Oracle Cloud Infrastructure-Providers, der Instanz-Principal-Authentifizierung und des Remoteausführungs-Provisioners, finden Sie in der Terraform-Dokumentation für die Providerkonfiguration. Informationen zu unterstützten Versionen von Terraform finden Sie unter Erste Schritte mit dem Terraform-Provider in der Oracle Cloud Infrastructure-Dokumentation.
Codierungsrichtlinien für Terraform-Konfigurationen
Die folgenden Richtlinien werden für Stacks empfohlen, die im Oracle Cloud Infrastructure Marketplace aufgeführt sind. Jede Richtlinie gilt als Best Practice, die nach Möglichkeit befolgt werden sollte.
- Das Stackartefakt muss es Kunden ermöglichen, entweder alle Infrastrukturressourcen zu erstellen oder auf vorhandene Ressourcen (Netzwerk, Speicher usw.) zu verweisen.
- Benennungskonventionen und Formatierungen sollten befolgt werden:
- Groß-/Kleinschreibung: Verwenden Sie
lower_snake_case
für alle Benennungen. Dies gilt für Variablennamen, Ressourcennamen, Modulnamen, Dateinamen, Anzeigenamen usw. - Angeben des Ressourcentyps - Nehmen Sie den Ressourcen- oder Datenquellentyp nicht in den Namen auf. In Terraform werden Ressourcen und Datenquellen immer von
<type>.<name>.
referenziert Daher ist es nicht erforderlich, den Typ in den Namen selbst aufzunehmen. - ID ggü. OCID - In Oracle Cloud Infrastructure bezieht sich
id
im Allgemeinen auf ein Feld, das eine OCID annimmt. Daher sollten Variablenid
verwenden, wenn sie auf OCID-Werte verweisen, anstattocid
zu verwenden. - Variablennamen - Variablennamen für Oracle Cloud Infrastructure-Ressourcen müssen in der Regel denselben Namen verwenden wie für die Terraform-Ressource.
- Anzeigenamen: Anzeigenamen für Oracle Cloud Infrastructure-Ressourcen müssen in der Regel denselben Namen verwenden wie für die Terraform-Ressource.
- Benennungsmodulvariablen und -ausgaben - Bei Verwendung eines Moduls sollten die Benennung der Eingabe (Variablen) und der Ausgaben dem Aufrufer angezeigt werden.
terraform fmt
muss auf alle Terraform angewendet werden, bevor es eingecheckt wird.
- Groß-/Kleinschreibung: Verwenden Sie