OCI Object Storage einrichten

Ein separates Abonnement von OCI Object Storage ist erforderlich, um diese Funktion zu verwenden. Beachten Sie, dass eine Gruppe ein logischer Container in OCI Object Storage zum Speichern von Objekten ist. Im Kontext von Account Reconciliation gelten Ihre Anhänge als Objekte.

Die übergeordneten Schritte in OCI Object Storage sind im Folgenden aufgelistet:

  1. Erstellen Sie eine Gruppe in OCI Object Storage, in der Ihre Account Reconciliation-Anhänge gespeichert werden sollen. Anweisungen finden Sie unter Gruppen erstellen .

    Note:

    Sie können eine Gruppe in einem vorhandenen Compartment erstellen, oder Sie können ein neues Compartment für Account Reconciliation-Anhänge erstellen.

    Im Folgenden finden Sie ein Beispiel für eine eingerichtete Gruppe.


    Object Storage-Konfiguration

    Damit Sie den Zugriff auf die Gruppe testen und nahtlos von einer Testumgebung in eine Produktionsumgebung wechseln können, empfiehlt es sich, dass Sie zwei Ordner in der Gruppe erstellen: einen Ordner für die Testumgebung und einen für die Produktionsumgebung. Wenn Sie beispielsweise eine Gruppe namens account_rec_data erstellen, um ihre Anhänge zu speichern, erstellen Sie die Ordner test und prod in dieser Gruppe. Verwenden Sie während der Implementierungsphase den Ordner test, indem Sie die Gruppen-URL als <bucket_url>/test angeben. Wenn Sie in die Produktionsumgebung wechseln, ändern Sie die Gruppenkonfiguration in <bucket_url>/prod. Der Ordner test kann danach gelöscht werden, ohne dass sich dies auf die Produktionsumgebung auswirkt.

  2. Stellen Sie sicher, dass Auto-Tiering für die Gruppe deaktiviert ist. Informationen hierzu finden Sie unter Auto-Tiering für eine Object Storage-Gruppe verwalten.
  3. Sie müssen die Regeln für die Lebenszyklus-Policy in OCI Object Storage unverändert beibehalten. Ändern Sie diese nicht.
  4. Optional: Aufbewahrungsregeln in OCI Object Storage befolgen die Auditanforderungen Ihres Unternehmens (z.B. fünf bis sieben Jahre).

  5. In Oracle Cloud Infrastructure (OCI) müssen Sie einen Benutzer für Account Reconciliation erstellen und diesem Benutzer mindestens den Lese- und Schreibzugriff (READ und WRITE) zuweisen, jedoch keinen Löschzugriff (DELETE). Der Benutzer kann ein Identity and Access Management-(IAM-)Benutzer oder ein föderierter Benutzer sein.

    Es wird empfohlen, einen separaten Benuttzer für den Zugriff auf Object Storage und Account Reconciliation zu erstellen. Diesem Benutzer müssten Zugriffsberechtigungen auf die Anhangsspeichergruppe sowie Berechtigungen zum Verwalten von Objekten in der Gruppe zugewiesen werden.

  6. Sie müssen eine Gruppe erstellen, um Policys zuweisen zu können.

    Der Zugriff auf Object Storage wird von Identity and Access Management (IAM)-Policys verwaltet. Informationen zu allgemeinen Object Storage-Policys finden Sie unter https://docs.oracle.com/en-us/iaas/Content/Identity/Concepts/commonpolicies.htm#write-objects-to-buckets.

    Informationen zum Erstellen von IAM-Policys finden Sie in der Dokumentation https://docs.oracle.com/en-us/iaas/Content/Identity/Concepts/policygetstarted.htm.

    Nachfolgend finden Sie ein Beispiel für eine erforderliche Policy.

    • Allow group ArcsAttachmentWriters to read buckets in compartment ABC

    • Allow group ArcsAttachmentWriters to manage objects in compartment ABC where all {target.bucket.name='ArcsAttachments', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

  7. Für den Benutzer muss ein Authentifizierungstoken erstellt werden. Ausführliche Informationen finden Sie unter https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm#Working

    Note:

    Das Authentifizierungstoken wird nach der Erstellung nicht angezeigt. Notieren Sie sich also das Token, da es später im Konfigurationsprozess verwendet wird.
  8. Wenn Sie die Gruppe erstellt und einen Benutzer angelegt haben, müssen Sie OCI Object Storage in Account Reconciliation so einrichten, dass die Verbindung mit der Gruppen-URL und den Angaben für Benutzername und Kennwort hergestellt wird. Informationen hierzu finden Sie unter OCI Object Storage in Account Reconciliation einrichten.

Beispiele: Policys konfigurieren

Achten Sie beim Erstellen einer Policy darauf, das Compartment oder den Mandanten auszuwählen, in dem Ihre Gruppe gespeichert ist. Beispiel: Wenn Ihre Gruppe im Compartment ABC erstellt wurde, muss die Policy ebenfalls im Compartment ABC platziert werden.

Gruppe im Root-Mandanten, und Benutzer wurde in Provider der föderierten Identität erstellt

Wenn sich Ihre Speichergruppe im Root-Mandanten befindet, Sie eine Gruppe verwenden und der Benutzer im Provider der föderierten Identität erstellt wurde, muss das Policy-Format wie folgt lauten:

Allow group 'OracleIdentityCloudService'/'GROUP_NAME' to read buckets in tenancy
Allow group 'OracleIdentityCloudService'/'GROUP_NAME' to manage objects in tenancy where all {target.bucket.name='BUCKET_NAME', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Beispiel für den Gruppenamen arcs_attachments und den Speichergruppennamen arcs_bucket:

Allow group 'OracleIdentityCloudService'/'arcs_attachments' to read buckets in tenancy
Allow group 'OracleIdentityCloudService'/'arcs_attachments' to manage objects in tenancy where all {target.bucket.name='arcs_bucket', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Speichergruppe im Root-Mandanten, reguläre Gruppe und regulärer Benutzer (ohne Provider der föderierten Identität)

Wenn sich Ihre Speichergruppe im Root-Mandanten befindet und Sie eine reguläre Gruppe und einen regulären Benutzer verwenden (ohne Provider der föderierten Identität), muss das Policy-Format wie folgt lauten:

Allow group GROUP_NAME to read buckets in tenancy
Allow group GROUP_NAME to manage objects in tenancy where all {target.bucket.name='BUCKET_NAME', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Beispiel für den Gruppenamen arcs_attachments und den Speichergruppennamen arcs_bucket:

Allow group arcs_attachments to read buckets in tenancy
Allow group arcs_attachments to manage objects in tenancy where all {target.bucket.name='arcs_bucket', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Speichergruppe auf Compartment-Ebene, und Gruppe und Benutzer wurden in einem Provider der föderierten Identität erstellt

Wenn sich Ihre Speichergruppe auf Compartment-Ebene befindet und Sie eine Gruppe und einen Benutzer verwenden, die im Provider der föderierten Identität erstellt wurden, muss das Policy-Format wie folgt lauten:

Allow group 'OracleIdentityCloudService'/'GROUP_NAME' to read buckets in compartment COMPARTMENT_NAME
Allow group 'OracleIdentityCloudService'/'GROUP_NAME' to manage objects in compartment COMPARTMENT_NAME where all {target.bucket.name='BUCKET_NAME', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Beispiel für den Gruppenamen arcs_attachments und den Compartment-Namen arcs_compartment:

Allow group 'OracleIdentityCloudService'/arcs_attachments' to read buckets in compartment ABC
Allow group 'OracleIdentityCloudService'/arcs_attachments' to manage objects in compartment arcs_compartment where all {target.bucket.name='arcs_bucket', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Speichergruppe auf Compartment-Ebene, reguläre Gruppe und regulärer Benutzer (ohne Provider der föderierten Identität)

Wenn sich Ihre Speichergruppe auf Compartment-Ebene befindet und Sie eine reguläre Gruppe und einen regulären Benutzer verwenden (ohne Provider der föderierten Identität), muss das Policy-Format wie folgt lauten:

Allow group GROUP_NAME to read buckets in compartment COMPARTMENT_NAME
Allow group GROUP_NAME to manage objects in compartment COMPARTMENT_NAME where all {target.bucket.name='BUCKET_NAME', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}

Beispiel für den Gruppenamen arcs_attachments und den Compartment-Namen arcs_compartment:

Allow group arcs_attachments to read buckets in compartment arcs_compartment
Allow group arcs_attachments to manage objects in compartment arcs_compartment where all {target.bucket.name='arcs_bucket', any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT', request.permission='OBJECT_READ'}}