- Dikirim
- 10 Agustus 2026 pukul 18.04 UTC
- Penulis
- Kamo
- Commit
- 987756a
GET / api / calendar / kalender mengambil UserId sebagai parameter permintaan, jadi berubah angka dalam URL membaca kalender siapa pun - dan karena kalender dilakukan tidak ada organisasi sama sekali, di setiap penyewa. Lebih buruk lagi, tidak ada mutasi diperiksa apapun: POST terikat seluruh UserCalendar sehingga penelepon memilih pemiliknya, dan PUT dan DELETE pada kedua kalender dan peristiwa diselesaikan oleh id dengan tidak tes kepemilikan apapun. Setiap anggota bisa mengedit atau menghapus siapa pun. Organisasi dan anggota sekarang keduanya berasal dari sesi yang ditetapkan. Anggota CalendarService memegang jalur anggota-scoped. CalendarService tetap hak-level facade CalDAV dan eksternal sync share, karena mereka mengotorisasi akun daripada keanggotaan - benar-benar berbeda ruang lingkup, bukan pengawasan. Kalender organisasi dapat dibaca oleh setiap anggota dan hanya dapat ditulisi dengan percakapan. Penolakan adalah 403, bukan 404: anggota dapat lihat kalender, sehingga berpura-pura tidak ada akan menjadi kebohongan klien tidak bisa bertindak. Seorang klien juga tidak dapat mempromosikan kalender sendiri dengan mengirim IsOrganisme Kalender - bahwa bendera diabaikan pada pembuatan. Payloads menjadi DTOs. Anggota entitas, organisasi dan pengguna Asosiasi yang malas, sehingga Jackson diberikan mereka sebagai null dan klien bisa tidak memberitahu yang kalender diadakan. Acara DTO membawa isPrivate dan Apakah Recurring meskipun tidak ada di sini bervariasi pada mereka: Modal mengikat keduanya switches, and a missing value turns a controlled input uncontrolled. lists Events juga menerima startDate / endDate. Peramban selalu mengirimkannya terhadap tanda tangan yang terikat hanya awal / akhir, jadi setiap permintaan tiba dengan Tidak ada jendela sama sekali.