Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat URL yang ditandatangani menggunakan kebijakan kalengan
Untuk membuat URL yang ditandatangani menggunakan kebijakan terekam, lakukan langkah-langkah berikut.
Untuk membuat URL yang ditandatangani menggunakan kebijakan terekam
-
Jika Anda menggunakan .NET atau Java untuk membuat ditandatangani URLs, dan jika Anda belum memformat ulang kunci pribadi untuk key pair Anda dari format.pem default ke format yang kompatibel dengan.NET atau dengan Java, lakukan sekarang. Untuk informasi selengkapnya, lihat Memformat ulang kunci pribadi (hanya .NET dan Java).
-
Menggabungkan nilai-nilai berikut. Anda dapat menggunakan format dalam contoh URL yang ditandatangani ini.
https://d111111abcdef8.cloudfront.net/image.jpg
?color=red&size=medium&
Expires=1357034400
&Signature=nitfHRCrtziwO2HwPfWw~yYDhUF5EwRunQA-j19DzZrvDh6hQ73lDx~-ar3UocvvRQVw6EkC~GdpGQyyOSKQim-TxAnW7d8F5Kkai9HVx0FIu-5jcQb0UEmatEXAMPLE3ReXySpLSMj0yCd3ZAB4UcBCAqEijkytL6f3fVYNGQI6
&Key-Pair-Id=K2JCJMDEHXQW5F
Hapus semua spasi kosong (termasuk tab dan karakter baris baru). Anda mungkin harus memasukkan karakter escape dalam string di kode aplikasi. Semua nilai memiliki tipe
String
.- 1.
Base URL for the file
-
URL dasar adalah CloudFront URL yang akan Anda gunakan untuk mengakses file jika Anda tidak menggunakan tanda tangan URLs, termasuk parameter string kueri Anda sendiri, jika ada. Pada contoh sebelumnya, URL dasar adalah.
https://d111111abcdef8.cloudfront.net/image.jpg
Untuk informasi selengkapnya tentang format URLs untuk distribusi, lihatKustomisasi format URL untuk file di CloudFront.-
CloudFront URL berikut adalah untuk file gambar dalam distribusi (menggunakan nama CloudFront domain). Perhatikan bahwa
image.jpg
dalamimages
direktori. Jalur menuju file dalam URL harus sesuai dengan alur menuju file pada server HTTP Anda atau pada buket Amazon S3.https://d111111abcdef8.cloudfront.net/images/image.jpg
-
CloudFront URL berikut mencakup string kueri:
https://d111111abcdef8.cloudfront.net/images/image.jpg?size=large
-
Berikut ini CloudFront URLs adalah untuk file gambar dalam distribusi. Keduanya menggunakan nama domain alternatif. Yang kedua mencakup string kueri:
https://www.example.com/images/image.jpg
https://www.example.com/images/image.jpg?color=red
-
CloudFront URL berikut adalah untuk file gambar dalam distribusi yang menggunakan nama domain alternatif dan protokol HTTPS:
https://www.example.com/images/image.jpg
-
- 2.
?
-
?
Ini menunjukkan bahwa parameter kueri mengikuti URL dasar. Sertakan?
bahkan jika Anda tidak menentukan parameter kueri apa pun.catatan
Anda dapat menentukan parameter kueri berikut dalam urutan apa pun.
- 3.
Your query string parameters, if any
&
-
(Opsional) Anda dapat memasukkan parameter string kueri Anda sendiri. Untuk melakukannya, tambahkan ampersand (
&
) di antara masing-masing, seperti.color=red&size=medium
Anda dapat menentukan parameter string kueri dalam urutan apa pun dalam URL.penting
Parameter string kueri Anda tidak dapat diberi nama
Expires
,Signature
, atauKey-Pair-Id
. - 4.
Expires=
date and time in Unix time format (in seconds) and Coordinated Universal Time (UTC)
-
Tanggal dan waktu Anda ingin URL berhenti memungkinkan akses ke file.
Tentukan tanggal dan waktu kedaluwarsa dalam format waktu Unix (dalam detik) dan Waktu Universal Terkoordinasi (UTC). Misalnya, 1 Januari 2013 10:00am UTC mengkonversi ke
1357034400
dalam format waktu Unix, seperti yang ditunjukkan pada contoh di awal topik ini. Untuk menggunakan waktu epoch, gunakan bilangan bulat 32-bit untuk tanggal yang paling lambat2147483647
(19 Januari 2038 pukul 03:14:07 UTC). Untuk informasi tentang UTC, lihat RFC 3339, Tanggal dan Waktu di Internet: Stempel Waktu. - 5.
&Signature=
hashed and signed version of the policy statement
-
Versi yang di-hash, ditandatangani, dan dikodekan base64 dari pernyataan kebijakan JSON. Untuk informasi selengkapnya, lihat Membuat tanda tangan untuk URL yang ditandatangani yang menggunakan kebijakan kalengan.
- 6.
&Key-Pair-Id=
public key ID for the CloudFront public key whose corresponding private key you're using to generate the signature
-
ID untuk kunci CloudFront publik, misalnya,
K2JCJMDEHXQW5F
. ID kunci publik memberi tahu kunci publik CloudFront mana yang akan digunakan untuk memvalidasi URL yang ditandatangani. CloudFront membandingkan informasi dalam tanda tangan dengan informasi dalam pernyataan kebijakan untuk memverifikasi bahwa URL belum dirusak.Kunci publik ini harus dimiliki oleh kelompok kunci yang merupakan signer tepercaya dalam distribusi. Untuk informasi selengkapnya, lihat Tentukan penandatangan yang dapat membuat cookie yang ditandatangani URLs dan ditandatangani.
- 1.
Membuat tanda tangan untuk URL yang ditandatangani yang menggunakan kebijakan kalengan
Untuk membuat tanda tangan untuk URL yang ditandatangani yang menggunakan kebijakan kalengan, selesaikan prosedur berikut.
Topik
Membuat pernyataan kebijakan untuk URL bertanda tangan yang menggunakan kebijakan kalengan
Saat Anda membuat URL yang ditandatangani menggunakan kebijakan terekam, Signature
parameter adalah versi dokumen pernyataan kebijakan yang di- hashed dan ditandatangani. Untuk tanda tangan URLs yang menggunakan kebijakan kalengan, Anda tidak menyertakan pernyataan kebijakan di URL, seperti yang Anda lakukan untuk ditandatangani URLs yang menggunakan kebijakan khusus. Untuk membuat pernyataan kebijakan, lakukan prosedur berikut.
Untuk membuat pernyataan kebijakan untuk URL yang ditandatangani menggunakan kebijakan terekam
-
Susun pernyataan kebijakan dengan menggunakan format JSON berikut dan menggunakan pengkodean karakter UTF-8. Sertakan semua tanda baca dan nilai literal lainnya persis seperti yang ditentukan. Untuk informasi tentang
Resource
danDateLessThan
parameter, lihat Nilai yang Anda sebutkan dalam pernyataan kebijakan untuk URL yang ditandatangani dengan menggunakan kebijakan terekam.{ "Statement": [ { "Resource": "base URL or stream name", "Condition": { "DateLessThan": { "AWS:EpochTime": ending date and time in Unix time format and UTC } } } ] }
-
Hapus semua spasi kosong (termasuk tab dan karakter baris baru) dari pernyataan kebijakan. Anda mungkin harus memasukkan karakter escape dalam string di kode aplikasi.
Nilai yang Anda sebutkan dalam pernyataan kebijakan untuk URL yang ditandatangani dengan menggunakan kebijakan terekam
Ketika Anda membuat pernyataan kebijakan untuk kebijakan terekam, Anda menentukan nilai-nilai berikut.
- Sumber Daya
-
catatan
Anda hanya dapat menentukan satu nilai untuk
Resource
.URL dasar termasuk string kueri Anda, jika ada, tetapi tidak termasuk CloudFront
Expires
,Signature
, danKey-Pair-Id
parameter, misalnya:https://d111111abcdef8.cloudfront.net/images/horizon.jpg?size=large&license=yes
Perhatikan hal berikut:
-
Protokol – Nilai harus dimulai dengan
http://
atauhttps://
. -
Parameter string kueri – Jika Anda tidak memiliki parameter string pencarian, hapus tanda tanya.
-
Nama domain alternatif – Jika Anda menentukan nama domain alternatif (CNAME) di URL, Anda harus menentukan nama domain alternatif saat merujuk file di halaman web atau aplikasi Anda. Jangan menentukan URL Amazon S3 untuk objek tersebut.
-
- DateLessThan
-
Tanggal dan waktu kedaluwarsa untuk URL dalam format waktu Unix (dalam detik) dan Waktu Universal Terkoordinasi (UTC). Misalnya, 1 Januari 2013 10.00 UTC dikonversi menjadi 1357034400 dalam format waktu Unix.
Nilai ini harus cocok dengan nilai
Expires
parameter string kueri dalam URL yang ditandatangani. Jangan melampirkan nilai dalam tanda petik.Untuk informasi selengkapnya, lihat Saat CloudFront memeriksa tanggal dan waktu kedaluwarsa di URL yang ditandatangani.
Contoh pernyataan kebijakan untuk URL yang ditandatangani yang menggunakan kebijakan terekam
Saat Anda menggunakan contoh pernyataan kebijakan berikut dalam URL yang ditandatangani, pengguna dapat mengakses file https://d111111abcdef8.cloudfront.net/horizon.jpg
hingga 1 Januari 2013 pukul 10.00 UTC:
{ "Statement": [ { "Resource": "https://d111111abcdef8.cloudfront.net/horizon.jpg?size=large&license=yes", "Condition": { "DateLessThan": { "AWS:EpochTime": 1357034400 } } } ] }
Membuat tanda tangan untuk URL yang ditandatangani yang menggunakan kebijakan kalengan
Untuk membuat nilai untuk Signature
parameter dalam URL yang ditandatangani, Anda telah dan menandatangani pernyataan kebijakan yang Anda buat di Membuat pernyataan kebijakan untuk URL bertanda tangan yang menggunakan kebijakan kalengan.
Untuk informasi tambahan dan contoh cara membuat, menandatangani, dan mengkode pernyataan kebijakan, lihat:
Opsi 1: Untuk membuat tanda tangan dengan menggunakan kebijakan terekam
-
Gunakan fungsi hash SHA-1 dan RSA untuk me-h dan menandatangani pernyataan kebijakan yang Anda buat dalam prosedur Untuk membuat pernyataan kebijakan untuk URL yang ditandatangani menggunakan kebijakan terekam. Gunakan versi pernyataan kebijakan yang tidak lagi menyertakan spasi kosong.
Untuk kunci privat yang diperlukan oleh fungsi hash, gunakan kunci pribadi yang kunci publiknya berada dalam grup kunci yang dipercaya aktif untuk distribusi.
catatan
Metode yang Anda gunakan untuk men-emuk dan menandatangani pernyataan kebijakan tergantung pada bahasa pemrograman dan platform Anda. Untuk kode sampel, lihat Contoh kode untuk membuat tanda tangan untuk URL yang ditandatangani.
-
Hapus spasi kosong (termasuk tab dan karakter baris baru) dari string hash dan ditandatangani.
-
Base64 mengodekan string menggunakan pengodean base64 MIME. Untuk informasi selengkapnya, lihat Bagian 6.8, Base64 Content-Transfer-Encoding
di RFC 2045, MIME (Ekstensi Surat Internet Serbaguna) Bagian Satu: Format Badan Pesan Internet. -
Ganti karakter yang tidak valid dalam string kueri URL dengan karakter yang valid. Tabel berikut mencantumkan karakter yang tidak valid dan valid.
Ganti karakter tidak valid ini Dengan karakter valid ini +
- (tanda hubung)
=
_ (garis bawah)
/
~ (tilde)
-
Tambahkan nilai yang dihasilkan ke URL Anda yang ditandatangani setelah
&Signature=
, dan kembali ke Untuk membuat URL yang ditandatangani menggunakan kebijakan terekam untuk menyelesaikan penyatuan bagian URL yang Anda tanda tangani.