مساحة العمل والأشخاص
من الذي يطلب، وما يحقّ له فعله، ومن غيره هنا.
أدوات مساحة العمل والأشخاص
| الأداة | ما تفعله |
|---|---|
| whoAmI | ما يحقّ لك فعله في صندوق البريد النشط حاليًا: الدور الذي تحمله، وهل تملك مساحة العمل، وكل صلاحية يمنحها ذلك الدور. |
| listRoles | الأدوار التي تعرّفها مساحة العمل هذه وما يمنحه كل منها، مع عدد الأشخاص ومفاتيح API التي تحمل كل دور، وهي المعلومة التي تقول إن كان تغيير أحدها آمنًا. |
| listWorkspaceMembers | من في مساحة العمل، والدور الذي يحمله كل منهم، والعناوين التي مُنحوها. |
اقرأ whoAmI قبل أن تخبر أحدًا بأن أمرًا ما لا يمكن فعله. فالأداة التي تنقصك صلاحيتها ليست في قائمة أدواتك إطلاقًا، فالأداة الغائبة هي في الغالب الأعمّ صلاحية لا تملكها لا ميزة ينقص هذا الخادم إياها. وهي تجيب عن الاتصال النشط، فالجواب يتغيّر بعد setActiveConnection.
لا تحتاج whoAmI إلى أي صلاحية؛ أما الأداتان الأخريان فتقعان خلف roles:read وmembers:read. والفصل هو نفسه المرسوم في كل موضع آخر هنا. فوصفك لنفسك ليس تصريحًا عن أي شخص آخر، والأداتان اللتان تسمّيان الزملاء مقيّدتان كأي تصريح آخر عن شخص غيرك.
الدور ومنح العنوان شيئان مختلفان، وlistWorkspaceMembers يبلّغ عنهما معًا لكل شخص لأن أيًّا منهما لا يجيب عن الآخر. فالدور هو ما يحقّ لأحدهم فعله، والعناوين هي ما يحقّ له فعله عليها، وقد يحمل الشخص دورًا بلا عناوين (فيفتح صندوق بريد فارغًا) أو عنوانًا بلا صفّ دور أصلًا، وهو منحٌ أقدم يستلزم دورًا لا دورًا اختاره أحد. أما مالك مساحة العمل فغير مُدرَج: فهو الحساب الذي تنتمي إليه مساحة العمل ويملك كل شيء.
لا شيء هنا يكتب. لا يوجد createRole ولا setMemberRole ولا grantAddress، للسبب نفسه الذي لا يوجد من أجله deleteRule: فتوسيع دور أو توزيع عنوان من داخل نافذة محادثة تغييرٌ صامت وواسع لا يراه أحد بعد ذلك. وكل ذلك موجود في الإعدادات ← الأدوار وعلى /roles، حيث يستطيع من يقوم به أن يرى المصفوفة كاملة التي يغيّرها.