Bagikan melalui


Sewa Berbagi

Operasi ini Lease Share menetapkan dan mengelola kunci pada berbagi file Azure atau salinan bayangan berbagi. API ini didukung penuh, tetapi ini adalah API manajemen warisan. Sebagai gantinya, gunakan Berbagi File - Sewa, yang disediakan oleh penyedia sumber daya penyimpanan (Microsoft.Storage). Untuk mempelajari selengkapnya tentang berinteraksi secara terprogram dengan sumber daya dengan FileShare menggunakan penyedia sumber daya penyimpanan, lihat Operasi di FileShares.

Durasi penguncian bisa 15 hingga 60 detik, atau bisa tak terbatas. Anda dapat memanggil Lease Share operasi dalam salah satu mode berikut:

  • Acquire: Untuk meminta sewa baru.
  • Renew: Untuk memperbarui sewa yang ada.
  • Change: Untuk mengubah ID sewa yang ada.
  • Release: Untuk membebaskan sewa jika tidak lagi diperlukan, sehingga klien lain dapat segera memperoleh sewa terhadap berbagi file.
  • Break: Untuk mengakhiri sewa, tetapi pastikan bahwa klien lain tidak dapat memperoleh sewa baru sampai periode sewa saat ini kedaluwarsa.

Catatan

Operasi Lease Share ini tersedia dalam versi 2020-02-10 dan yang lebih baru.

Ketersediaan protokol

Mengaktifkan protokol berbagi file Tersedia
SMB Ya
NFS Ya

Minta

Anda dapat membuat Lease Share permintaan sebagai berikut. HTTPS disarankan. Ganti myaccount dengan nama akun penyimpanan Anda.

Metode Meminta URI Versi HTTP
PUT https://myaccount.file.core.windows.net/myshare?comp=lease&restype=share HTTP/1.1
PUT https://myaccount.file.core.windows.net/myshare?comp=lease&sharesnapshot=<DateTime>&restype=share HTTP/1.1

Parameter URI

Anda dapat menentukan parameter tambahan berikut pada URI permintaan.

Parameter Deskripsi
timeout Opsional. Parameter timeout dinyatakan dalam hitung detik. Untuk informasi selengkapnya, lihat Mengatur batas waktu untuk operasi Azure Files.

Header permintaan

Tabel berikut ini menjelaskan header permintaan yang diperlukan dan opsional.

Meminta kop Deskripsi
Authorization Wajib diisi. Menentukan skema otorisasi, nama akun, dan tanda tangan. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
Date atau x-ms-date Wajib diisi. Menentukan Waktu Universal Terkoordinasi (UTC) untuk permintaan tersebut. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
x-ms-version Opsional. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan versi untuk layanan Azure Storage.
x-ms-lease-id: <ID> Diperlukan untuk memperbarui, mengubah, atau melepaskan sewa.

Anda dapat menentukan nilai x-ms-lease-id dalam format string GUID yang valid. Lihat Konstruktor Guid (String) untuk daftar format yang valid.
x-ms-lease-action: <action> acquire: Meminta sewa baru. Jika berbagi file tidak memiliki sewa aktif, Azure Files membuat sewa pada berbagi file dan mengembalikan ID sewa baru. Jika berbagi file memiliki sewa aktif, Anda hanya dapat meminta sewa baru dengan menggunakan ID sewa aktif. Namun, Anda dapat menentukan yang baru x-ms-lease duration, termasuk yang negatif (-1) untuk sewa yang tidak pernah kedaluwarsa.

renew: Memperbarui sewa. Anda dapat memperbarui sewa jika ID sewa yang ditentukan pada permintaan cocok dengan yang terkait dengan berbagi file. Perhatikan bahwa Anda dapat memperbarui sewa meskipun telah kedaluwarsa, selama berbagi file belum disewa lagi sejak kedaluwarsa sewa tersebut. Saat Anda memperbarui sewa, jam durasi sewa direset.

change: Ubah ID sewa sewa aktif. change harus menyertakan ID sewa saat ini di x-ms-lease-id, dan ID sewa baru di x-ms-proposed-lease-id.

release: Lepaskan sewa. Anda dapat merilis sewa jika ID sewa yang ditentukan pada permintaan cocok dengan yang terkait dengan berbagi file. Melepaskan sewa memungkinkan klien lain untuk segera memperoleh sewa untuk berbagi file, segera setelah rilis selesai.

break: Putuskan sewa, jika berbagi file memiliki sewa aktif. Setelah sewa rusak, sewa tidak dapat diperpanjang. Setiap permintaan yang diotorisasi dapat melanggar sewa. Permintaan tidak diperlukan untuk menentukan ID sewa yang cocok. Ketika sewa rusak, periode jeda sewa diizinkan untuk berlalu, dan break dan merupakan release satu-satunya operasi yang dapat Anda lakukan pada berbagi file selama waktu ini. Ketika sewa berhasil rusak, respons menunjukkan interval dalam hitungan detik sampai sewa baru dapat diperoleh.

Sewa yang telah rusak juga dapat dilepaskan. Klien dapat segera memperoleh sewa berbagi file yang telah dirilis.
x-ms-lease-break-period: N Opsional. break Untuk operasi, ini adalah durasi yang diusulkan, sewa harus dilanjutkan sebelum rusak, dalam detik, antara 0 dan 60. Periode istirahat ini hanya digunakan jika lebih pendek dari waktu yang tersisa pada sewa. Jika lebih lama, waktu yang tersisa pada sewa digunakan. Sewa baru tidak tersedia sebelum periode istirahat berakhir, tetapi sewa dapat ditahan lebih lama dari periode istirahat. Jika header ini tidak muncul dengan break operasi, sewa durasi tetap berhenti setelah periode sewa yang tersisa berlalu, dan sewa tak terbatas segera berhenti.
x-ms-lease-duration: -1 Diperlukan untuk acquire. Menentukan durasi sewa, dalam detik, atau negatif satu (-1) untuk sewa yang tidak pernah kedaluwarsa. Sewa yang tidak terbatas bisa antara 15 dan 60 detik. Durasi sewa tidak dapat diubah dengan menggunakan renew atau change.
x-ms-proposed-lease-id: <ID> Opsional untuk acquire, dan diperlukan untuk change. ID sewa yang diusulkan, dalam format string GUID. Azure Blob Storage mengembalikan 400 (Invalid request) jika ID sewa yang diusulkan tidak dalam format yang benar. Lihat Konstruktor Guid (String) untuk daftar format yang valid.
Origin Pilihan. Menentukan asal dari mana permintaan dikeluarkan. Kehadiran header ini menghasilkan header berbagi sumber daya lintas asal (CORS) pada respons. Lihat dukungan CORS untuk layanan Penyimpanan untuk detailnya.
x-ms-client-request-id Pilihan. Menyediakan nilai buram yang dihasilkan klien dengan batas karakter 1 kibibyte (KiB) yang dicatat dalam log saat pengelogan dikonfigurasi. Kami sangat menyarankan Anda menggunakan header ini untuk menghubungkan aktivitas sisi klien dengan permintaan yang diterima server. Untuk informasi selengkapnya, lihat Memantau Azure Files.

Isi permintaan

Tidak ada.

Permintaan sampel

Contoh permintaan berikut menunjukkan cara memperoleh sewa:

Request Syntax:  
PUT https://myaccount.file.core.windows.net/myshare?restype=share&comp=lease HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10  
x-ms-lease-action: acquire  
x-ms-lease-duration: -1  
x-ms-proposed-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5  
x-ms-date: Thu, 26 Jan 2012 23:30:18 GMT  
Authorization: SharedKey testaccount1:esSKMOYdK4o+nGTuTyeOLBI+xqnqi6aBmiW4XI699+o=  

Respons

Respons mencakup kode status HTTP dan sekumpulan header respons.

Kode status

Kode status keberhasilan yang dikembalikan untuk operasi sewa adalah sebagai berikut:

  • Acquire: Operasi yang berhasil mengembalikan kode status 201 (Dibuat).
  • Renew: Operasi yang berhasil mengembalikan kode status 200 (OK).
  • Change: Operasi yang berhasil mengembalikan kode status 200 (OK).
  • Release: Operasi yang berhasil mengembalikan kode status 200 (OK).
  • Break: Operasi yang berhasil mengembalikan kode status 202 (Diterima).

Untuk informasi tentang kode status, lihat Status dan kode kesalahan.

Header respons

Respons untuk operasi ini mencakup header berikut. Respons juga dapat mencakup header HTTP standar tambahan. Semua header standar sesuai dengan spesifikasi protokol HTTP/1.1.

Sintaks Deskripsi
ETag ETag untuk berbagi file.
Last-Modified Mengembalikan tanggal dan waktu berbagi file terakhir diubah. Untuk informasi selengkapnya, lihat Representasi nilai tanggal-waktu di header.

Setiap operasi yang memodifikasi berbagi file, atau properti atau metadatanya, memperbarui waktu terakhir diubah. Ini termasuk mengatur izin berbagi file. Operasi pada blob tidak memengaruhi waktu terakhir yang dimodifikasi dari berbagi file.
x-ms-lease-id: <id> Saat Anda meminta sewa, Azure Files mengembalikan ID sewa unik. Saat sewa aktif, Anda harus menyertakan ID sewa dengan permintaan apa pun untuk menghapus berbagi file, atau memperbarui, mengubah, atau melepaskan sewa.

Operasi perpanjangan yang berhasil juga mengembalikan ID sewa untuk sewa aktif.
x-ms-lease-time: seconds Perkiraan waktu yang tersisa dalam periode sewa, dalam detik. Header ini dikembalikan hanya untuk permintaan yang berhasil untuk memutuskan sewa. Jika istirahat segera dikembalikan 0 .
x-ms-request-id Secara unik mengidentifikasi permintaan yang dibuat dan dapat digunakan untuk memecahkan masalah permintaan. Untuk informasi selengkapnya, lihat Pemecahan masalah operasi API.
x-ms-version Menunjukkan versi FileREST API yang digunakan untuk menjalankan permintaan.
Date Nilai tanggal/waktu UTC yang menunjukkan waktu di mana respons dimulai. Layanan menghasilkan nilai ini.
Access-Control-Allow-Origin Dikembalikan jika permintaan menyertakan Origin header, dan CORS diaktifkan dengan aturan yang cocok. Header ini mengembalikan nilai header permintaan asal jika ada kecocokan.
Access-Control-Expose-Headers Dikembalikan jika permintaan menyertakan Origin header, dan CORS diaktifkan dengan aturan yang cocok. Mengembalikan daftar header respons yang akan diekspos ke klien atau penerbit permintaan.
Access-Control-Allow-Credentials Dikembalikan jika permintaan menyertakan Origin header, dan CORS diaktifkan dengan aturan yang cocok yang tidak mengizinkan semua asal. Header ini diatur ke true.
x-ms-client-request-id Dapat digunakan untuk memecahkan masalah permintaan dan respons yang sesuai. Nilai header ini sama dengan nilai x-ms-client-request-id header, jika ada dalam permintaan. Nilainya paling banyak 1.024 karakter ASCII yang terlihat. x-ms-client-request-id Jika header tidak ada dalam permintaan, header tidak akan ada dalam respons.

Isi Respons

Tidak ada.

Respons sampel

Berikut ini adalah respons sampel untuk permintaan untuk memperoleh sewa:

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  
x-ms-request-id: cc6b209a-b593-4be1-a38a-dde7c106f402  
x-ms-version: 2020-02-10  
x-ms-lease-id: 1f812371-a41d-49e6-b123-f4b542e851c5  
Date: Thu, 26 Jan 2012 23:30:18 GMT  

Authorization

Hanya pemilik akun yang dapat memanggil operasi ini.

Keterangan

Sewa pada berbagi file menyediakan akses penghapusan eksklusif ke berbagi file. Dapatkan operasi berbagi file akan berhasil pada berbagi file sewaan, tanpa menyertakan ID sewa. Mengatur operasi berbagi file akan memerlukan ID sewa berbagi file. Jika ID sewa tidak disertakan pada operasi berbagi file yang ditetapkan, operasi gagal dengan 412 (Prasyarat gagal). Sewa diberikan selama durasi yang ditentukan ketika sewa diperoleh, yang bisa dari 15 hingga 60 detik, atau durasi tak terbatas.

Ketika klien memperoleh sewa, ID sewa dikembalikan. Azure Files menghasilkan ID sewa jika tidak ditentukan dalam permintaan peroleh. Klien dapat menggunakan ID sewa ini untuk memperbarui sewa, mengubah ID sewanya, atau melepaskan sewa. Diagram berikut menunjukkan lima status sewa, dan perintah atau peristiwa yang menyebabkan perubahan status sewa.

Diagram status sewa berbagi file, dan pemicu perubahan status.

Sewa dapat berada di salah satu status ini, berdasarkan apakah sewa dikunci atau tidak terkunci, dan apakah sewa dapat diperpanjang dalam keadaan tersebut. Tindakan sewa yang ditunjukkan dalam diagram sebelumnya menyebabkan transisi status.

Status perpanjangan Sewa terkunci Sewa tidak terkunci
Sewa yang dapat diperbarui Disewakan Kedaluwarsa
Sewa yang tidak dapat diperbarui Melanggar Rusak, Tersedia
  • Available, sewa tidak terkunci dan dapat diperoleh. Tindakan yang diizinkan: acquire.
  • Leased, sewa dikunci. Tindakan yang diizinkan: acquire (hanya ID sewa yang sama), renew, , releasechange, dan break.
  • Expired, durasi sewa telah kedaluwarsa. Tindakan yang diizinkan: acquire, , releaserenew, dan break.
  • Breaking, sewa telah rusak, tetapi sewa akan terus dikunci sampai periode istirahat telah kedaluwarsa. Tindakan yang diizinkan: release dan break.
  • Broken, sewa telah rusak, dan periode istirahat telah kedaluwarsa. Tindakan yang diizinkan: acquire, release, dan break.

Azure Files mempertahankan ID sewa setelah sewa berbagi file kedaluwarsa. Klien dapat memperbarui atau merilis sewa dengan menggunakan ID sewa yang kedaluwarsa. Jika klien mencoba memperbarui atau merilis sewa yang kedaluwarsa dengan ID sewa mereka sebelumnya, dan permintaan gagal, itu berarti bahwa berbagi file disewa lagi atau dihapus sejak sewa mereka terakhir aktif. Jika sewa kedaluwarsa daripada dirilis secara eksplisit, klien mungkin perlu menunggu hingga satu menit sebelum sewa baru dapat diperoleh untuk berbagi file. Namun, klien dapat segera memperbarui sewa dengan ID sewa yang kedaluwarsa.

Properti berbagi Last-Modified-Time file tidak diperbarui oleh panggilan ke Lease Share.

Tabel berikut menunjukkan hasil tindakan pada kontainer dengan sewa di berbagai status sewa. Huruf (A), (B), dan (C) mewakili ID sewa, dan (X) mewakili ID sewa yang dihasilkan oleh Azure Files.

Hasil upaya penggunaan pada berbagi berdasarkan status sewa

Tindakan Tersedia Sewaan (A) Melanggar (A) Rusak (A) Kedaluwarsa (A)
Hapus dengan (A) Gagal (412) Leased (A), penghapusan berhasil Pemutusan (A), penghapusan berhasil Gagal (412) Gagal (412)
Hapus dengan (B) Gagal (412) Gagal (409) Gagal (412) Gagal (412) Gagal (412)
Hapus, tidak ada sewa yang ditentukan Tersedia, penghapusan berhasil Gagal (412) Gagal (412) Tersedia, penghapusan berhasil Tersedia, penghapusan berhasil
Operasi lain dengan (A) Gagal (412) Leased (A), operasi berhasil Melanggar (A), operasi berhasil Gagal (412) Gagal (412)
Operasi lain dengan (B) Gagal (412) Gagal (409) Gagal (409) Gagal (412) Gagal (412)
Operasi, tidak ada sewa yang ditentukan Tersedia, operasi berhasil Leased (A), operasi berhasil Melanggar (A), operasi berhasil Rusak (A), operasi berhasil Kedaluwarsa (A), operasi berhasil

Hasil operasi sewa pada saham berdasarkan status sewa

Tindakan Tersedia Sewaan (A) Melanggar (A) Rusak (A) Kedaluwarsa (A)
Acquire, tidak ada ID sewa yang diusulkan Sewaan (X) Gagal (409) Gagal (409) Sewaan (X) Sewaan (X)
Acquire (A) Sewaan (A) Sewa (A), durasi baru Gagal (409) Sewaan (A) Sewaan (A)
Acquire (B) Sewa (B) Gagal (409) Gagal (409) Sewa (B) Sewa (B)
Break, period=0 Gagal (409) Rusak (A) Rusak (A) Rusak (A) Rusak (A)
Break, periode>0 Gagal (409) Melanggar (A) Melanggar (A) Rusak (A) Rusak (A)
Change, (A) ke (B) Gagal (409) Sewa (B) Gagal (409) Gagal (409) Gagal (409)
Change, (B) ke (A) Gagal (409) Sewaan (A) Gagal (409) Gagal (409) Gagal (409)
Change, (B) ke (C) Gagal (409) Gagal (409) Gagal (409) Gagal (409) Gagal (409)
Renew (A) Gagal (409) Reset jam sewaan (A), kedaluwarsa Gagal (409) Gagal (409) Sewaan (A)
Renew (B) Gagal (409) Gagal (409) Gagal (409) Gagal (409) Gagal (409)
Release (A) Gagal (409) Tersedia Tersedia Tersedia Tersedia
Release (B) Gagal (409) Gagal (409) Gagal (409) Gagal (409) Gagal (409)
Durasi kedaluwarsa Tersedia Kedaluwarsa (A) Rusak (A) Rusak (A) Kedaluwarsa (A)