.\" Automatically generated by Pandoc 3.6.1 .\" .TH "tpm2_policyauthvalue" "1" "" "tpm2\-tools" "General Commands Manual" .SH "نام (NAME)" tpm2_policyauthvalue \- الزام به اعتبارسنجی مقدار مجوزدهی در خط‌مشی TPM2 .SH "خلاصه دستور (SYNOPSIS)" \f[B]tpm2_policyauthvalue\f[R] [\f[I]گزینه‌ها\f[R]] .SH "توضیحات (DESCRIPTION)" دستور \f[B]tpm2_policyauthvalue\f[R](1) \- خط‌مشی‌ای را فعال می‌کند که ارائه عبارت عبور (گذرواژه) احراز هویت شیء را الزامی می‌سازد\&. این عمل معادل احراز هویت با استفاده از عبارت عبور شیء به صورت متن خام (plaintext) یا HMAC است\&. این دستور آن را به عنوان یک خط‌مشی اعمال می‌کند\&. همچنین سازوکاری را برای فراهم کردن امکان احراز هویت با گذرواژه در شرایطی که شیء تنها اجازهٔ مجوزدهی مبتنی بر خط‌مشی را می‌دهد (یعنی زمانی که ویژگی \[lq]userwithauth\[rq] برابر با 0 است)، فراهم می‌آورد\&. .SH "گزینه‌ها (OPTIONS)" .IP \[bu] 2 \f[B]\-L\f[R], \f[B]\-\-policy\f[R]=\f[I]FILE\f[R]: .RS 2 .PP فایلی برای ذخیره خلاصه خط‌مشی ترکیب‌شده (compounded policy digest)\&. .RE .IP \[bu] 2 \f[B]\-S\f[R], \f[B]\-\-session\f[R]=\f[I]FILE\f[R]: .RS 2 .PP فایل نشست خط‌مشی ایجادشده از طریق گزینهٔ \f[B]\-S\f[R] در دستور \f[B]tpm2_startauthsession\f[R](1)\&. .RE .IP \[bu] 2 \f[B]\-\-cphash\f[R]=\f[I]FILE\f[R] .RS 2 .PP مسیر فایل برای ذخیره هش پارامترهای دستور\&. این مقدار معمولاً cpHash نامیده می‌شود\&. \f[B]نکته:\f[R] هنگام انتخاب این گزینه، ابزار در واقع دستور را اجرا نخواهد کرد و صرفاً مقدار cpHash را برمی‌گرداند\&. .RE .SS "مراجع (References)" .SH "گزینه‌های عمومی (COMMON OPTIONS)" این مجموعه گزینه‌ها میان بسیاری از برنامه‌ها مشترک هستند و اطلاعاتی را ارائه می‌دهند که اغلب کاربران انتظار دارند\&. .IP \[bu] 2 \f[B]\-h\f[R], \f[B]\-\-help=[man|no\-man]\f[R]: نمایش صفحه راهنمای ابزار\&. به‌طور پیش‌فرض، تلاش می‌کند صفحه‌خوان راهنما (manpager) را برای ابزار فراخوانی کند؛ اما در صورت شکست، خلاصه‌ای کوتاه از ابزار را نمایش می‌دهد\&. اگر آرگومان گزینه \[lq]man\[rq] مشخص شود نیز همین رفتار رخ می‌دهد، اما اگر صریحاً \[lq]man\[rq] درخواست شود، ابزار خطاهای man را در خروجی استاندارد خطا (stderr) نشان می‌دهد\&. اگر گزینه \[lq]no\-man\[rq] مشخص شود یا صفحه‌خوان man با شکست مواجه گردد، خلاصه گزینه‌ها در خروجی استاندارد (stdout) چاپ خواهد شد\&. .RS 2 .PP استفاده موفقیت‌آمیز از ویژگی manpages نیازمند نصب بودن صفحات راهنما یا قرار داشتن آن‌ها در مسیر \f[I]MANPATH\f[R] است؛ برای جزئیات بیشتر به man(1) مراجعه کنید\&. .RE .IP \[bu] 2 \f[B]\-v\f[R], \f[B]\-\-version\f[R]: نمایش اطلاعات نگارش این ابزار و TCTIهای پشتیبانی‌شده و سپس خروج\&. .IP \[bu] 2 \f[B]\-V\f[R], \f[B]\-\-verbose\f[R]: افزایش میزان اطلاعاتی که ابزار حین اجرا در کنسول چاپ می‌کند\&. هنگام استفاده از این گزینه، نام فایل و شماره خط چاپ می‌شوند\&. .IP \[bu] 2 \f[B]\-Q\f[R], \f[B]\-\-quiet\f[R]: بی‌صدا کردن خروجی عادی ابزار در خروجی استاندارد (stdout)\&. .IP \[bu] 2 \f[B]\-Z\f[R], \f[B]\-\-enable\-errata\f[R]: فعال‌سازی اعمال اصلاحیه‌های اشتباهات (errata fixups)\&. این گزینه زمانی مفید است که نیاز به اعمال یک اصلاحیه errata روی دستورات ارسالی به TPM باشد\&. تعریف متغیر محیطی TPM2TOOLS_ENABLE_ERRATA نیز معادل این گزینه است\&. .IP \[bu] 2 \f[B]\-z\f[R], \f[B]\-\-pwd\-session\f[R]: استفاده از نشست گذرواژه به جای نشست HMAC برای احراز هویت\&. یک گذرواژه متن خام (clear text) برای تایید عملیات به TPM ارسال می‌شود\&. از این گزینه می‌توان برای جلوگیری از بروز مشکل در زمان استفاده از نشست‌های بدون نمک (unsalted) در حالت OpenSSL FIPS استفاده کرد\&. اگر مقادیر مجاز (auth values) به کار روند، باید از یک نشست نمک‌دار (salted) برای احراز هویت استفاده شود\&. .IP \[bu] 2 \f[B]\-R\f[R], \f[B]\-\-autoflush\f[R]: فعال کردن تخلیه خودکار (autoflush) برای اشیاء گذرای ایجادشده توسط دستور\&. اگر یک شیء والد از یک فایل زمینه بارگذاری شود، آن شیء والد گذرا نیز تخلیه خواهد شد\&. تخلیه خودکار همچنین در صورتی که متغیر محیطی TPM2TOOLS_AUTOFLUSH روی yes یا true تنظیم شده باشد، فعال می‌شود\&. .SH "پیکربندی TCTI (TCTI Configuration)" رابط انتقال یا TCTI (کوتاه‌شده‌ی \[lq]Transmission Interface\[rq]) سازوکار ارتباطی با TPM است\&. TCTIها را می‌توان برای برقراری ارتباط با TPM از طریق بسترهای گوناگون تغییر داد\&. .PP برای کنترل TCTI، ابزارها موارد زیر را در نظر می‌گیرند: .IP "1." 3 گزینه خط فرمان \f[B]\-T\f[R] یا \f[B]\-\-tcti\f[R] .IP "2." 3 متغیر محیطی: \f[I]TPM2TOOLS_TCTI\f[R]\&. .PP \f[B]نکته:\f[R] گزینه خط فرمان همواره بر متغیر محیطی اولویت دارد\&. .PP TCTIهای شناخته‌شده کنونی عبارتند از: .IP \[bu] 2 tabrmd \- مدیر منابع، موسوم به \c .UR https://github.com/tpm2-software/tpm2-abrmd tabrmd .UE \c \&. توجه داشته باشید که tabrmd و abrmd به عنوان نام tcti مترادف یکدیگرند\&. .IP \[bu] 2 mssim \- معمولاً برای برقراری ارتباط با شبیه‌ساز نرم‌افزاری TPM استفاده می‌شود\&. .IP \[bu] 2 device \- هنگام برقراری ارتباط مستقیم با فایل دستگاه TPM استفاده می‌شود\&. .IP \[bu] 2 none \- هیچ اتصالی با TPM برقرار نمی‌کند\&. برخی ابزارها امکان استفاده از گزینه‌های خارج از TPM (off\-tpm) را فراهم می‌کنند و بنابراین از عدم استفاده از TCTI پشتیبانی می‌نمایند\&. ابزارهایی که از آن پشتیبانی نمی‌کنند، در صورت تلاش برای استفاده بدون اتصال TCTI با خطا مواجه می‌شوند\&. این مقدار از \f[I]هیچ‌گونه\f[R] گزینه‌ای پشتیبانی نمی‌کند و \f[I]باید حتماً\f[R] دقیقاً با متن \[lq]none\[rq] ارائه شود\&. .PP آرگومان‌های ارائه‌شده به گزینه خط فرمان یا متغیر محیطی به این شکل هستند: .PP \f[CR]:\f[R] .PP تعیین یک رشته خالی برای هر کدام از بخش‌های \f[CR]\f[R] یا \f[CR]\f[R] باعث استفاده از مقدار پیش‌فرض برای آن بخش به ترتیب خواهد شد\&. .SS "پیش‌فرض‌های TCTI (TCTI Defaults)" هنگامی که TCTI مشخص نشده باشد، TCTI پیش‌فرض با استفاده از قواعد معنایی \f[I]dlopen(3)\f[R] جستجو می‌شود\&. ابزارها TCTIهای \f[I]tabrmd\f[R]، \f[I]device\f[R] و \f[I]mssim\f[R] را \f[B]به همین ترتیب\f[R] جستجو کرده و \f[B]از نخستین مورد یافت‌شده استفاده می‌کنند\f[R]\&. می‌توانید با استفاده از گزینه \f[B]\-v\f[R] برای چاپ اطلاعات نگارش، بررسی کنید کدام TCTI به عنوان پیش‌فرض انتخاب خواهد شد\&. جفت کلید\-مقدار \[lq]default\-tcti\[rq] نشان می‌دهد که کدام‌یک از TCTIهای یادشده پیش‌فرض است\&. .SS "TCTIهای سفارشی (Custom TCTIs)" هر TCTI که رابط پویای TCTI را پیاده‌سازی کرده باشد قابل بارگذاری است\&. ابزارها در لایه درونی از \f[I]dlopen(3)\f[R] استفاده می‌کنند و مقدار خام \f[I]tcti\-name\f[R] برای جستجو به کار می‌رود\&. بنابراین، این مقدار می‌تواند یک مسیر به کتابخانه مشترک یا نام یک کتابخانه باشد که توسط قواعد معنایی \f[I]dlopen(3)\f[R] شناخته می‌شود\&. .SH "گزینه‌های TCTI (TCTI OPTIONS)" این مجموعه گزینه‌ها برای پیکربندی ماژول‌های مختلف TCTI شناخته‌شده در دسترس به کار می‌روند: .IP \[bu] 2 \f[B]device\f[R]: برای TCTI دستگاه، فایل دستگاه نویسه‌ای TPM مورد استفاده توسط TCTI می‌تواند مشخص شود\&. مقدار پیش‌فرض \f[I]/dev/tpm0\f[R] است\&. .RS 2 .PP مثال: \f[B]\-T device:/dev/tpm0\f[R] یا \f[B]export \f[BI]TPM2TOOLS_TCTI\f[B]=\[lq]device:/dev/tpm0\[rq]\f[R] .RE .IP \[bu] 2 \f[B]mssim\f[R]: برای TCTI از نوع mssim، نام دامنه یا آدرس IP و شماره درگاه مورد استفاده توسط شبیه‌ساز می‌تواند مشخص شود\&. مقادیر پیش‌فرض 127.0.0.1 و 2321 هستند\&. .RS 2 .PP مثال: \f[B]\-T mssim:host=localhost,port=2321\f[R] یا \f[B]export \f[BI]TPM2TOOLS_TCTI\f[B]=\[lq]mssim:host=localhost,port=2321\[rq]\f[R] .RE .IP \[bu] 2 \f[B]abrmd\f[R]: برای TCTI از نوع abrmd، قالب رشته پیکربندی مجموعه‌ای از جفت‌های کلید\-مقدار ساده است که با نویسه `,' جدا می‌شوند\&. هر رشته کلید و مقدار با نویسه `=' جدا می‌شود\&. .RS 2 .IP \[bu] 2 واسط TCTI abrmd از دو کلید پشتیبانی می‌کند: .RS 2 .IP "1." 3 `bus_name' : نام سرویس tabrmd روی گذرگاه (یک رشته)\&. .IP "2." 3 `bus_type' : نوع نمونه dbus (یک رشته) محدود به `session' و `system'\&. .RE .PP مشخص کردن نام TCTI از نوع tabrmd و رشته پیکربندی \f[CR]bus_name=com.example.FooBar\f[R]: .IP .EX \[rs]\-\-tcti=tabrmd:bus_name=com.example.FooBar .EE .PP مشخص کردن TCTI پیش‌فرض (abrmd) و رشته پیکربندی \f[CR]bus_type=session\f[R]: .IP .EX \[rs]\-\-tcti:bus_type=session .EE .PP \f[B]نکته\f[R]: abrmd و tabrmd مترادف یکدیگر هستند\&. .RE .SH "مثال‌ها (EXAMPLES)" ما می‌خواهیم با استفاده از مقدار احراز هویت متن خام (plaintext) شیء TPM، احراز هویت را انجام دهیم\&. اگرچه می‌توانیم با یک نشست گذرواژه زودگذر (ephemeral) احراز هویت کنیم، اما در این مثال به جای آن با استفاده از ابزار \f[B]tpm2_policyauthvalue\f[R](1)، احراز هویت را با عبارت عبور متن خام در یک نشست خط‌مشی انجام خواهیم داد\&. .SS "ایجاد خط‌مشی گذرواژه" .IP .EX tpm2_startauthsession \-S session.dat tpm2_policyauthvalue \-S session.dat \-L policy.dat tpm2_flushcontext session.dat .EE .SS "ایجاد شیء با یک عبارت عبور و خط‌مشی گذرواژه" .IP .EX tpm2_createprimary \-C o \-c prim.ctx tpm2_create \-g sha256 \-G aes \-u key.pub \-r key.priv \-C prim.ctx \-L policy.dat \[rs] \-p testpswd .EE .SS "احراز هویت با ورودی عبارت عبور متن خام" .IP .EX tpm2_load \-C prim.ctx \-u key.pub \-r key.priv \-n key.name \-c key.ctx echo \[dq]plaintext\[dq] > plain.txt tpm2_encryptdecrypt \-c key.ctx \-o encrypt.out plain.txt \-p testpswd .EE .SS "احراز هویت با گذرواژه و خط‌مشی" .IP .EX tpm2_startauthsession \-\-policy\-session \-S session.dat tpm2_policyauthvalue \-S session.dat tpm2_encryptdecrypt \-c key.ctx \-o encrypt.out \-p session:session.dat+testpswd \[rs] plain.txt tpm2_flushcontext session.dat .EE .SH "کدهای خروجی (RETURNS)" ابزارها می‌توانند هر یک از کدهای زیر را برگردانند: .IP \[bu] 2 0 \- موفقیت‌آمیز\&. .IP \[bu] 2 1 \- خطای عمومی و نامشخص\&. .IP \[bu] 2 2 \- خطای پردازش گزینه‌ها\&. .IP \[bu] 2 3 \- خطای احراز هویت\&. .IP \[bu] 2 4 \- خطای مربوط به TCTI\&. .IP \[bu] 2 5 \- طرح‌واره پشتیبانی‌نشده\&. مربوط به tpm2_testparams\&. .SH "محدودیت‌ها (LIMITATIONS)" این ابزار انتظار دارد که یک نشست از پیش با استفاده از \f[B]tpm2_startauthsession\f[R](1) برقرار شده باشد و نیازمند یکی از موارد زیر است: .IP \[bu] 2 دسترسی مستقیم به دستگاه .IP \[bu] 2 پشتیبانی از نشست توسعه‌یافته با \f[B]tpm2\-abrmd\f[R]\&. .PP بدون آن، بیشتر مدیران منابع وضعیت نشست را در بین فراخوانی‌های دستور ذخیره \f[B]نخواهند کرد\f[R]\&. .SH "اشکالات (BUGS)" \c .UR https://github.com/tpm2-software/tpm2-tools/issues اشکالات گیت‌هاب (Github Issues) .UE \c .SH "راهنما (HELP)" نگاه کنید به \c .UR https://lists.linuxfoundation.org/mailman/listinfo/tpm2 فهرست پستی (Mailing List) .UE \c .SH "مجوز (LICENSE)" این اثر تحت \c .UR https://creativecommons.org/licenses/by/4.0 مجوز بین‌المللی کریتیو کامنز ارجاع 4.0 (CC BY 4.0) .UE منتشر شده است\&.