.\" -*- mode: troff; coding: utf-8 -*- .TH "VOA" "5" "" .SH "نام (NAME)" .LP \fBvoa\fR \- قالب فایل پیکربندی برای بک‌اندهای فناوری VOA .SH "توضیحات (DESCRIPTION)" .LP یک فایل پیکربندی YAML که تنظیمات سطح \fIOS\fR (سیستم‌عامل) یا سطح \fIcontext\fR (زمینه) را برای بک‌اندهای فناوری مورد استفاده در \fIسلسله‌مراتب فایل برای اعتبارسنجی مصنوعات سیستم‌عامل\fR (\fBVOA\fR[1]) کدگذاری می‌کند. .PP هر فایل پیکربندی یک شناسه \fIOS\fR مربوط به \fBVOA\fR را در نام فایل خود دنبال می‌کند (برای نمونه، \(lqarch.yaml\(rq برای سیستم‌عامل \(lqarch\(rq، \(lqdebian:13.yaml\(rq برای سیستم‌عامل \(lqdebian:13\(rq \- برای جزئیات در مورد نویسه‌های مجاز به مشخصات \fBVOA\fR مراجعه کنید). .PP هر فایل پیکربندی برای در نظر گرفته شدن باید یک فایل معمولی (regular file) باشد. .SS "دایرکتوری‌ها و اولویت (Directories and precedence)" .LP مدیریت فایل‌های پیکربندی بر اساس \fBمشخصات فایل‌های پیکربندی\fR[2] است. .PP برای کاربران سیستمی، فایل‌های \fBvoa\fR از دایرکتوری‌های سیستمی \fBVOA\fR یعنی \(lq/usr/share/voa/\(rq و \(lq/usr/local/share/voa/\(rq، دایرکتوری فرار زمان اجرا \(lq/run/voa/\(rq و دایرکتوری مدیریت محلی \(lq/etc/voa/\(rq خوانده می‌شوند. برای کاربران واقعی، افزون بر دایرکتوری‌های پیکربندی سراسری سیستم، فایل‌های \fBvoa\fR از دایرکتوری‌های \(lqvoa/\(rq در \(lq$XDG_CONFIG_DIRS\(rq و از دایرکتوری \(lqvoa/\(rq در \(lq$XDG_CONFIG_HOME\(rq نیز خوانده می‌شوند (به \fBمشخصات دایرکتوری پایه XDG\fR[3] مراجعه کنید). .PP ترتیب دایرکتوری‌های پیش‌گفته، حق تقدم را با اولویت فزاینده توصیف می‌کند. یک فایل از دایرکتوری با اولویت بالاتر، فایلی از دایرکتوری با اولویت پایین‌تر را به‌طور کامل جایگزین می‌کند (برای نمونه، \(lq/etc/voa/example.yaml\(rq جایگزین \(lq/usr/share/voa/example.yaml\(rq می‌شود، \(lq\(ti/.config/voa/example.yaml\(rq جایگزین \(lq/etc/voa/example.yaml\(rq می‌شود). .PP قالب فایل پیکربندی \fBvoa\fR می‌تواند در فایل‌های پیکربندی قطره‌ای (drop\-in) نیز استفاده شود. یک دراپ‌این برای یک \fIOS\fR خاص با افزودن یک فایل پیکربندی \fBvoa\fR در یک دایرکتوری بازنویسی (override) در یکی از دایرکتوری‌های پیکربندی ایجاد می‌شود (برای نمونه، \(lq/etc/voa/example.yaml.d/99\-custom\-repo.yaml\(rq که تنظیماتی را برای یک مخزن سفارشی در سیستم‌عامل \(lqexample\(rq ارائه می‌دهد و بر تنظیمات عمومی‌تر فناوری \fIOS\fR در \(lq/usr/share/voa/example.yaml\(rq اولویت دارد). توجه داشته باشید که پیکربندی‌های دراپ‌این بر اساس نام فایل خود به ترتیب الفبایی خوانده می‌شوند، صرف‌نظر از اولویت دایرکتوری محل قرارگیری آن‌ها. .PP هر فایل پیکربندی \fBvoa\fR را می‌توان با ایجاد یک پیوند نمادین به /dev/null در جای آن ماسک کرد (برای نمونه، \(lq/etc/voa/example.yaml \-> /dev/null\(rq باعث می‌شود فایل \(lq/usr/share/voa/example.yaml\(rq در نظر گرفته نشود). .SS "ادغام پیش‌فرض‌های توکار، تنظیمات سطح سیستم‌عامل و سطح زمینه (Merging of built\-in defaults, OS and context\-level settings)" .LP هنگام استخراج تنظیمات فناوری سطح \fIOS\fR یا سطح \fIcontext\fR از فایل‌های پیکربندی \fBvoa\fR، ممکن است پیش‌فرض‌های توکار در نظر گرفته شوند. .PP پس از خواندن تمام فایل‌های پیکربندی و فایل‌های دراپ‌این، تنظیمات فناوری موجود در سطح \fIOS\fR از آن‌ها ساخته می‌شوند و فیلدهای تنظیم‌نشده با استفاده از تنظیمات موجود سطح \fIOS\fR یا پیش‌فرض‌های توکار مقداردهی می‌شوند. .PP در نهایت، تنظیمات فناوری سطح \fIcontext\fR از فایل‌های پیکربندی و فایل‌های دراپ‌این ساخته می‌شوند و فیلدهای تنظیم‌نشده \- بسته به در دسترس بودن \- با پیش‌فرض‌های سطح \fIOS\fR یا پیش‌فرض‌های توکار پر می‌شوند. .PP \fBنکته\fR: منطق ادغام زیر \- مگر آنکه خلاف آن تصریح شده باشد \- برای تمام فیلدهای اختیاری در اشیاء فایل پیکربندی اعمال می‌شود: اگر یک فیلد اختیاری حذف شود یا روی \f(CRnull\fR تنظیم گردد، مقدار مشخصی برای آن از سطح \fIOS\fR یا در صورت عدم ارائه در آنجا، از پیش‌فرض‌های توکار مشتق می‌شود. اگرچه این قابلیت امکان منطق بازنویسی و ارث‌بری غنی را فراهم می‌کند، اما ضرورت صریح بودن در مواقع لزوم را نیز ایجاب می‌کند! .PP اگر یک \fIOS\fR توسط یک فایل پیکربندی یا دراپ‌این مشخص پوشش داده نشده باشد، پیش‌فرض‌های توکار اعمال می‌شوند. .SH "قالب فایل (FILE FORMAT)" .LP فایل باید حاوی داده‌های معتبر YAML باشد و تمام فیلدها و مقادیر الزامی که در ادامه توصیف می‌شوند باید وجود داشته باشند. فایل‌های نامعتبر \fBvoa\fR نادیده گرفته می‌شوند. .SS "شیء «default_technology_settings» (default_technology_settings object)" .LP شیء سطح بالا در فایل که شامل اشیاء گزینه‌ها برای هر بک‌اند فناوری موجود مورد استفاده در VOA است. .PP \fBهشدار\fR: برای اینکه فایل \fBvoa\fR در کل معتبر تلقی شود، اگر فهرست \fB\(lqcontexts\(rq\fR خالی باشد، این شیء باید تعریف شود! .SS "شیء «openpgp» (openpgp object)" .LP این شیء تنظیمات بک‌اند OpenPGP را توصیف می‌کند. اعتبارسنجی بر پایه \fBامضاهای OpenPGP\fR[4] و \fBگواهی‌های OpenPGP\fR[5] است. چندین روش اعتبارسنجی در دسترس است. .SS "عدد «num_data_signatures» (num_data_signatures number)" .LP تعداد \fIاختیاری\fR از \fBامضاهای OpenPGP\fR صادره از \fBگواهی‌های OpenPGP\fR صادرکننده مجزا که برای تأیید یک مصنوع لازم است. .PP در صورت تنظیم، این مقدار باید یک عدد صحیح مثبت و غیرصفر باشد (پیش‌فرض توکار: \fI1\fR). .SS "شیء «verification_method» (verification_method object)" .LP روشی که برای اعتبارسنجی \fBامضاهای OpenPGP\fR با استفاده از \fBگواهی‌های OpenPGP\fR به کار می‌رود. مقدار باید یکی از اشیاء زیر باشد. .SS "شیء روش اعتبارسنجی «plain» (plain verification method object)" .LP روش اعتبارسنجی ساده یا \(lqplain\(rq برای \fBامضاهای OpenPGP\fR یک شکل پایه از اعتبارسنجی است که تنها \fIاعتبارسنج‌های مصنوع\fR را لحاظ می‌کند و هیچ \fIلنگر اعتمادی\fR را در نظر نمی‌گیرد. با استفاده از آن، یک یا چند مورد از اعتبارسنج‌های مصنوع یافته‌شده برای یک پرس‌وجوی اعتبارسنجی باید برای اعتبارسنجی موفق یک یا چند \fBامضای OpenPGP\fR به کار روند. .PP برای محدود کردن مجموعه \fBگواهی‌های OpenPGP\fR مجاز به عنوان اعتبارسنج مصنوع، می‌توان آن را با تطبیق نام دامنه در برابر \fBشناسه‌های کاربری معتبر OpenPGP\fR[6] و/یا \fBاثرانگشت OpenPGP\fR[7] فیلتر کرد. اگر هیچ فیلتری تعریف نشود، تمام \fBگواهی‌های OpenPGP\fR یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض، به عنوان اعتبارسنج مصنوع در نظر گرفته می‌شوند. .SS "مجموعه «identity_domain_matches» (identity_domain_matches set)" .LP مجموعه‌ای \fIاختیاری\fR از نام‌های دامنه معتبر که برای فیلتر کردن اعتبارسنج‌های مصنوع به کار می‌رود. .PP اگر مجموعه دارای ورودی باشد، یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض تنها در صورتی لحاظ می‌شود که یکی از شناسه‌های کاربری معتبر \fBOpenPGP User ID\fR آن با یکی از نام‌های دامنه مطابقت داشته باشد. .PP اگر مجموعه خالی باشد (پیش‌فرض توکار)، هیچ فیلترکردنی بر پایه نام‌های دامنه صورت نمی‌گیرد و هر \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض در نظر گرفته می‌شود (با فرض اینکه فیلتر دیگری مانع آن نشود). .SS "مجموعه «fingerprint_matches» (fingerprint_matches set)" .LP مجموعه‌ای \fIاختیاری\fR از \fBاثرهای انگشت OpenPGP\fR که برای فیلتر کردن اعتبارسنج‌های مصنوع به کار می‌رود. .PP \fBهشدار\fR: تعداد ورودی‌های این مجموعه باید برابر یا بیشتر از تعداد امضاهای داده مورد نیاز باشد (نگاه کنید به \fB\(lqnum_data_signatures\(rq\fR) تا روش اعتبارسنجی در کل معتبر در نظر گرفته شود! .PP اگر مجموعه دارای ورودی باشد، یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض تنها در صورتی لحاظ می‌شود که \fBاثرانگشت OpenPGP\fR آن با یکی از اثرهای انگشت مجموعه مطابقت داشته باشد. .PP اگر مجموعه خالی باشد (پیش‌فرض توکار)، هیچ فیلتری بر اساس اثرانگشت رخ نمی‌دهد و هر \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض لحاظ می‌شود (با فرض اینکه فیلتر دیگری مانع آن نشود). .SS "شیء روش اعتبارسنجی «trust_anchor» (trust_anchor verification method object)" .LP روش اعتبارسنجی لنگر اعتماد یا \(lqtrust anchor\(rq برای \fBامضاهای OpenPGP\fR یک شکل پایه از اعتبارسنجی مبتنی بر \fIلنگر اعتماد\fR است که هنگام اعتبارسنجی امضا، هم \fIاعتبارسنج‌های مصنوع\fR و هم \fIلنگرهای اعتماد\fR را لحاظ می‌کند. با استفاده از آن، هر اعتبارسنج مصنوع باید توسط تعداد مشخصی از لنگرهای اعتماد موجود تأیید (certified) شده باشد تا برای اعتبارسنجی \fBامضاهای OpenPGP\fR در نظر گرفته شود. .PP برای محدود کردن مجموعه \fBگواهی‌های OpenPGP\fR معتبر مجاز به عنوان اعتبارسنج مصنوع، می‌توان آن را با تطبیق نام دامنه در برابر شناسه‌های کاربری معتبر \fBOpenPGP User ID\fR فیلتر کرد. برای محدود کردن مجموعه \fBگواهی‌های OpenPGP\fR معتبر مجاز به عنوان لنگر اعتماد، می‌توان آن را بر اساس \fBاثرهای انگشت OpenPGP\fR فیلتر نمود. .SS "عدد «required_certifications» (required_certifications number)" .LP تعداد \fIاختیاری\fR از \fBتأییدیه‌های شخص ثالث OpenPGP\fR[8] لنگرهای اعتماد روی اعتبارسنج‌های مصنوع، تا یک اعتبارسنج مصنوع کاملاً مورد اعتماد در نظر گرفته شود. در صورت تنظیم، این مقدار باید یک عدد صحیح مثبت و غیرصفر باشد (پیش‌فرض توکار: \fI3\fR). .SS "مجموعه «artifact_verifier_identity_domain_matches» (artifact_verifier_identity_domain_matches set)" .LP مجموعه‌ای \fIاختیاری\fR از نام‌های دامنه معتبر که برای فیلتر کردن اعتبارسنج‌های مصنوع استفاده می‌شود. .PP اگر مجموعه دارای ورودی باشد، یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض تنها در صورتی لحاظ می‌شود که یکی از شناسه‌های کاربری معتبر \fBOpenPGP User ID\fR آن با یکی از نام‌های دامنه موجود در مجموعه تطابق داشته باشد و تعداد لازم از \fBتأییدیه‌های شخص ثالث OpenPGP\fR از لنگرهای اعتماد معتبر را داشته باشد. .PP اگر مجموعه خالی باشد (پیش‌فرض توکار)، هیچ فیلتری بر پایه نام دامنه انجام نمی‌شود و هر \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع که دست‌کم یک شناسه کاربری \fBOpenPGP User ID\fR با تعداد لازم از \fBتأییدیه‌های شخص ثالث OpenPGP\fR از لنگرهای اعتماد معتبر داشته باشد، در نظر گرفته می‌شود. .SS "مجموعه «trust_anchor_fingerprint_matches» (trust_anchor_fingerprint_matches set)" .LP مجموعه‌ای \fIاختیاری\fR از \fBاثرهای انگشت OpenPGP\fR که برای فیلتر کردن لنگرهای اعتماد به کار می‌رود. .PP \fBهشدار\fR: تعداد ورودی‌های این مجموعه باید برابر یا بیشتر از تعداد گواهینامه‌های الزامی باشد (نگاه کنید به \fB\(lqrequired_certifications\(rq\fR) تا روش اعتبارسنجی در کل معتبر تلقی شود! .PP اگر مجموعه دارای ورودی باشد، یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان لنگر اعتماد یک \fIcontext\fR مفروض تنها در صورتی لحاظ می‌شود که \fBاثرانگشت OpenPGP\fR آن با یکی از اثرهای انگشت موجود در مجموعه مطابقت داشته باشد. .PP اگر مجموعه خالی باشد (پیش‌فرض توکار)، هیچ فیلتری بر پایه اثرانگشت رخ نمی‌دهد و هر \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان لنگر اعتماد یک \fIcontext\fR مفروض در نظر گرفته می‌شود. .SS "شیء روش اعتبارسنجی «web_of_trust» (web_of_trust verification method object)" .LP روش اعتبارسنجی \fBشبکه اعتماد (Web of Trust)\fR[9] برای \fBامضاهای OpenPGP\fR شکل انعطاف‌پذیری از اعتبارسنجی مبتنی بر اعتماد است که به \fBالگوریتم بربلوم (Berblom algorithm)\fR[10] متکی است. این روش هم \fIاعتبارسنج‌های مصنوع\fR و هم \fIلنگرهای اعتماد\fR را لحاظ می‌کند. با آن، هر اعتبارسنج مصنوع باید به میزان اعتماد قابل تنظیمی برسد تا برای اعتبارسنجی \fBامضاهای OpenPGP\fR در نظر گرفته شود. در اینجا، میزان اعتماد توسط شبکه \(lqWeb of Trust\(rq محاسبه می‌شود که به ریشه‌های اعتماد ضمنی یا صریح و مقادیر اعتماد قابل تنظیم برای معرفی‌کنندگان با اعتماد نسبی در شبکه متکی است. .PP برای محدود کردن مجموعه \fBگواهی‌های OpenPGP\fR معتبر مجاز به عنوان اعتبارسنج مصنوع، می‌توان آن را با تطبیق نام دامنه در برابر شناسه‌های کاربری معتبر \fBOpenPGP User ID\fR فیلتر کرد. برای محدود کردن مجموعه \fBگواهی‌های OpenPGP\fR معتبر مجاز به عنوان لنگر اعتماد، می‌توان آن را با \fBاثرهای انگشت OpenPGP\fR فیلتر نمود. .SS "عدد «flow_amount» (flow_amount number)" .LP مقدار اعتماد \fIاختیاری\fR مورد نیاز برای یک جریان در شبکه \(lqWeb of Trust\(rq تا کاملاً مورد اعتماد در نظر گرفته شود. این نشان‌دهنده مقدار اعتماد هدفی است که یک اعتبارسنج مصنوع باید به آن برسد تا برای اعتبارسنجی \fBامضاهای OpenPGP\fR لحاظ گردد. .PP در صورت تنظیم، این مقدار باید یک عدد صحیح مثبت و غیرصفر باشد (پیش‌فرض توکار: \fI120\fR). .SS "عدد «partial_amount» (partial_amount number)" .LP مقدار اعتماد \fIاختیاری\fR برای یک معرفی‌کننده با اعتماد نسبی در یک شبکه \(lqWeb of Trust\(rq. این نشان‌دهنده میزان اعتماد یک \fBگواهی OpenPGP\fR است که در مسیری میان لنگر اعتماد و اعتبارسنج مصنوع در نظر گرفته می‌شود. .PP در صورت تنظیم، این مقدار باید یک عدد صحیح میان \fI1\fR و \fI120\fR باشد (پیش‌فرض توکار: \fI40\fR). .SS "مجموعه اشیاء «roots» (roots set of objects)" .LP مجموعه‌ای از ریشه‌های اعتماد برای \(lqWeb of Trust\(rq. هر شیء در این مجموعه نشان‌دهنده یک \fBگواهی OpenPGP\fR است که به عنوان \fIریشه اعتماد\fR در کنار \fIمیزان اعتماد\fR ویژه خود لحاظ می‌شود. .PP هر ریشه اعتماد یک شیء با دو فیلد زیر است: .IP "\(bu" 3 \fB\(lqfingerprint\(rq\fR: یک \fBاثرانگشت OpenPGP\fR. .IP "\(bu" 3 \fB\(lqamount\(rq\fR: میزان اعتماد \fIاختیاری\fR اختصاص‌یافته به ریشه اعتماد. در صورت تنظیم، مقدار باید یک عدد صحیح میان \fI1\fR و \fI120\fR باشد (پیش‌فرض توکار: \fI120\fR). .IP \fBنکته\fR: اگر این فیلد حذف شود، مقدار مشخصی از پیش‌فرض‌های توکار مشتق می‌گردد. .LP اگر این مجموعه دارای ورودی باشد، یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان لنگر اعتماد در سلسله‌مراتب VOA برای یک \fIcontext\fR مفروض، در صورتی به عنوان ریشه اعتماد با مقدار اعتماد معین لحاظ می‌شود که \fBاثرانگشت OpenPGP\fR آن با مقدار یکی از \fB\(lqfingerprint\(rq\fRهای موجود در مجموعه مطابقت کند. .PP اگر مجموعه خالی باشد، هر \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان لنگر اعتماد در سلسله‌مراتب VOA برای یک \fIcontext\fR مفروض به عنوان ریشه اعتماد با میزان اعتماد \fI120\fR در نظر گرفته می‌شود. .SS "مجموعه «artifact_verifier_identity_domain_matches» (artifact_verifier_identity_domain_matches set)" .LP مجموعه‌ای \fIاختیاری\fR از نام‌های دامنه معتبر که برای فیلتر کردن اعتبارسنج‌های مصنوع به کار می‌رود. .PP اگر این مجموعه دارای ورودی باشد، یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض تنها در صورتی لحاظ می‌شود که یکی از شناسه‌های کاربری معتبر \fBOpenPGP User ID\fR آن با یکی از نام‌های دامنه مجموعه مطابقت داشته و به میزان اعتماد هدف مورد نیاز دست یافته باشد (نگاه کنید به \fB\(lqflow_amount\(rq\fR). .PP اگر مجموعه خالی باشد، هیچ فیلترکردنی بر پایه نام‌های دامنه رخ نمی‌دهد و هر \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع که دست‌کم یک شناسه کاربری \fBOpenPGP User ID\fR با میزان اعتماد هدف مورد نیاز داشته باشد (نگاه کنید به \fB\(lqflow_amount\(rq\fR) در نظر گرفته می‌شود. .SS "فهرست اشیاء «contexts» (contexts list of objects)" .LP فهرستی از صفر یا چند شیء که هر یک بازنویسی در سطح \fIcontext\fR را برای تنظیمات فناوری تحمیل‌شده توسط \fIOS\fR (در صورت وجود) یا پیش‌فرض‌های توکار ارائه می‌دهند. .PP \fBهشدار\fR: برای اینکه فایل \fBvoa\fR در کل معتبر باشد، در صورتی که این فهرست خالی باشد یا فیلد تنظیم نشده باشد، شیء \fB\(lqdefault_technology_settings\(rq\fR باید تعریف شده باشد! .SS "رشته «purpose» (purpose string)" .LP هدف (\fIpurpose\fR) مربوط به \fBVOA\fR برای \fIOS\fR مورد نظر. برای جزئیات در مورد نویسه‌های مجاز به مشخصات VOA مراجعه فرمایید. .SS "رشته «context» (context string)" .LP زمینه (\fIcontext\fR) مربوط به \fBVOA\fR برای \fIOS\fR مورد نظر. برای جزئیات در مورد نویسه‌های مجاز به مشخصات VOA مراجعه کنید. .SS "شیء «technology_settings» (technology_settings object)" .LP تنظیمات فناوری برای \fB\(lqpurpose\(rq\fR و \fB\(lqcontext\(rq\fR مربوط به \fIOS\fR هدف‌گذاری‌شده توسط نام فایل پیکربندی (یا نام دایرکتوری دراپ‌این). .PP تنظیمات موجود در این شیء بر تنظیمات کمتر خاص سطح \fIOS\fR یا تنظیمات فناوری توکار اولویت دارند. برای مروری بر شیء مورد انتظار، به بخش \fB\(lqdefault_technology_settings\(rq\fR مراجعه کنید. .SH "مثال‌ها (EXAMPLES)" .SS "پیش‌فرض‌ها (Defaults)" .LP موارد زیر پیش‌فرض‌های توکار را برای تنظیمات فناوری نشان می‌دهند. .LP .EX default_technology_settings: openpgp: num_data_signatures: 1 verification_method: trust_anchor: required_certifications: 3 artifact_verifier_identity_domain_matches: trust_anchor_fingerprint_matches: .EE .PP این پیکربندی روش پایه \(lqtrust anchor\(rq را برای OpenPGP هدف قرار می‌دهد و به یک امضای داده برای مصنوعات و دست‌کم سه تأییدیه روی \fIاعتبارسنج‌های مصنوع\fR از سوی \fIلنگرهای اعتماد\fR نیاز دارد. .PP مجموعه تطبیق‌های نام دامنه برای اعتبارسنج‌های مصنوع و تطبیق‌های اثرانگشت OpenPGP برای لنگرهای اعتماد عمداً خالی گذاشته شده‌اند، به این معنی که هیچ محدودیت خاصی روی آن اعتبارسنج‌ها اعمال نمی‌شود. .SS "روش اعتبارسنجی «plain» در OpenPGP (OpenPGP plain verification method)" .LP نمونه پیکربندی زیر روش اعتبارسنجی \(lqplain\(rq را برای OpenPGP هدف قرار می‌دهد. .LP .EX default_technology_settings: openpgp: num_data_signatures: 1 verification_method: plain: identity_domain_matches: - example.org - sub.example.org fingerprint_matches: - d3b0f7c0b825ecbb0f0d7398072947e7b1537b6f - e242ed3bffccdf271b7fbaf34ed72d089537b42f - f1d2d2f924e986ac86fdf7b36c94bcdf32beec15 .EE .PP با این فرض که محتوای بالا در فایل \(lq/usr/share/voa/example.yaml\(rq قرار دارد، برای سیستم‌عامل \fIOS\fR \(lqexample\(rq قواعد اعتبارسنجی زیر اعمال می‌شود: .PP یک امضای داده منفرد از یک اعتبارسنج مصنوع معتبر برای تأیید مصنوعات الزامی است. افزون بر این، محدودیت‌های زیر روی گواهی‌های OpenPGP یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR خاص اعمال می‌شود تا معتبر شناخته شوند: .IP "\(bu" 3 یک شناسه کاربری معتبر \fBOpenPGP User ID\fR باید با دامنه \(lqexample.org\(rq یا \(lqsub.example.org\(rq مطابقت داشته باشد. .if n \ .sp -1 .if t \ .sp -0.25v .IP "\(bu" 3 مقدار \fBاثرانگشت OpenPGP\fR باید با یکی از مقادیر \(lqd3b0f7c0b825ecbb0f0d7398072947e7b1537b6f\(rq، \(lqe242ed3bffccdf271b7fbaf34ed72d089537b42f\(rq یا \(lqf1d2d2f924e986ac86fdf7b36c94bcdf32beec15\(rq مطابقت کند. .SS "روش اعتبارسنجی پایه «trust anchor» در OpenPGP (OpenPGP basic trust anchor verification method)" .LP نمونه پیکربندی زیر روش پایه اعتبارسنجی \(lqtrust anchor\(rq را برای OpenPGP هدف قرار می‌دهد. .LP .EX default_technology_settings: openpgp: num_data_signatures: 1 verification_method: trust_anchor: required_certifications: 3 artifact_verifier_identity_domain_matches: - example.org - sub.example.org trust_anchor_fingerprint_matches: - d3b0f7c0b825ecbb0f0d7398072947e7b1537b6f - e242ed3bffccdf271b7fbaf34ed72d089537b42f - f1d2d2f924e986ac86fdf7b36c94bcdf32beec15 .EE .PP با این فرض که محتوای بالا در فایل \(lq/usr/share/voa/example.yaml\(rq قرار دارد، برای سیستم‌عامل \fIOS\fR \(lqexample\(rq قواعد اعتبارسنجی زیر اعمال می‌شود: .PP یک امضای داده منفرد از یک اعتبارسنج مصنوع معتبر برای تأیید مصنوعات لازم است. هر اعتبارسنج مصنوع باید توسط سه لنگر اعتماد تأیید شده باشد. .PP یک شناسه کاربری معتبر \fBOpenPGP User ID\fR از یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR خاص باید با دامنه \(lqexample.org\(rq یا \(lqsub.example.org\(rq مطابقت داشته باشد تا آن گواهی به عنوان اعتبارسنج مصنوع در نظر گرفته شود. .PP مقدار \fBاثرانگشت OpenPGP\fR از یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان لنگر اعتماد یک \fIcontext\fR خاص باید با یکی از مقادیر \(lqd3b0f7c0b825ecbb0f0d7398072947e7b1537b6f\(rq، \(lqe242ed3bffccdf271b7fbaf34ed72d089537b42f\(rq یا \(lqf1d2d2f924e986ac86fdf7b36c94bcdf32beec15\(rq مطابقت داشته باشد تا آن گواهی به عنوان لنگر اعتماد لحاظ گردد. .SS "روش اعتبارسنجی «Web of Trust» در OpenPGP (OpenPGP Web of Trust verification method)" .LP نمونه پیکربندی زیر روش اعتبارسنجی \(lqWeb of Trust\(rq را برای OpenPGP هدف قرار می‌دهد. .LP .EX default_technology_settings: openpgp: num_data_signatures: 1 verification_method: web_of_trust: flow_amount: 120 partial_amount: 40 roots: - fingerprint: d3b0f7c0b825ecbb0f0d7398072947e7b1537b6f amount: 120 - fingerprint: e242ed3bffccdf271b7fbaf34ed72d089537b42f amount: 120 - fingerprint: f1d2d2f924e986ac86fdf7b36c94bcdf32beec15 amount: 120 artifact_verifier_identity_domain_matches: - example.org - sub.example.org .EE .PP با این فرض که محتوای بالا در فایل \(lq/usr/share/voa/example.yaml\(rq قرار دارد، برای سیستم‌عامل \fIOS\fR \(lqexample\(rq قواعد اعتبارسنجی زیر اعمال می‌شود: .PP یک امضای داده منفرد از یک اعتبارسنج مصنوع معتبر برای تأیید مصنوعات لازم است. .PP به هر معرفی‌کننده با اعتماد نسبی در شبکه \(lqWeb of Trust\(rq مقدار اعتماد 40 اختصاص داده می‌شود. میزان اعتماد مورد نیاز برای یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان اعتبارسنج مصنوع یک \fIcontext\fR مفروض تا کاملاً مورد اعتماد در نظر گرفته شده و در نتیجه به عنوان اعتبارسنج مصنوع لحاظ شود، برابر با 120 است. .PP مقدار \fBاثرانگشت OpenPGP\fR از یک \fBگواهی OpenPGP\fR معتبر یافت‌شده در مکان لنگر اعتماد یک \fIcontext\fR خاص باید با یکی از مقادیر \(lqd3b0f7c0b825ecbb0f0d7398072947e7b1537b6f\(rq، \(lqe242ed3bffccdf271b7fbaf34ed72d089537b42f\(rq یا \(lqf1d2d2f924e986ac86fdf7b36c94bcdf32beec15\(rq مطابقت داشته باشد تا آن گواهی به عنوان لنگر اعتماد لحاظ گردد. به هر یک از این لنگرهای اعتماد منطبق، مقدار اعتماد 120 اختصاص داده می‌شود. .SS "سطح سیستم‌عامل و سطح زمینه (OS\-level and context\-level)" .LP موارد زیر نمونه‌ای از تنظیمات فناوری در سطح \fIOS\fR و سطح \fIcontext\fR را نشان می‌دهد که بر روش اعتبارسنجی پایه \(lqtrust anchor\(rq برای OpenPGP متکی است. فرض بر این است که این محتوا در فایل \(lq/usr/share/voa/example.yaml\(rq قرار دارد و بنابراین سیستم‌عامل \fIOS\fR \(lqexample\(rq را هدف قرار می‌دهد. .LP .EX default_technology_settings: openpgp: num_data_signatures: 2 verification_method: trust_anchor: artifact_verifier_identity_domain_matches: - example.org trust_anchor_fingerprint_matches: - 6132b58967cf1ebc05062492c17145e5ee9f82a8 - 6eadeac2dade6347e87c0d24fd455feffa7069f0 - b787a81c32997fd39a5f4c0188363902d3586e7b - d3b0f7c0b825ecbb0f0d7398072947e7b1537b6f - e242ed3bffccdf271b7fbaf34ed72d089537b42f contexts: - purpose: package context: default technology_settings: openpgp: verification_method: trust_anchor: required_certifications: 4 artifact_verifier_identity_domain_matches: - packages.example.org - purpose: image context: installation-medium technology_settings: openpgp: num_data_signatures: 1 verification_method: trust_anchor: artifact_verifier_identity_domain_matches: - install.example.org .EE .PP اگر سیستمی که از این فایل پیکربندی استفاده می‌کند هیچ فایل \fBvoa\fR دیگری نداشته باشد، پیش‌فرض‌های توکار برای هر فیلد تنظیم‌نشده در تنظیمات فناوری سطح \fIOS\fR اعمال می‌شوند و تنظیمات فناوری سطح \fIOS\fR برای هر فیلد تنظیم‌نشده در تنظیمات فناوری سطح \fIcontext\fR اعمال می‌گردند. .PP مثال بالا نشان می‌دهد که چگونه پیش‌فرض‌های سطح \fIOS\fR در صورتی که در تنظیمات خاص‌تر سطح \fIcontext\fR تعیین نشده باشند، به ارث می‌رسند. برای نمونه، مقدار \fB\(lqtrust_anchor_fingerprint_matches\(rq\fR در پیش‌فرض‌های سطح \fIOS\fR برای تنظیمات فناوری سطح \fIcontext\fR نیز اعمال می‌شود. .PP به همین ترتیب، فیلدهای موجود در تنظیمات فناوری سطح \fIcontext\fR می‌توانند پیش‌فرض‌های سطح \fIOS\fR را بازنویسی کنند. در مثال بالا، مقدار \fB\(lqnum_data_signatures\(rq\fR در سطح \fIOS\fR روی \fI2\fR تنظیم شده است، اما یکی از زمینه‌ها (\fIcontexts\fR) آن را بازنویسی کرده و فقط به \fI1\fR امضا نیاز دارد. به طور مشابه، مقدار \fB\(lqrequired_certifications\(rq\fR در یکی از زمینه‌ها به جای مقدار سطح \fIOS\fR که \fI3\fR است (که خود از پیش‌فرض‌های توکار مشتق شده)، به \fI4\fR بازنویسی شده است. .SS "دراپ‌این‌ها برای بازنویسی در سطح زمینه (Drop\-ins for context\-level overrides)" .LP هنگامی که تنها تنظیمات در سطح \fIcontext\fR ارائه می‌شوند، کلید سطح بالای \fB\(lqdefault_technology_settings\(rq\fR می‌تواند حذف شود. .PP نمونه پیکربندی زیر روش اعتبارسنجی \(lqplain\(rq را برای OpenPGP هدف قرار می‌دهد. فرض بر این است که این محتوا در فایل \(lq/etc/voa/example.yaml.d/90\-my\-repo.yaml\(rq قرار دارد و سیستم‌عامل \fIOS\fR \(lqexample\(rq را هدف قرار می‌دهد. .LP .EX contexts: - purpose: package context: my-repo technology_settings: openpgp: num_data_signatures: 1 verification_method: plain: identity_domain_matches: - other.org fingerprint_matches: - bea43e7033e19327183416f23fe2ee1b64c25f4a .EE .PP با این فرض که پیکربندی شرح داده شده در مثال \fBسطح سیستم‌عامل و سطح زمینه (OS\-level and context\-level)\fR نیز روی سیستم وجود داشته باشد، این پیکربندی یک حالت خاص برای یک مخزن بسته واحد با نام \(lqmy\-repo\(rq را توصیف می‌کند. تنظیمات فناوری اعمال‌شده توسط سیستم‌عامل \fIOS\fR \(lqexample\(rq بازنویسی شده و مجموعه متفاوتی از قواعد اعتبارسنجی اعمال می‌شوند: .IP "\(bu" 3 تنها یک امضای داده از اعتبارسنج‌های مصنوع معتبر برای هر مصنوع لازم است. .if n \ .sp -1 .if t \ .sp -0.25v .IP "\(bu" 3 محدودیت‌های زیر توسط فیلترها روی اعتبارسنج‌ها اعمال می‌شوند: .if n \ .sp -1 .if t \ .sp -0.25v .RS .IP "\(bu" 3 گواهی‌های معتبر \fBOpenPGP\fR یافت‌شده در مکان‌های مربوطه تنها در صورتی به عنوان اعتبارسنج مصنوع لحاظ می‌شوند که \fBاثرانگشت OpenPGP\fR آن‌ها با \(lqbea43e7033e19327183416f23fe2ee1b64c25f4a\(rq مطابقت داشته باشد. .if n \ .sp -1 .if t \ .sp -0.25v .IP "\(bu" 3 گواهی‌های معتبر \fBOpenPGP\fR یافت‌شده در مکان‌های مربوطه تنها در صورتی به عنوان اعتبارسنج مصنوع لحاظ می‌شوند که یکی از شناسه‌های کاربری معتبر \fBOpenPGP User ID\fR آن‌ها با نام دامنه \(lqother.org\(rq تطابق داشته باشد. .RE .SH "همچنین ببینید (SEE ALSO)" .LP \fBvoa\fR(1) .SH "نکات (NOTES)" .IP "1." 4 \fBVOA\fR .IP .UR https://uapi-group.org/specifications/specs/file_hierarchy_for_the_verification_of_os_artifacts .UE .IP "2." 4 \fBConfiguration Files Specification\fR .IP .UR https://uapi-group.org/specifications/specs/configuration_files_specification .UE .IP "3." 4 \fBXDG Base Directory Specification\fR .IP .UR https://specifications.freedesktop.org/basedir/latest .UE .IP "4." 4 \fBOpenPGP signature\fR .IP .UR https://openpgp.dev/book/signatures.html .UE .IP "5." 4 \fBOpenPGP certificate\fR .IP .UR https://openpgp.dev/book/certificates.html .UE .IP "6." 4 \fBOpenPGP User ID\fR .IP .UR https://openpgp.dev/book/certificates.html#user-ids .UE .IP "7." 4 \fBOpenPGP fingerprint\fR .IP .UR https://openpgp.dev/book/certificates.html#fingerprint .UE .IP "8." 4 \fBOpenPGP third\-party certifications\fR .IP .UR https://openpgp.dev/book/signing_components.html#third-party-certifications .UE .IP "9." 4 \fBWeb of Trust\fR .IP .UR https://codeberg.org/openpgp/wot .UE .IP "10." 4 \fBBerblom algorithm\fR .IP .UR https://codeberg.org/Nukesor/berblom .UE