Odoo da foydalanuvchiga huquqlar guruhlar orqali beriladi. Ruxsat yozuvi qaysi guruh, qaysi maʼlumot turi ustida, qaysi amallarni va qaysi yozuvlarda bajarishini aytadi. Odoo 20.0 da ikkita alohida mexanizm bittaga birlashtirildi: yozuv qoidalari olib tashlanib, shart ruxsatning oʻziga qoʻshildi. Shuning uchun eski qoʻllanmalardagi maslahatlar 20.0 ga toʻliq mos kelmaydi.
Mebel korxonasida ikki sotuv menejeri ishlaydi deylik. Har biri faqat oʻz mijozlarining buyurtmalarini koʻrishi kerak, rahbar esa hammasini koʻrishi lozim. Bu gipotetik holat, lekin Odoo ruxsat tizimi aynan shunday savollarga javob berish uchun yaratilgan va uch narsaga tayanadi: foydalanuvchi, guruh va ruxsat yozuvi.
Rol, guruh va ruxsat: uch qatlam
Foydalanuvchi qoʻshilganda unga rol beriladi. Rol umumiy darajani belgilaydi, aniq huquqlarni esa guruhlar aniqlaydi, ichki rollar esa uchta: oddiy foydalanuvchi, administrator va yengil foydalanuvchi. Yengil foydalanuvchi shaxsiy maʼlumotlarni yuritish, taʼtil soʻrash, Planning ilovasidan foydalanish va omborda shtrix-kod bilan ishlash kabi cheklangan imkoniyatlarga ega, sotuv, xarid, loyiha va buxgalteriyaga esa kira olmaydi. Unga bundan ortiq huquq berilsa, rol avtomatik ravishda oddiy foydalanuvchiga koʻtariladi.
Mijoz yoki yetkazib beruvchi portal foydalanuvchisi boʻladi va faqat oʻz maʼlumotiga portal orqali kiradi. Portal huquqi esa Kontaktlar ilovasida kerakli yozuvni ochib, alohida tugmani bosish bilan beriladi.
Har ilova uchun foydalanuvchi ekranida daraja tanlanadi: hech narsa, faqat oʻz hujjatlari, barcha hujjatlar yoki administrator. Bu tanlov ortida guruhlar turadi. Ayrim guruhlar boshqa guruhlarni oʻziga tortadi: masalan, sotuv administratori tanlansa, tayyor javoblar administratori ham avtomatik qoʻshiladi. Bunday bogʻliq guruhlarni faqat dasturchi rejimida, foydalanuvchi formasidagi texnik huquqlar yorligʻida, alohida roʻyxat sifatida koʻrish mumkin.
Guruh formasida nimalar bor
Guruhni yaratish yoki tahrirlash uchun dasturchi rejimini yoqib, Sozlamalar ilovasidagi Guruhlar menyusiga kirish kerak. Forma bir necha yorliqdan iborat. Foydalanuvchilar yorligʻi aʼzolarni koʻrsatadi, qoʻshilgan guruhlar yorligʻi esa shu guruh bilan birga avtomatik beriladigan guruhlarni sanaydi. Menyular yorligʻi guruh qaysi menyularni, koʻrinishlar yorligʻi esa qaysi ekran koʻrinishlarini koʻrishini belgilaydi. Ruxsatlar yorligʻida maʼlumot turi va amallar tanlanadi.
Hujjatdagi misolda sotuv administratori guruhining qoʻshilgan guruhlari orasida veb-saytning cheklangan muharriri guruhi bor, demak sotuv administratoriga qoʻshilgan har kim cheklangan muharrir huquqini ham oladi. Hujjat yana bir qoidani alohida taʼkidlaydi: har oʻzgarishdan keyin huquq aynan kerakli odamlarga tegayotganini tekshirish shart.
Guruh formasida avtomatik chiqish qoidalari ham bor. Harakatsizlik uchun ekranni qulflash, seans uchun esa majburiy chiqish sozlanadi, xohlansa ikki bosqichli tasdiq bilan birga. Bu yorliq faqat tegishli qoʻshimcha modul oʻrnatilgandan keyin paydo boʻladi, shuning uchun ayrim bazalarda uni umuman koʻrmaysiz.
Ruxsat yozuvi nimadan iborat
Odoo 20.0 da bitta ruxsat yozuvi toʻrt narsani aytadi: qaysi maʼlumot turi, qaysi guruh, qaysi amallar va ixtiyoriy shart. Amallar toʻrtta: yaratish, oʻqish, yangilash va oʻchirish. Hujjat ularni harflar bilan qisqa yozadi va istalgan kombinatsiyaga ruxsat beradi.
| Maydon | Nimani bildiradi | Gipotetik misol |
|---|---|---|
| Maʼlumot turi | Qaysi turdagi yozuvlarga tegishli | Sotuv buyurtmasi |
| Guruh | Kimga beriladi; boʻsh boʻlsa cheklov boʻladi | Sotuv menejerlari |
| Amal | Yaratish, oʻqish, yangilash, oʻchirish | Oʻqish va yangilash |
| Shart | Qaysi yozuvlarga tegishi; boʻsh boʻlsa hammasiga | Faqat oʻzining buyurtmalari |
Ruxsatlar qoʻshiladi. Foydalanuvchi A va B guruhlarida boʻlsin: A oʻqish va yaratishni beradi, B esa yangilashni. Natijada foydalanuvchi uchala amalni bajara oladi. Hech bir guruh amalni bermasa, ruxsat yoʻq. Shuning uchun yangi maʼlumot turi qoʻshilganda unga ruxsat yozuvi berilmasa, hech kim unga kira olmaydi.
Shart qoʻshilsa, ruxsat yozuvlar boʻyicha ishlaydi
Shart yozilmagan ruxsat maʼlumot turining barcha yozuviga tegadi, shart qoʻyilsa esa amal faqat unga mos yozuvlarda mumkin boʻladi. Foydalanuvchi yozuv ustida amal bajara oladi, agar guruhlaridan birida shu amalga ruxsat bor va yozuv ruxsatning shartini qanoatlantirsa.
Haqiqiy misol Odoo ning oʻz maʼlumotlarida bor. Ichki foydalanuvchilar ochiq deb belgilangan biriktirilgan fayllarni oʻqiy oladi, va buning uchun alohida shartli ruxsat yozuvi mavjud.
Endi menejerlar uchun hisob-kitob qilaylik. Gipotetik holat: ikki menejerning har birida 30 tadan, jami 60 ta buyurtma bor. «Hammasini oʻqish» ruxsati har menejerga 60 ta yozuvni ochadi, «oʻzining buyurtmalari» sharti qoʻyilsa esa har biri faqat oʻz 30 tasini koʻradi. Rahbarlar guruhi shartsiz ruxsat olsa, rahbar 60 tasini koʻradi. Menejer ikkala guruhda ham boʻlsa, ruxsatlar birlashadi va u ham 60 tasini koʻradi, shuning uchun menejerni rahbarlar guruhiga tasodifan qoʻshib yuborish uning koʻrish doirasini darrov kengaytiradi.
Tekshirish tartibini shunday tasavvur qilish mumkin. Bu tahririyatning hujjatdan chiqargan sxemasi:
- Foydalanuvchining barcha guruhlari, qoʻshilganlari bilan birga, aniqlanadi.
- Shu guruhlarning birida kerakli maʼlumot turi va amal uchun ruxsat boʻlishi shart.
- Yozuv shu ruxsatlardan kamida bittasining shartiga mos kelishi kerak.
- Yozuv barcha cheklovlarning shartiga ham mos kelishi kerak.
Cheklov: guruhsiz yozuv hammaga taʼsir qiladi
Guruh koʻrsatilmagan yozuv boshqacha ishlaydi. U ruxsat emas, cheklov hisoblanadi va barcha foydalanuvchilarga tatbiq etiladi, hujjatda esa bunday qoida global qoida deb ham ataladi.
Ikki turdagi yozuv turlicha birikadi. Guruh ruxsatlari birlashadi, yaʼni bittasi mos kelsa yetadi, cheklovlar esa kesishadi va hammasi bajarilishi shart. Demak, yangi cheklov kirishni faqat toraytiradi, guruh ruxsati esa kirishni kengaytiradi, ammo cheklov chizgan chegaradan hech qachon chiqib keta olmaydi. Dastur kodidagi izoh ham shuni aytadi: ruxsatlar YOKI bilan, cheklovlar VA bilan qoʻshiladi.
| Qatlam | Qanday birikadi | Gipotetik misol |
|---|---|---|
| Guruh ruxsatlari | Birlashadi: bittasi yetadi | Oʻzining buyurtmalari YOKI jamoa buyurtmalari |
| Cheklovlar | Kesishadi: hammasi shart | Joriy kompaniya VA joriy yil |
| Yakuniy natija | Ikkala qatlam ham bajarilishi kerak | Oʻzining YOKI jamoa buyurtmasi, VA joriy kompaniya, VA joriy yil |
Hujjat ogohlantiradi: bir nechta cheklov yaratish xavfli, chunki ular bir-biriga mos kelmasa, hamma uchun kirish yopilib qoladi. Masalan, bir cheklov faqat 2026 yilgi, ikkinchisi faqat 2025 yilgi yozuvlarni qoldirsa, hech bir yozuv ikkalasiga mos kelmaydi. Natijada hech kim hech narsani koʻrmaydi.
Odoo 19 dan 20 ga: ikki mexanizm bitta boʻldi
19.0 hujjati ikkita mexanizmni tasvirlaydi. Birinchisi butun maʼlumot turiga kirishni beradi, ikkinchisi, yozuv qoidalari, yozuvlarni birma-bir tekshiradi. Yozuv qoidalari odatda ruxsat beradi: umumiy ruxsat bor va hech qanday qoida qoʻllanmasa, kirish ochiq. Odoo 20 yangiliklarida buning soddalashgani aytiladi: yozuv qoidalari olib tashlandi, shart esa ruxsatning oʻziga qoʻshildi.
Kod ham buni tasdiqlaydi: asosiy modul ombori 19.0 tarmogʻida yozuv qoidalari uchun alohida model fayli bor edi, 20.0 da esa uning oʻrnida yangi ruxsat fayli turibdi.
| Savol | Odoo 19.0 | Odoo 20.0 |
|---|---|---|
| Nechta mexanizm | Ikkita: ruxsat va yozuv qoidasi | Bitta: shartli ruxsat yozuvi |
| Shart qayerda yoziladi | Yozuv qoidasida | Ruxsatning oʻzida |
| Hech narsa mos kelmasa | Umumiy ruxsat yoʻq boʻlsa kirish yoʻq | Mos ruxsat yoʻq boʻlsa kirish yoʻq |
| Hammaga taʼsir qiladigan qoida | Global qoida | Guruhsiz yozuv, yaʼni cheklov |
| Guruhni ilovaga bogʻlash | Modul kategoriyasi orqali | Imtiyoz orqali |
| Qoʻshilgan guruhlar | Ularni alohida olib tashlash mumkin | Foydalanuvchi ularga bilvosita kiradi |
Bu oʻzgarishning amaliy tomoni bor. Eski versiyadan olingan maslahat yoki maxsus yozuv qoidasi 20.0 da oʻz nomi bilan topilmasligi mumkin. Maxsus qoidalar yangilash vaqtida nimaga aylanishini hujjatlardan topa olmadik; bu haqda pastdagi izohga qarang. Shuning uchun maxsus qoidalari bor bazani avval sinov nusxasida yangilab, kim nimani koʻrayotganini solishtirish kerak.
Standart ruxsatni oʻzgartirish: asl yozuv saqlanadi
Odoo tayyor ruxsat yozuvini joyida tahrirlamaydi. Tahrirlash buyrugʻi nusxa yaratadi, asl yozuvni faolsizlantiradi va nusxani ochadi. Asl yozuv oʻchmaydi, faqat ishlatilmay qoladi, chunki tizim ruxsatlarni hisoblaganda faqat faol yozuvlarni hisobga oladi va nofaollarini eʼtiborsiz qoldiradi.
Xato chiqqanda Odoo qaysi guruhlar bu amalga ruxsat berishini koʻrsatadi. Batafsil roʻyxat faqat ichki foydalanuvchilarga va faqat dasturchi rejimida chiqadi, koʻp kompaniyali bazada esa xabar kompaniyani almashtirishni ham taklif qilishi mumkin.
Maydon darajasidagi himoya
Ruxsat butun yozuvga tegishi shart emas. Alohida maydonni ham guruhlar roʻyxatiga bogʻlash mumkin. Foydalanuvchi shu guruhlarda boʻlmasa, maydon uning ekran koʻrinishlaridan olib tashlanadi, maydonni aniq oʻqish yoki yozishga urinish esa xatoga olib keladi. Gipotetik misol: xodimning maosh maydoni faqat buxgalteriya guruhiga koʻrinadi, boshqalar esa shu xodimning yozuvini ochsa ham maydonni umuman koʻrmaydi va uning borligini sezmaydi.
Xatolar: kirishni yopib qoʻyish va tekshirmaslik
Eng xavfli xato — administratorning oʻzidan huquq berish imkonini olib qoʻyish. Hujjat bunday holatni «impotent admin» deb ataydi: bazada huquqni oʻzgartira oladigan birorta foydalanuvchi qolmaydi. Odoo huquqlarga tegishdan oldin tahlilchi yoki qoʻllab-quvvatlash xizmati bilan maslahatlashishni tavsiya qiladi.
Ikkinchi nozik joy — superuser rejimi. U ruxsat va qoidalarni chetlab oʻtadi, unga faqat sozlamalar boʻyicha administrator huquqi borlar kira oladi. Rejimdan chiqqach, baza yopilib qolishi ham mumkin.
Uchinchi xato — tekshirmaslik. Odoo 20 dan foydalanuvchi guruhlaridagi oʻzgarishlar foydalanuvchining chatterida ham yoziladi. Bu kim, qachon, nimani oʻzgartirganini topishni osonlashtiradi, lekin sinovni almashtirmaydi.
Dasturchilar uchun alohida qoida bor. Ommaviy usulni tashqaridan istalgan parametr bilan chaqirish mumkin, ruxsat esa faqat yozuv bilan ishlaganda tekshiriladi. Demak, huquqni faqat tugmani yashirish bilan himoyalab boʻlmaydi.
Amalda nima qilish mumkin
Quyidagi qadamlar hujjat qoidalaridan chiqarilgan tahririyat xulosasidir.
- Avval tayyor rol va ilova darajasidan foydalaning. Koʻp hollarda shu yetadi.
- Shartli ruxsat yaratishdan oldin yozib chiqing: kim, qaysi maʼlumot turi, qaysi amal, qaysi yozuvlar.
- Cheklovlarni kam saqlang. Har biri hamma uchun amal qiladi va ular bir-biri bilan kesishadi.
- Oʻzgartirishni ishchi bazada emas, nusxada tekshiring va oddiy foydalanuvchi sifatida kirib koʻring.
- Administrator huquqi bor ikkinchi ishonchli foydalanuvchini saqlang, shunda kirish yopilib qolmaydi.
Odoo da ruxsatlar guruhlar orqali qoʻshiladi, cheklovlar esa bir-biri bilan kesishadi. 20.0 da shart ruxsatning oʻziga koʻchgani uchun yozuv qoidalari haqidagi eski maslahatlar eskirgan. Har oʻzgarishdan keyin eng oddiy foydalanuvchi nimani koʻrayotganini tekshirish kerak.
Asosiy atamalar
- Rol
- Foydalanuvchining umumiy darajasi: oddiy foydalanuvchi, administrator, yengil foydalanuvchi yoki portal foydalanuvchisi.
- Guruh
- Bir xil huquqlarga ega foydalanuvchilar toʻplami. Huquq alohida odamga emas, guruhga beriladi.
- Ruxsat yozuvi
- Bitta guruhga bitta maʼlumot turi ustida qaysi amallar ochilganini aytadigan yozuv.
- Amal
- Maʼlumot ustidagi toʻrt harakatdan biri: yaratish, oʻqish, yangilash yoki oʻchirish.
- Shart
- Ruxsat qaysi yozuvlarga tegishini belgilaydigan filtr. Masalan, faqat oʻzingizga biriktirilgan buyurtmalar.
- Cheklov
- Guruhsiz yozilgan ruxsat yozuvi. U barcha foydalanuvchilarga amal qiladi va kirishni faqat toraytiradi.
- Yozuv qoidalari
- Eski versiyalardagi alohida mexanizm: ruxsat berilgan maʼlumotning qaysi qatorlari koʻrinishini belgilar edi.
- Qoʻshilgan guruh
- Boshqa guruh tanlanganda foydalanuvchiga avtomatik qoʻshiladigan guruh.
- Portal foydalanuvchisi
- Kompaniyadan tashqari odam, masalan mijoz yoki yetkazib beruvchi. U faqat oʻz maʼlumotini koʻradi.
- Superuser rejimi
- Ruxsat va qoidalarni chetlab oʻtadigan maxsus rejim. Undan juda ehtiyotkorlik bilan foydalanish kerak.
Manbalar
Maqola quyidagi manbalarga tayanadi:
- Odoo S.A., Access rights, Odoo 20.0 foydalanuvchi hujjatlari. https://www.odoo.com/documentation/20.0/applications/general/users/access_rights.html (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., Security in Odoo, Odoo 20.0 dasturchi hujjatlari. https://www.odoo.com/documentation/20.0/developer/reference/backend/security.html (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., ruxsat yozuvlari modelining manba kodi, odoo/odoo omborining 20.0 tarmogʻi. https://github.com/odoo/odoo/blob/20.0/odoo/addons/base/models/ir_access.py (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., Odoo 20 Release Notes, 2026 sentyabr, General va Technical boʻlimlari. https://www.odoo.com/odoo-20-release-notes (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., Server framework 101, Chapter 4: Security - A Brief Introduction, Odoo 20.0 hujjatlari. https://www.odoo.com/documentation/20.0/developer/tutorials/server_framework_101/04_securityintro.html (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., Security in Odoo, Odoo 19.0 dasturchi hujjatlari, taqqoslash uchun. https://www.odoo.com/documentation/19.0/developer/reference/backend/security.html (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., asosiy modul modellari papkasi, odoo/odoo omborining 19.0 va 20.0 tarmoqlari, fayllar roʻyxati. https://github.com/odoo/odoo/tree/20.0/odoo/addons/base/models (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., asosiy modulning ruxsat yozuvlari jadvali, odoo/odoo omborining 20.0 tarmogʻi. https://github.com/odoo/odoo/blob/20.0/odoo/addons/base/security/ir.access.csv (koʻrilgan: 23-oktabr, 2026)
- Odoo S.A., Upgrade a database, Odoo 20.0 hujjatlari, sinov bazasini yangilash va tekshirish boʻlimlari. https://www.odoo.com/documentation/20.0/administration/upgrade.html (koʻrilgan: 23-oktabr, 2026)