دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۴
  • شهریور

جلسه ۱۰ : تعیین قابلیت کاربری پلاگین

  • دسته‌بندی‌ها :
جلسه ۱۰ : تعیین قابلیت کاربری پلاگین
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      با عرض سلام و وقت به خیر خدمت کاربران سایت پی وی لرن به ویژه کاربرانی که به سیستم مدیریت محتوای قدرتمند وردپرس علاقمند هستند.
      به ” دوره متخصص وردپرس ” خوش آمدید!
      در این دوره قرار است توسعه و ارتقاء پلاگین های وردپرس را به صورت جامع و کامل بیاموزیم.
      فرقی نمی کند که در شرف نوشتن اولین پلاگین خود هستید و یا این که پنجاهمین پلاگین خود را می نویسید! امیدوارم این دوره برایتان مفید باشد.
      در جلسه قبل مقدمه ای بر مبحث امنیت پلاگین ها داشتیم.
      این جلسه با موضوع ” تعیین قابلیت کاربری پلاگین ” رسماً به بررسی ایمنی سازی پلاگین ها می پردازیم.

      تعیین قابلیت کاربری پلاگین

      اگر پلاگین ساخته شده تان به کاربران اجازه درج داده را می دهد- در بخش ادمین و یا بخش عمومی سایت – باید برای آن قابلیت های کاربری را بررسی کرد.

      نقش ها و توانایی های کاربر

      مهمترین گام در ایجاد یک لایه امنیتی کارآمد، داشتن یک سیستم مجوز کاربری است.
      وردپرس این اولویت مهم را در قالب نقشها و توانایی های کاربر فراهم می کند.
      هر کاربری که به وردپرس وارد شده است، به طور خودکار قابلیت های خاص کاربر را براساس نقش کاربر خود تعیین می کند.
      نقش کاربر فقط یک روش فانتزی است که می گوید کدام گروه کاربر متعلق به آن است.
      در واقعیت هر گروه دارای یک مجموعه خاص از قابلیت های از پیش تعریف شده است.

      به عنوان مثال:
      کاربر اصلی وب سایت شما، نقش کاربر یک Administrator را در اختیار یکی از کاربران قرار می دهد.
      در حالی که سایر کاربران ممکن است نقش هایی مانند ویرایشگر یا نویسنده داشته باشند.
      شما می توانید بیش از یک کاربر را به یک نقش اختصاص دهید، به عنوان مثال ممکن است دو مدیر برای یک وب سایت وجود داشته باشد.
      قابلیت های کاربر مجوز های خاصی است که شما به هر کاربر و یا یک نقش کاربر اختصاص می دهید.

      به عنوان مثال، مدیران توانایی مدیریت “manage_options” را دارند که به آنها امکان می دهد تا گزینه ها را برای وب سایت مشاهده، ویرایش و ذخیره کنند.

      این امر موجب می شود که ویراستاران این قابلیت را از دست دهند.
      بدون این قابلیت توانیی تعامل با گزینه ها را از اختیار آن ها خارج می شود.

      بنابرین این قابلیت ها در نقاط مختلف درون مدیریت بررسی می شوند.
      بسته به قابلیت های تعیین شده برای نقش؛ منوها، قابلیت ها و سایر جنبه های وردپرس ممکن است اضافه یا حذف شوند.

      پس هنگام ساخت یک پلاگین فقط زمانی که کاربر فعلی قابلیت های لازم را داشته باشد؛ کد خود را اجرا کنید.

      سلسله مراتب

      هر چه نقش کاربر بالاتر باشد، قابلیت های بیشتری  نیز در اختیار این کاربر قرار خواهد گرفت.
      هر نقش کاربر نقش های قبلی در سلسله مراتب کاربران را به ارث می برد.

      به عنوان مثال، “Administrator”، که بالا ترین نقش را در یک سایت دارد، نقش های زیر و توانایی های آنها را به ارث می برد:
      “Subscriber”، “Contributor”، “Author” و “Editor”.
      به عنوان پایان مبحث تعیین قابلیت کاربری پلاگین ، چند مثال دیگر را نیز بررسی می کنیم.

      مثال ها

      کاربران بدون محدودیت

      مثال زیر ظاهراً یک لینک ایجاد می کند که امکان ارسال پست ها را دارد.
      از آنجا که این کد قابلیت های کاربر را بررسی نمی کند، به هر بازدیدکننده ای به سایت اجازه می دهد که پست ها را حذف کند!

      مثال : 

      محدود به یک قابلیت خاص

      مثال فوق اجازه می دهد تا هر بازدید کننده ای به سایت بر روی لینک “حذف” کلیک کرده و پست را حذف کند.
      با این حال، ما فقط می خواهیم ویراستاران و نقش های بالاتر از آن را قادر به کلیک بر روی لینک “حذف”نماید.

      برای انجام این کار، بررسی می کنیم که کاربر فعلی دارای قابلیت edit_others_posts هست یا خیر.
      این قابلیت تنها در اختیاران ویراستاران یا نقش های بالاتر از آن است :

      مثال : 

      کلام آخر

      عدم تعیین درست قابلیت و نقش های یک کاربر می تواند مشکلات زیادی ایجاد نماید.
      در این جلسه به بررسی تعیین قابلیت کاربری پلاگین پرداختیم و با نقش های مختلف یک کاربر برای یک پلاگین آشنا شدیم.
      در جلسه بعدی به بررسی اعتبار سنجی داده ها می پردازیم.
      با پی وی لرن همراه باشید.

      QR:  جلسه ۱۰ : تعیین قابلیت کاربری پلاگین
      به اشتراک بگذارید