نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی پرتال اطلاعاتی
  • خانه
  • جالب هست
  • 1c حالت ایمن را غیرفعال کنید. باز کردن پردازش خارجی به صورت برنامه ای

1c حالت ایمن را غیرفعال کنید. باز کردن پردازش خارجی به صورت برنامه ای

با استفاده از مثال "مدیریت تجارت 11.3"، ما یک فرآیند ساده برای اتصال یک صفحه چاپ خارجی را در نظر خواهیم گرفت. همچنین ویژگی های سیستم امنیتی جدید را در نظر خواهیم گرفت.

عبور سریع

اقدامات مقدماتی

ابتدا باید فعال کردن عملکردیا در دسترس بودن آن را بررسی کنید

1. ما تحت حقوق کامل پایگاه اطلاعاتی هستیم.

2. به منوی "Reference data and Administration" / Block "Administration" / Command "Printing forms, report and processing" بروید.

اضافه كردن

در قسمتی که باز می شود:

با کلیک کردن روی دکمه "ایجاد" (این مهم است) یا "به روز رسانی!" پردازش را اضافه کنید. موجود:

  • آن را در لیست انتخاب کنید (اگر انتخاب نشده یا خالی باشد، دستور کار نمی کند، اما چیزی نمی گوید).
  • دکمه "بارگیری از فایل" را فشار دهید.

پس از ظهور 1C در پردازش خارجی، بررسی های امنیتی در پیکربندی های جدید ظاهر شد.

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

اگر توسعه دهنده همه چیز را برای پردازش نوشته باشد، "Placement" تنظیم می شود - اشیایی که پردازش در آنها نقش دارد، دستور (ها) ظاهر می شود.
برای کار، کافی است روی "ضبط و بستن" کلیک کنید.

معاینه

بلافاصله پس از آن، بسته به نوع پردازش:

  • زمانی که سندی را باز می‌کنید یا از فهرست آن (برای باز کردن مجدد آن) با کلیک کردن روی دکمه «چاپ»، قابل چاپ می‌شود.
  • درمان‌ها در بخش‌های «درمان‌های اضافی» در هر زیرسیستم موجود هستند
  • پردازش پر کردن با کلیک روی دکمه "پر کردن" در لیست یا پنل فرمان اصلی فرم شی.

برای پردازش فوق، راه اندازی به صورت زیر خواهد بود:

اگر سند جدید است، باید نوشته شود، مکانیسم پردازش خارجی به شما در این مورد هشدار می دهد:

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

هشدارهای امنیتی در 1C

در نسخه‌ها و پیکربندی‌های جدید پلتفرم، محافظت در برابر راه‌اندازی برنامه‌های مخرب افزایش یافته است.

در پردازش، ممکن است اکسل برای بارگیری فراخوانی شود، در این صورت زیرسیستم امنیتی جدید نیز به شما هشدار می دهد:

در این حالت کد کنترل کننده قطع می شود.

اگر روی «بله» کلیک کنید، سیستم از شما می‌خواهد دوباره دستور را فراخوانی کنید:

این امکان برای کاربر پایگاه اطلاعاتی وجود دارد که محافظت در برابر اقدامات خطرناک را از طریق Configurator غیرفعال کند:

این را نمی توان از حالت "Enterprise" تغییر داد، شاید به عمد انجام شده باشد، ممکن است پس از به روز رسانی ظاهر شود.

همچنین لازم به ذکر است که اگر پردازش از اکسل استفاده می کند، باید در حالت ناامن اجرا شود (این مورد قبل از معرفی سیستم جدید بود و به صورت موازی کار می کند):

"نمی توان MS EXCEL را بارگیری کرد!!!" «حالت ایمن تنظیم شده است. عملیات ممنوع"

در پردازش خارجی، به صورت زیر است:

توسعه دهنده باید در توضیحات پردازش داخلی آن را روی "False" تنظیم کند، سپس همه چیز خوب خواهد بود:

ExternalProcessingData Function () Export RegistrationParameters = New Structure; Registration Parameters.Insert ("SafeMode"، False);

هنگام به روز رسانی پیکربندی، متن هشدار نیز در مورد منبعی که فایل پیکربندی از آن به دست آمده است ظاهر می شود:

هنگامی که برنامه آپلود اسناد را به عنوان یک کاربر معمولی شروع می کنید، خطای "حالت ایمن تنظیم شده است. عملیات ممنوع است."

این پیچیدگی ناشی می شود زیرا حقوق کافی برای شروع پردازش خارجی وجود ندارد. برای تنظیم حقوق دسترسی، از طرف شرکت به پایگاه داده در حالت 1C Enterprise بروید مدیرو به بخش بروید تنظیمات کاربر و حقوق / دسترسی به پروفایل های گروه،کلیک برای ایجاد یک گروه.

نام گروه را وارد کنید و کادرهای موجود برای کاربران این گروه از نقش‌ها را علامت بزنید -

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

را کلیک کنید بسوزانید و ببندید


به منوی Users برگردید و از لیست کارمندی را که با برنامه Download Documents کار خواهد کرد انتخاب کنید. روی Permissions کلیک کنید. در لیست پروفایل ها، نمایه ایجاد شده قبلی را علامت بزنید. را کلیک کنید بنویس.


توصیه می شود که Document Upload را به لیست پردازنده های خارجی اضافه کنید تا کاربران بتوانند پردازش را شروع کنند. برای این در منو مدیریت / چاپ فرم ها و پردازش / گزارش های اضافی و پردازشایجاد یک درمان جدید فایل LoadDocuments.epf را مرور کنید و نام آن را نامگذاری کنید. محل پردازش را در منو مشخص کنید، جایی که کاربر می تواند آن را در آینده راه اندازی کند، به عنوان مثال، منو را انتخاب کنید دایرکتوری ها

با کلیک بر روی آیتم دسترسی سریع، مشخص می کنید که کدام یک از کاربران به پردازش دسترسی دارند:


پس از تنظیم، کلیک کنید بسوزانید و ببندید... برای شروع پردازش، کاربران فقط باید دوباره وارد پایگاه داده شوند و آن را از منوی دسترسی (در مثال، References) باز کرده و کلیک کنند. اجرا کردن.


باز کن منو - همه توابع ..... و گزینه Security Profiles in use را در لیست پیدا کنید.


کافی است تیک گزینه “Security profiles are used” را بردارید.


پس از آن، برنامه با موفقیت شروع می شود.

با انتشار پلتفرم 8.3.9.2033 مکانیزم جدیدی ظاهر شد "محافظت در برابر اقدامات خطرناک".

به لطف این نوآوری، 1C -ka اکنون در افتتاحیه پردازش (و نه تنها) شروع به سوگند خوردن کرد:

هشدار امنیتی

"پردازش خارجی من" را از فایل "My_External_Processing.epf" باز می کند.

توصیه می شود به منبعی که این فایل از آن تهیه شده است توجه کنید. اگر هیچ توافقی با منبع در مورد توسعه ماژول های اضافی وجود ندارد، یا در مورد محتوای فایل تردید وجود دارد، باز کردن آن توصیه نمی شود، زیرا ممکن است به رایانه و داده ها آسیب برساند.

آیا می خواهید اجازه دهید این فایل باز شود؟

بنابراین 1C تصمیم گرفت با کدهای مخرب مبارزه کند!

اینکه این "کد مخرب" از کجا در شرکت می آید هنوز یک راز است)

اقدامات بالقوه خطرناک شامل:

  • بارگیری یک گزارش خارجی، پردازش یا گسترش پیکربندی.
  • بارگیری یا به روز رسانی پیکربندی / برنامه افزودنی.
  • دسترسی از یک گزارش / پردازش یا برنامه افزودنی خارجی به ویژگی های زیر:
  • اجرای فرمان سیستم عامل
  • مدیریت کاربر (ضبط یا حذف اطلاعات مربوط به یک کاربر پایگاه اطلاعاتی).
  • فراخوانی متد Connect () مدیر پردازنده های خارجی (گزارش ها).
  • فراخوانی متد ConfigurationExtension.Write ().
  • کار با اشیاء COM

چگونه می توان این "معجزه" را خاموش کرد؟

برای انجام این کار، باید 1C Enterprise را در حالت پیکربندی اجرا کنید.
منوی "Administration" - "Users" را انتخاب کنید.
در پنجره باز شده کاربران ما، باید پنجره تنظیمات کاربر را باز کنید و در برگه "Basic" چک باکس را بردارید. "محافظت در برابر اقدامات خطرناک"

راه های دیگری نیز برای خاموش کردن آن وجود دارد:

قابلیت تعیین فهرستی از پایگاه‌های اطلاعاتی در هنگام کار با آن‌ها که محافظت در برابر اقدامات خطرناک غیرفعال می‌شود، اجرا شده است.
پارامتر DisableUnsafeActionProtection در فایل conf.cfg مسئول این عملکرد است، که به شما امکان می دهد مکانیسم محافظتی در برابر اقدامات خطرناک را برای همه کاربران پایگاه های اطلاعاتی خاص که رشته های اتصال آنها ماسک های مشخص شده در پارامتر DisableUnsafeActionProtection را برآورده می کند، غیرفعال کنید.

در این پارامتر می توانید چندین ماسک را مشخص کنید که با علامت ";" از هم جدا شده اند، به عنوان مثال:

DisableUnsafeActionProtection = تست _. *؛ مرحله _. *؛

علاوه بر این، محافظت در برابر اقدامات خطرناک کاربر را می توان به صورت برنامه ریزی شده غیرفعال کرد، که برای آن پارامترها و ویژگی های زیر وجود دارد:

  • حفاظت پارامتر در برابر اقدامات خطرناک روش ها اتصال () مدیران پردازش خارجی (گزارش ها)
  • ویژگی HazardousActionProtection شیء ConfigurationExtension قبل از فراخوانی متد Write () این شیء.

بررسی نیاز به استفاده از محافظت در برابر اقدامات خطرناک به ترتیب زیر انجام می شود:

1. اگر چک باکس "محافظت در برابر اقدامات خطرناک" برای کاربر فعلی پاک شود، حفاظت غیرفعال در نظر گرفته می شود.

2. اگر رشته اتصال infobase با یکی از الگوهای مشخص شده در پارامتر DisableUnsafeActionProtection فایل conf.cfg مطابقت داشته باشد، حفاظت غیرفعال در نظر گرفته می شود.

3. اگر حفاظت به صراحت با استفاده از پارامتر AntiDangerousActions یک پردازش یا گزارش خارجی غیرفعال شده باشد.

4. اگر حفاظت با استفاده از ویژگی افزونه AntiDangerousActions به صراحت غیرفعال شده باشد.

پردازش خارجی به صورت برنامه نویسی با استفاده از شیء زمینه جهانی ExternalProcessing که دارای نوع است باز می شود External Processing Manager... برای هر حالت عملیاتی پلت فرم 1C (حالت نرمال برنامه و حالت برنامه مدیریت شده)، از روش های مختلف شی برای کار با پردازش خارجی استفاده می شود.

پردازش خارجی را در حالت برنامه معمولی شروع کنید

در یک برنامه معمولی، باید از متد Create () از شی ExternalProcessing استفاده کنید که نام کامل فایل پردازش خارجی به آن ارسال می شود. متد یک شی از نوع را برمی گرداند پردازش خارجی، این شی پردازش خارجی در حال باز شدن است. اگر نیاز به باز کردن یک فرم پردازش خارجی دارید، سپس متد GetForm () را روی شی به دست آمده فراخوانی کنید که فرم اصلی را برمی گرداند و سپس متد Open () را برای باز کردن آن فراخوانی کنید.


پردازش = ExternalProcessing.Create (FullFileName);
Processing.GetForm ().

در پردازنده های خارجی، فرم اصلی همیشه باید یک فرم معمولی باشد و فرم مدیریت شده باید همیشه یک فرم اضافی باشد، در غیر این صورت متد GetForm () در حالت نرمال کاربردی کار نخواهد کرد.

شروع پردازش خارجی در حالت برنامه مدیریت شده

در حالت فرم های مدیریت شده، تقسیمی از الگوریتم بر اساس زمینه اجرا ظاهر می شود. در کلاینت، داده های باینری را با نام کامل فایل پردازش خارجی دریافت می کنیم. داده های باینری دریافتی را به سرور منتقل می کنیم و در ذخیره سازی موقت قرار می دهیم. در مرحله بعد، باید متد Connect () شی ExternalProcessing را فراخوانی کنید، که آدرس ذخیره‌سازی موقت به آن ارسال می‌شود. این روش نام پردازش خارجی متصل را برمی گرداند. نام پردازش خارجی را به مشتری برمی گردانیم، یک مسیر رشته ای به فرم پردازش تشکیل می دهیم و از روش OpenForm () برای باز کردن فرم پردازش خارجی استفاده می کنیم.

&روی سرور
تابع GetExternalProcessingName (BinaryData)
AddressToTemporaryStorage = PutToTemporalStore (BinaryData);
بازگشت ExternalProcessing.Connect (AddressInTemporaryStorage)؛
EndFunction

& OnClient
FullFileName = ""; // نام کامل فایل پردازش خارجی.
FileData = New BinaryData (FullFileName);
ExternalProcessingName = GetExternalProcessingName (FileData);
OpenForm ("ExternalProcessing." + ExternalProcessingName + ".Form");

حالت ایمن برای درمان های خارجی

متدهای Create () و Connect () شیء ExternalProcessing دارای یک پارامتر ورودی SafeMode هستند - نشانه ای از اتصال پردازش خارجی در حالت ایمن. اگر پارامتر مشخص نشده باشد، اتصال در حالت امن انجام می شود.
حالت ایمن برای محافظت از سیستم در برابر اجرای کد برنامه "غیر قابل اعتماد" روی سرور طراحی شده است. خطر بالقوه پردازش خارجی یا کد برنامه ای است که توسط کاربر برای استفاده در روش های Execute () و Calculate () وارد می شود.
حالت ایمن دارای محدودیت های زیر است:
  • حالت ممتاز در صورت تنظیم لغو می شود.
  • تلاش برای ورود به حالت ممتاز نادیده گرفته می شود.
  • عملیات با اشیاء COM ممنوع است.
  • بارگیری و اتصال اجزای خارجی ممنوع است.
  • دسترسی به سیستم فایل ممنوع است (به جز فایل های موقت).
  • دسترسی به اینترنت ممنوع است.
پردازش‌هایی که به صورت تعاملی باز می‌شوند در حالت ایمن انجام نمی‌شوند، بنابراین توصیه می‌شود مکانیزمی برای باز کردن پردازنده‌های خارجی در حالت ایمن و همچنین جلوگیری از باز کردن تعاملی پردازنده‌های خارجی در سطح حقوق توسط کاربر انجام شود.
برای منع باز کردن تعاملی پردازش، در تمام نقش‌هایی که به کاربر اختصاص داده شده است، باید «باز کردن پردازش خارجی تعاملی» را از سمت راست حذف کنید (شکل 1 را ببینید).
شکل 1. حقوق باز کردن تعاملی پردازش ها / گزارش های خارجی
باز کردن پردازشگرهای خارجی به صورت تعاملی به هیچ وجه بر شیء ExternalProcessing تأثیر نمی گذارد.

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

واقعیت این است که هنگام استفاده از نسخه سرویس گیرنده-سرور عملیات 1C، پردازش / گزارش های خارجی در حالت ایمن باز می شود که در آن استفاده از حالت ممتاز ممنوع است. و حالت ممتاز اغلب در تنظیمات معمولی استفاده می شود: تشکیل فرم های چاپی، بررسی های مختلف خدمات (ثبت صرافی ها) و غیره. در نتیجه، حتی با استفاده از یک گزارش معمولی در ACS بدون فرم (به طور پیش فرض، از فرم عمومی "گزارش فرم" استفاده می شود) و ذخیره تنظیمات گزارش سفارشی (در مرجع مربوطه)، خطای دسترسی ناکافی را دریافت خواهید کرد. حقوق ثابت های مختلف و پارامترهای جلسه مورد استفاده برای اهداف سرویس بعد از خط SetPrivilegedMode (True)؛

راه حل "صحیح" اتصال فرآیندها و گزارش های خارجی از طریق مکانیسم های "گزارش ها و پردازش اضافی" BSP با غیرفعال کردن حالت ایمن یا اضافه کردن مجوزها (به نظر من، از BSP نسخه 2.2.2.1) است. اما اگر به دلایلی نیاز به استفاده از فایل های گزارش / پردازش خارجی باشد، می توانید یک نمایه امنیتی خوشه ای را پیکربندی کنید که به عنوان نمایه امنیتی حالت امن برای یک پایگاه اطلاعاتی خاص استفاده می شود.

می خواهم فوراً متذکر شوم که این گزینه ارجح نیست، اما به دلیل شرایط مختلف، می توان از آن به شکل ساده استفاده کرد. به عنوان مثال، من چندین پایگاه در شهرهای مختلف دارم، یک نشست محلی مشترک با حقوق کاملاً محدود، USB بسته و غیره، یک جایی از Accounting 2.0 استفاده می کنم و یک جایی از 3.0 تقریباً همه گزارش ها را با استفاده از ACS بدون فرم تهیه می کنم تا آنها در هر دو نسخه باز شد ارائه همه این گزارش ها برای نسخه های مختلف و پایگاه داده های مختلف کاری زمان بر و بی امید است. برنامه ها شامل انتقال به یک پیکربندی و پایه است ...

ما یک پروفایل ایجاد می کنیم.
در کنسول کلاستر، یک نمایه امنیتی ایجاد کنید که در آن پرچم ها را تنظیم می کنیم "می تواند به عنوان نمایه امنیتی حالت امن استفاده شود"و "تحت" کنترل کامل مجاز است: "به حالت ممتاز".

در بسیاری از موارد استفاده از گزارشات و پردازش ساده، این روش قابل اجرا خواهد بود. برای موقعیت‌های پیچیده‌تر، توصیف فرآیند بی معنی است، زیرا در مستندات ذکر شده است (قابلیت شخصی سازی پروفایل های امنیتی برای فایل های خارجی خاص با مشخص کردن هش آن و غیره).

P.S. من فکر می کردم که پروفایل های امنیتی فقط هنگام استفاده از مجوزها برای پلت فرم و سرور سطح CORP کار می کنند، اما این قابلیت در پلت فرم 1C: Enterprise 8.3 نیز انجام می شود (به شرطی، می توانید PROF را بر اساس قیاس با تنظیمات معمولی Basic / PROF / CORP فراخوانی کنید. )

مقالات مرتبط برتر