存取管理的 DBMS_CLOUD

本節涵蓋用於存取管理的 DBMS_CLOUD 子程式。

必備條件

身為開發人員,您可以將 DBMS_CLOUD 程序與部署在 Oracle Public Cloud、Multicloud 或 Exadata Cloud@Customer 上的 Autonomous AI 資料庫搭配使用。

視部署選項而定,必須符合下列先決條件,才能將 DBMS_CLOUD 程序與 Amazon S3、Azure Blob Storage 及 Google Cloud Storage 服務提供者搭配使用。

存取管理的 DBMS_CLOUD 子程式摘要

DBMS_CLOUD 套裝程式內證明資料管理的子程式,包括建立、刪除以及更新證明資料。

子程式 描述
CREATE_CREDENTIAL 程序 此程序會將雲端服務證明資料儲存在自治式 AI 資料庫中。
DROP_CREDENTIAL 程序 此程序會從自治式 AI 資料庫移除現有的證明資料。
UPDATE_CREDENTIAL 程序 此程序會更新自治式 AI 資料庫中的雲端服務證明資料屬性。

CREATE_CREDENTIAL 程序

此程序會將雲端服務證明資料儲存在自治式 AI 資料庫中。

使用預存雲端服務證明資料存取雲端服務以進行資料載入、查詢位於雲端的外部資料,或針對使用 DBMS_CLOUD 程序搭配 credential_name 參數的其他情況。

語法

DBMS_CLOUD.CREATE_CREDENTIAL (
      credential_name   IN VARCHAR2,
      username          IN VARCHAR2,
      password          IN VARCHAR2 DEFAULT NULL);


DBMS_CLOUD.CREATE_CREDENTIAL (
      credential_name IN VARCHAR2,
      user_ocid       IN VARCHAR2,
      tenancy_ocid    IN VARCHAR2,
      private_key     IN VARCHAR2,
      fingerprint     IN VARCHAR2);

參數

Parameter - 參數 描述
credential_name 要儲存之證明資料的名稱。credential_name 參數必須符合 Oracle 物件命名慣例,此慣例不允許空格或連字號。
username usernamepassword 引數一起指定您的雲端服務證明資料。請參閱 username 的使用注意事項,以及 password 的不同雲端服務使用注意事項。
password usernamepassword 引數一起指定您的雲端服務證明資料。
user_ocid 指定使用者的 OCID。請參閱從何處取得租用戶的 OCID 和使用者的 OCID ,瞭解取得使用者 OCID 的詳細資訊。
tenancy_ocid 指定租用戶的 OCID。請參閱從何處取得租用戶的 OCID 和使用者的 OCID ,瞭解取得租用戶 OCID 的詳細資訊。
private_key 指定產生的私密金鑰。不支援使用密碼詞組產生的私密索引鍵。您需要產生不含密碼詞組的私密金鑰。請參閱如何產生 API 簽署金鑰,瞭解以 PEM 格式產生金鑰組的詳細資訊。
fingerprint 指定指紋。將產生的公開金鑰上傳至使用者帳戶之後,主控台中就會顯示指紋。對此引數使用顯示的指紋。請參閱如何取得金鑰的指紋如何產生 API 簽署金鑰以瞭解詳細資訊。

使用注意事項

Oracle Cloud Infrastructure 證明資料 (Auth 權杖)

對於 Oracle Cloud Infrastructure,username 是您的 Oracle Cloud Infrastructure 使用者名稱。password 是您的 Oracle Cloud Infrastructure 認證權杖。請參閱使用認證權杖

舉例而言:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'DEF_CRED_NAME',
    username => 'adb_user@example.com',
    password => 'password' );
END;
/

認證對 OCI 物件儲存的呼叫時,請使用以認證權杖為基礎的證明資料。對於呼叫任何其他類型的 Oracle Cloud Infrastructure 雲端服務,請使用 Oracle Cloud Infrastructure 簽署金鑰型證明資料。

Oracle Cloud Infrastructure 簽署金鑰型證明資料

Use the Oracle Cloud Infrastructure signing key related parameters, including: user_ocid, tenancy_ocid, private_key, and fingerprint with Oracle Cloud Infrastructure Signing Keys authentication.

舉例而言:

BEGIN
   DBMS_CLOUD.CREATE_CREDENTIAL (
       credential_name => 'OCI_KEY_CRED',
       user_ocid       => 'ocid1.user.oc1..aaaaaaaauq54mi7zdyfhw33ozkwuontjceel7fok5nq3bf2vwetkpqsoa',
       tenancy_ocid    => 'ocid1.tenancy.oc1..aabbbbbbaafcue47pqmrf4vigneebgbcmmoy5r7xvoypicjqqge32ewnrcyx2a',
       private_key     => 'MIIEogIBAAKCAQEAtUnxbmrekwgVac6FdWeRzoXvIpA9+0r1.....wtnNpESQQQ0QLGPD8NM//JEBg=',
       fingerprint     => 'f2:db:f9:18:a4:aa:fc:94:f4:f6:6c:39:96:16:aa:27');
END;
/

不支援使用密碼詞組產生的私密索引鍵。您需要產生不含密碼詞組的私密金鑰。請參閱如何產生 API 簽署金鑰瞭解詳細資訊。

Amazon Web Services (AWS) 證明資料

如果您的來源檔案位於 Amazon S3 或您正在呼叫 AWS API,則 username 是您的 AWS 存取金鑰 ID,而 password 則是您的 AWS 密碼存取金鑰。AWS 識別和存取管理

Microsoft Azure 證明資料

如果您的來源檔案位於 Azure Blob 儲存體中,或您正在呼叫 Azure API,則 username 是您的 Azure 儲存體帳戶名稱,而 password 是 Azure 儲存體帳戶存取金鑰。請參閱關於 Azure 儲存體帳戶

Amazon S3 - 相容憑證

服務 憑證資訊
Google 雲端儲存

如果您的來源檔案位於 Google Cloud Storage,或您正在呼叫 Google Cloud Storage API,則您需要設定預設的 Google 專案並取得 HMAC 金鑰,以建立提供 Google Cloud Storage S3 相容 URL 的證明資料。請使用 HMAC 金鑰 ID 作為使用者名稱,並使用 HMAC 加密密碼作為密碼。

請參閱專案HMAC 金鑰以瞭解詳細資訊。

管理要向 C3 物件儲存認證的 DBMS_CLOUD 證明資料

您可以使用 DBMS_CLOUD.CREATE_CREDENTIAL 程序為 Autonomous AI 資料庫提供連線到 C3 物件儲存的儲存桶所需的認證資訊。使用與 Oracle Cloud Infrastructure 簽署金鑰認證相關的 Oracle Cloud Infrastructure 簽署金鑰參數,包括 user_ocidtenancy_ocidprivate_keyfingerprint

範例:

BEGIN
  DBMS_CLOUD.CREATE_CREDENTIAL (
    credential_name => 'OBJECT_STORAGE_CREDENTIAL',
    user_ocid       => 'ocid1.user.oc1..abcdedfxxxxx',
    tenancy_ocid    => 'ocid1.tenancy.oc1..abcdefxyyyyyy',
    private_key     => 'MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDku_Rest_of_PrivateKey_no_spaces_no_newlines',
    fingerprint     => '3d:ba:f9:aa:bb:cc:dd:ee:ff:gg:hh:ii:jj:xa:xb:xc'
  );
END;
/

DROP_CREDENTIAL 程序

此程序會從自治式 AI 資料庫移除現有的證明資料。

語法

DBMS_CLOUD.DROP_CREDENTIAL (
   credential_name     IN VARCHAR2);

參數

Parameter - 參數 描述
credential_name 要移除之證明資料的名稱。

UPDATE_CREDENTIAL 程序

此程序會以指定之 credential_name 的新值更新屬性。

使用儲存的證明資料來載入資料、查詢位於雲端的外部資料,或將 DBMS_CLOUD 程序與 credential_name 參數搭配使用。

語法

DBMS_CLOUD.UPDATE_CREDENTIAL (
    credential_name   IN VARCHAR2,
    attribute         IN VARCHAR2,
    value             IN VARCHAR2);

參數

Parameter - 參數 描述
credential_name 要更新之證明資料的名稱。
attribute

要更新的屬性名稱。

若為使用者名稱 / 密碼類型證明資料,有效的 attribute 值為:USERNAMEPASSWORD

請參閱 CREATE_CREDENTIAL 程序以瞭解詳細資訊。

value 指定屬性的新值。

使用注意事項

範例

BEGIN
  DBMS_CLOUD.UPDATE_CREDENTIAL(
     credential_name => 'OBJ_STORE_CRED',
     attribute => 'PASSWORD',
     value => 'password');
END;
/
BEGIN
  DBMS_CLOUD.UPDATE_CREDENTIAL(
     credential_name => 'ARN_CRED',
     attribute => 'aws_role_arn',
     value => 'NEW_AWS_ARN');
END;
/

相關內容