NAVER CLOUD PLATFORM Object Storageへのファイルのアップロード (保護付き)

Home > NAVER CLOUD PLATFORM Object Storage > 例02

説明

NAVER CLOUD PLATFORM Object Storageにファイルをアップロードする例です。Object Storageにファイルをアップロードするには、事前にregion/bucket/exec/secretの実行形式情報を知っておく必要があります。しかし、「accesskey/secret」のような情報は外部に公開してはいけないので、人前で使うのは危険です。認証情報を公開せずにアップロードするには、バックエンドで署名済みのアドレスを作成し、そのアドレスを使ってファイルをアップロードします。署名済みのアドレスは一定時間のみ有効で、アップロードを暗黙的に承認します。次のコードは、この情報を設定する方法を示している。

// NCPOSメソッドを設定する。	
dx.setUploadMode("NCPOS");
// 設定オブジェクトの type 属性を 「SECRET 」に設定するか、省略する。
dx.setAWSS3UploadConfig({
    //type: "SECRET",
    initURL: dx5.canonicalize("../service/ncpos-upload-helper.do?step=0"),
    signedURL: dx5.canonicalize("../service/ncpos-upload-helper.do?step=1"),
    completeURL: dx5.canonicalize("../service/ncpos-upload-helper.do?step=2")
});

3つのバックエンドアドレスは、ファイルアップロードの各ステップに必要な署名済みアドレスを生成して返す役割を担っています。バックエンドから署名付きアドレスを返すには、AWSが提供するSDKを使用する必要がある。サンプルプロジェクトでは、必要なAWS SDK JARファイルをWEB-INF/libディレクトリに配置しています。

AWS SDKを使用した署名付きアドレスの生成の詳細については、NCPOSUploadサーブレットとNCPOSMultipartUploadHelperクラスを参照してください。

テストするには、NCPOSMultipartUploadHelperクラスでACESSKEY_ID、SECRET_ACCESSKEY、REGION、BUCKET_NAMEを設定する必要がある。

結果