1 წამში დასაკეცი ჩამოირეცხება შესაძლო ხელახალი დაწყობით. მონაცემთა გადაცემა COMConnector-ის საშუალებით. ტერმინალის სერვერიდან ფაილზე წვდომა შეიძლება შეიცავდეს საზღვრებს

გოლოვნა / კორისნას ინფორმაცია

Informix® DataBlade™ API აღარ არის ხელმისაწვდომი. განყოფილება "Stack Space" აღწერს Back Office-ის (UDR) ფუნქციების შექმნას. ეს სტატია გთავაზობთ დამატებით ინფორმაციას გაუმჯობესების მიზნით.

შემდეგი ინფორმაცია ძალაშია, მიუხედავად იმისა, არის თუ არა UDR კონფიგურირებული თქვენი კომპიუტერის ვირტუალურ პროცესორზე (VP) თუ CPU VP-ზე. ძაფების დასტა შეიძლება გადაადგილდეს ვირტუალური პროცესორის გარშემო პირდაპირ UDR-ის წინ.

რა ზომის დასტა გამოიყურება UDR-სთვის?

UDR-სთვის ხელმისაწვდომი სტეკის ზომა დამოკიდებულია იმაზე, თუ როგორ შეიქმნა UDR:

    STACK მოდიფიკატორის დახმარებით, რომელიც UDR-ს საშუალებას აძლევს ვიკორიზოს თავისი სპეციალური ხედვის სტეკი,

    STACK მოდიფიკატორის გარეშე, რაც ნიშნავს, რომ UDR მოახდენს სერვერისთვის ხილულ სტეკს, იმ ძაფთან ერთად, რომელზეც მოთხოვნა შესრულებულია. დატის ზომა ამ ფორმით განისაზღვრება STACKSIZE პარამეტრის მნიშვნელობებით onconfig კონფიგურაციის ფაილში.

STACK მოდიფიკატორი

CREATE PROCEDURE ან CREATE FUNCTION გამონათქვამები შეიცავს არასავალდებულო STACK მოდიფიკატორს, რომელიც საშუალებას გაძლევთ მიუთითოთ დატის სივრცის ზომა ბაიტებში, რაც აუცილებელია UDR ვიკისთვის.

თუ იყენებთ STACK მოდიფიკატორს UDR-ის შექმნისას, სერვერი ჩანს და სტეკის სივრცე შეიძლება წაიშალოს UDR-ის შექმნისას. ამჟამინდელი ხელმისაწვდომი ზომა არის STACK-ის წინა მნიშვნელობა ბაიტებში მინუს დახარჯული ზედნადების რაოდენობა, რომელიც მდგომარეობს ფუნქციის არგუმენტების რაოდენობაში.

ვინაიდან STACK მნიშვნელობა უფრო მცირეა, ვიდრე STACKSIZE პარამეტრის მნიშვნელობა onconfig ფაილში (შემდეგი სექცია), UDR-სთვის ნანახი სტეკის ზომა ავტომატურად დამრგვალდება STACKSIZE მნიშვნელობამდე.

კონფიგურაციის პარამეტრი STACKSIZE

კონფიგურაციის ფაილი onconfig შეიცავს STACKSIZE პარამეტრს, რომელიც მიუთითებს დატის ზომას ნაქსოვი ძაფების უკან.

თუ UDR-ის შექმნისას არ მიუთითებთ STACK-ს, სერვერი ვერ ხედავს დატის დამატებით ადგილს UDR მნიშვნელობის შესაქმნელად. Natomist UDR vikoristovuyu დასტის სივრცეში, ხედვები vikonannya გარეცხილი. სტეკის ხელმისაწვდომი ზომა განპირობებულია ფუნქციების კონფიგურაციის ზედნადები ხარჯებით, რომლებიც ნაკლებად გავრცელებულია, ვიდრე SQL-ში.

ძაფების დასტა ჩანს ერთხელ კონკრეტული ძაფისთვის, რომელიც არჩეულია. სიჩქარე უფრო მაღალია, თუ UDR იზიარებს ერთ დასტას ძაფთან, ასე რომ სერვერი არ ხარჯავს რესურსებს დამატებითი სტეკის ნახვისას თითო UDR ზარზე. მეორეს მხრივ, იმის გამო, რომ მასშტაბური სტეკის ზომა უახლოვდება STACKSIZE მნიშვნელობას, შესაძლებელია აიძულოთ დასტა ხელახლა შეივსოს, როდესაც ფუნქცია გამოიძახება საწყობში (ამ შემთხვევაში, UDR ფანჯრისთვის, ნაკლები დასტა სივრცე ხელმისაწვდომი იქნება).

მნიშვნელოვანია აღინიშნოს, რომ შეუძლებელია STACKSIZE მნიშვნელობის დაყენება ისე, რომ კოდის ყველა თემა დაიკარგება.

როდის არის საჭირო სტეკის ზომის გაზომვა?

თქვენ ხართ პასუხისმგებელი სტეკის სივრცის გაფლანგვაზე, რადგან UDR თავს არიდებს რეკურსიულ ზარებს, ან იმიტომ, რომ UDR იკავებს მეტ ადგილს დასტას, რომელიც მიუწვდომელია სტეკის ნაკადის მიღმა (STACKSIZE).

UDR გუნდისთვის სტეკის გაზრდის ორი გზა არსებობს:

    შეიყვანეთ STACK მოდიფიკატორი UDR-ის შექმნისას.

    გამოიყენეთ mi_call() რეკურსიული ზარების ასარჩევად (შესანიშნავი მაგალითია "პროგრამის სახელმძღვანელოში Informix DataBlade API").

თუ ზომას არ აკონკრეტებთ STACK-ის საშუალებით და თუ არ იყენებთ mi_call() ძაფების დასტის გასაზრდელად და თუ UDR მუშაობს ისე, რომ დასტის დიდ ადგილს იკავებს, მაშინ უნდა შეავსოთ სტეკი .

სერიოზულად, mi_* ხედის ეს ფუნქციები ამატებს ამ ძლიერი ვიქტორის სტეკის ახალ სეგმენტს. ეს სეგმენტები იცვლება UDR-ზე გადაბრუნებისას, რომლის გამოძახებაც მოხდა.

რა უნდა გააკეთოს, თუ რამე არასწორია?

უფრთხილდით ვიკი დასტას

დაცვის მეტა არის კონკრეტული UDR-ის იდენტიფიკაცია, რომელიც მოითხოვს სტეკის შევსებას, რათა შეცვალოს STACK მნიშვნელობები კონკრეტულად ამ კონკრეტული UDR-ისთვის.

    უფრთხილდით ვიკი დასტას დამატებითი ბრძანებისთვის "onstat -g sts"

    გაუფრთხილდით სესიას, რომელსაც SQL აჩვენებს, დახმარებისთვის გამოიყენეთ onstat -g ses session_id

მას შემდეგ რაც იდენტიფიცირებთ SQL განცხადებას, რომელიც საბოლოოდ შეივსება სტეკზე, შეგიძლიათ განსაზღვროთ სტეკის მნიშვნელობა UDR-დან მოთხოვნილების შესატყვისით, რომლებიც მიდიან თავდაპირველი განცხადების შენახვამდე.

შეგიძლიათ დინამიურად დააყენოთ STACK მნიშვნელობები UDR-სთვის. Მაგალითად:

შეცვალოს ფუნქცია MyFoo (lvarchar,lvarchar) ერთად (add stack=131072);

STACK მნიშვნელობის შეცვლის შემდეგ, გააპროტესტეთ ორიგინალური შეყვანა ხელახლა კონვერტაციისთვის, რათა ის ახლა სტაბილურად იმუშაოს.

გაფართოება STACKSIZE

როგორც ალტერნატივა, სცადეთ გაზარდოთ STACKSIZE მნიშვნელობა. გადაატრიალეთ, რამაც გამოიწვია პრობლემა. (მოგვიანებით, არ დაგავიწყდეთ ძველი მნიშვნელობის შეცვლა).

ვინაიდან STACKSIZE-ის გაზრდამ არ უშველა, მეხსიერების დეგრადაციის პრობლემა გაქრა. წინადადებების ღერძი:

    გამორთეთ მეხსიერების ჩანაწერი და შეამოწმეთ მეხსიერების აუზები. UDR-ებისთვის მეხსიერების განაწილების სტატიის "გამართვის პრობლემები" განყოფილებაში განმარტავენ, თუ როგორ უნდა გავაკეთოთ ეს.

    მი_ლვარჩარს შეხედე. განსაკუთრებული პატივისცემით, უნდა აღინიშნოს, რომ mi_lvarchar გადაეცემა ფუნქციას, რომელიც ამოიღებს null ტერმინს არგუმენტად.

    შეამცირეთ CPU (ან სიმძლავრის) VP-ების რაოდენობა ერთზე, რათა პრობლემა გაუარესდეს.

mi_print_stack() -- სოლარისი

Informix Dynamic Server OS Solaris-ისთვის მოიცავს mi_print_stack() ფუნქციას, რომელიც შეიძლება გამოყენებულ იქნას UDR-ში. ოპერაციების დასრულების შემდეგ, ეს ფუნქცია ინახავს სტეკის ჩარჩოს შემდეგ ფაილში:

/tmp/default.stack

თქვენ არ შეგიძლიათ შეცვალოთ გამომავალი ფაილის სახელი, მაგრამ შეგიძლიათ შეცვალოთ მისი გამომავალი DBTEMP ცვლადის მნიშვნელობების შეცვლით. გთხოვთ, გადაამოწმოთ, რომ დირექტორია $DBTEMP უფლება აქვს მიწეროს informix-ის მომხმარებელს. ნაჩვენებია თუ არა mi_print_stack() $MSGPATH-ში.

ეს ფუნქცია ხელმისაწვდომია მხოლოდ OC Solaris-ისთვის.

ლექსიკონი

ტერმინები შემცირებულია და გამოიყენება ამ სტატიაში:

UDRმომხმარებლის მიერ განსაზღვრული რუტინა
ვ.პ.ვირტუალური პროცესორი

ეს სტატია კიდევ ერთხელ ადასტურებს, რომ უსაფრთხოების მიდგომების ნებისმიერი კომპლექსი საჭიროა განვითარების ყველა ეტაპის დასაფარად: განვითარება, ხორხი, სისტემის ადმინისტრირება, სავალდებულო, ორგანიზაციული მიდგომები. საინფორმაციო სისტემებში უსაფრთხოების მთავარი საფრთხე თავად „ადამიანური ფაქტორია“. მიდგომების ეს ნაკრები შეიძლება იყოს გონივრული და დაბალანსებული: აზრი არ აქვს და ნაკლებად სავარაუდოა, რომ საკმარისი ფული დაინახოს თავდაცვის ორგანიზებისთვის, რაც აჭარბებს თავად მონაცემებს.

შედი

1C: Enterprise არის ყველაზე ვრცელი ღრუბლოვანი სისტემა რუსეთში, მაგრამ, ამის მიუხედავად, 8.0 ვერსიამდე, მისი გამყიდველები ძალიან მცირე პატივს სცემდნენ სასურსათო უსაფრთხოებას. ძირითადად, ეს ნაკარნახევი იყო პროდუქტის ფასით და მცირე ბიზნესზე ფოკუსირებით, ყოველდღიური კვალიფიცირებული IT სპეციალისტებით და დაცული სისტემის განვითარებისა და მხარდაჭერის შესაძლო რისკი ბიზნესისთვის აკრძალვით ძვირი დაუჯდებოდა. 8.0 ვერსიის გამოშვებით, აქცენტი ოდნავ შეიცვლება: მნიშვნელოვნად გაიზარდა გადაწყვეტის დონე, სისტემა მნიშვნელოვნად მასშტაბური და კომპაქტური გახდა - მახასიათებლები მნიშვნელოვნად შეიცვალა. სისტემა გახდა საიმედო და მოპარული - საკვები კიდევ უფრო ინდივიდუალურია. უშუალო ბიზნესის ძირითადი საინფორმაციო სისტემა შეიძლება დაკმაყოფილდეს მინიმუმ ამჟამინდელი უსაფრთხოების უპირატესობებით:

  • შიდა მიზეზების გამო სისტემის უკმარისობის შესაძლებლობა დაბალია.
  • კლიენტების სანდო ავტორიზაცია და მონაცემთა დაცვა არასწორი ქმედებებისგან.
  • უცხოელთა უფლებების აღიარების ეფექტური სისტემა.
  • ოპერაციული სისტემა იქმნება სარეზერვო ასლის სახით და განახლდება შეფერხების შემთხვევაში.

კმაყოფილი ხართ 1C:Enterprise 8.0-ზე დაფუძნებული გადაწყვეტილებებით ასეთი უპირატესობებით? მკაფიო პასუხი არ არის. დაშვების კონტროლის სისტემაში ცვლილებების მნიშვნელობის მიუხედავად, დიდი გამოუყენებელი ენერგიის მიღება შეუძლებელი იყო. მნიშვნელოვანია, რომ, რადგან სისტემა ფრაგმენტირებული და მორგებულია, ყველა მათგანი შეიძლება არ დასრულდეს, არამედ საკმარისი იყოს მსოფლიოში ამ წინსვლისთვის, რათა მოიპოვოს პატივისცემა (და ამავე დროს, მემკვიდრეობა პლატფორმის „ახალგაზრდობა“), ისე, რომ ზედმეტად დაცული გონების ვიკონანისთვის ჭეშმარიტად ტიტანური ზუსილია უნდა გამოიყენოს.

ეს სტატია განკუთვნილია 1C:Enterprise პლატფორმაზე გადაწყვეტილებების დეველოპერებისა და განმახორციელებლებისთვის, ასევე ორგანიზაციების სისტემის ადმინისტრატორებისთვის, რომლებიც იყენებენ 1C:Enterprise-ს და აღწერს ნაბიჯებს, რომლებიც დაკავშირებულია სისტემის კლიენტ-სერვერის ვერსიის შემუშავებასა და კორექტირებაში. ინფორმაციული უსაფრთხოების ორგანიზაციის თვალსაზრისით. ეს მუხლი არ შეიძლება ჩაითვალოს დოკუმენტაციის შემცვლელად, არამედ მიუთითებს გარკვეულ პუნქტებზე, რომლებიც მასში ჯერ არ არის გამოვლენილი. და, რა თქმა უნდა, ეს სტატია, არა მთელი დოკუმენტაცია, ვერ გადმოსცემს მოპარული საინფორმაციო სისტემის პრობლემის სირთულეს, რომელიც ამავდროულად შეიძლება დაკმაყოფილდეს უსაფრთხოების, პროდუქტიულობის, ხელმისაწვდომობის და ზედმეტად დამაკმაყოფილებელი უპირატესობებით. ფუნქციონირება ი.

კლასიფიკაცია და ტერმინოლოგია

სტატიის მთავარი თემა საინფორმაციო საფრთხეებია.

საინფორმაციო საფრთხე– სიტუაციის შესაძლებლობა, როდესაც მონაცემების არაავტორიზებული წაკითხვა, კოპირება, შეცვლა ან დაბლოკვა ხდება.

მე, ამ მნიშვნელობიდან გამომდინარე, სტატისტიკა საინფორმაციო საფრთხეებს შემდეგნაირად კლასიფიცირებს:

  • მონაცემთა არასანქცირებული შემცირება
  • მონაცემების არასანქცირებული შეცვლა
  • მონაცემთა უნებართვო კოპირება
  • მონაცემების არასანქცირებული კითხვა
  • მონაცემთა მიუწვდომლობა

ყველა საფრთხე იყოფა რეალურ და გაუთვალისწინებელ. რეალიზებული ინფორმაციული საფრთხე ე.წ ინციდენტი. სისტემის მახასიათებლები:

დაღვრა- თვისებები, რომლებიც იწვევს ინციდენტებს მოდი ზახისტუში- ფუნქციები, რომლებიც ბლოკავს ინციდენტის შესაძლებლობას

ძირითადად, განიხილება ამ ტიპის ცვლილებები, რომელთა მართებულობა განპირობებულია თავად ტექნოლოგიური პლატფორმის სტაგნაციით: Enterprise 8.0 კლიენტ-სერვერის ვერსიაში (მაშინაც კი, თუ არ გესმით მხოლოდ 1C ან 1C 8.0) . სისტემის მნიშვნელოვანი ძირითადი როლებია:

  • ოპერატორები– თანამშრომლები, რომლებიც იზიარებენ მონაცემთა გადახედვისა და შეცვლის უფლებას გამოყენებული როლით, მაგრამ არ აქვთ ადმინისტრაციული ფუნქციები
  • Სისტემის ადმინისტრატორი- მომხმარებლები, რომლებსაც აქვთ ადმინისტრაციული უფლებები სისტემაში, მათ შორის ადმინისტრაციული უფლებები დამატებითი სერვერის ოპერაციულ სისტემებზე და MS SQL სერვერზე, ადმინისტრაციული უფლებები MS SQL-ზე და ა.შ.
  • IB ადმინისტრატორი- კორესპონდენტები, რომლებსაც აქვთ დელეგირებული ადმინისტრაციული ფუნქციები 1C საინფორმაციო ბაზაში (როგორიცაა კლიენტურის დამატება, ტესტირება და კორექტირება, სარეზერვო ასლი, აპლიკაციის გადაწყვეტილებების კორექტირება და ა.შ.)
  • სისტემის დისტრიბუტორები- კორისტუვაჩები, რომლებიც შეიმუშავებენ გამოყენებით გადაწყვეტილებებს. დედებს შეუძლიათ მხოლოდ ოპერაციულ სისტემაზე წვდომა.
  • პირები, რომლებსაც არ აქვთ პირდაპირი წვდომა სისტემაში– მომხმარებლები, რომლებსაც არ აქვთ დელეგირებული წვდომის უფლებები 1C-ზე, მაგრამ რომლებსაც სხვა გზით შეუძლიათ წვდომა სისტემის მუშაობაზე (დამოკიდებულია იმავე Active Directory დომენის ყველა მომხმარებელზე, რომელშიც სისტემა დაინსტალირებულია). ეს კატეგორია განიხილება მანამ, სანამ სისტემაში პოტენციურად სახიფათო სუბიექტებს გამოვავლენთ.
  • ავტომატური ადმინისტრაციული სკრიპტები- პროგრამები, რომლებიც დელეგირებენ გარკვეულ ფუნქციებს, შექმნილია მოქმედებების ავტომატური შესრულებისთვის (მაგალითად, მონაცემთა იმპორტ-ექსპორტი)

აქ აუცილებელია ორი პუნქტის აღნიშვნა: პირველ რიგში, ეს კლასიფიკაცია არის ძალიან უხეში და არ მოიცავს კანის ჯგუფის შუა ზონას - ასეთი განყოფილება შეიქმნება გარკვეული სპეციფიკური ტიპებისთვის და სხვა გზით, ეს არის გადაეცემა სხვა პირებს და არ შეუძლია წვლილი შეიტანოს სისტემის მუშაობაში. ის შეიძლება იყოს დაცული გარე საშუალებებით 100% 1C.

შეიძლება თუ არა რაიმე უსაფრთხოების სისტემა შეიქმნას სისრულისა და უსაფრთხოების უზრუნველსაყოფად. საინფორმაციო სისტემის განვითარებამდე და დანერგვამდე აუცილებელია იმის უზრუნველყოფა, რომ სისტემის დაცვის ღირებულებაა:

  • ინფორმაციის ღირებულება, რომელიც დაცულია;
  • ინციდენტში წვლილი (რეალური საფრთხის შემთხვევაში);
  • ფინანსური რისკები ინციდენტის შემთხვევაში

სისულელე და უხერხულია თავდაცვის ორგანიზება, რომელიც მნიშვნელოვნად ძვირია, მისი ფინანსური ეფექტურობის დაბალი შეფასება. ინფორმაციის დაკარგვის რისკების შეფასების არაერთი მეთოდი არსებობს და ამ სტატისტიკას შორის არის განსხვავებები. კიდევ ერთი მნიშვნელოვანი ასპექტია ბალანსის დამყარება, რაც ყველაზე ხშირად არის შესაძლებელი ინფორმაციის უსაფრთხოების, სისტემის პროდუქტიულობის, სიმარტივის გამოყენებისა და სისტემის მუშაობის სიმარტივის, განვითარებისა და განლაგების სიჩქარის და საინფორმაციო სისტემების სხვა უპირატესობების მისაღწევად

სისტემის ინფორმაციული უსაფრთხოების მექანიზმის ძირითადი მახასიათებლები

1C: Enterprise 8.0 ხელმისაწვდომია ორი ვერსიით: ფაილი და კლიენტ-სერვერი. ფაილის ვერსიის გამოყენება შეუძლებელია ისე, რომ უზრუნველყოს სისტემის ინფორმაციული უსაფრთხოება შემდეგი მიზეზების გამო:

  • ეს კონფიგურაციის მონაცემები ინახება ფაილში, რომელიც იკითხება და იწერება სისტემის ყველა მომხმარებლის მიერ.
  • როგორც ქვემოთ იქნება ნაჩვენები, სისტემის ავტორიზაციის მართვა ძალიან მარტივია.
  • სისტემის მთლიანობას უზრუნველყოფს მხოლოდ კლიენტის ნაწილის ბირთვი.

კლიენტ-სერვერის ვარიანტი ინფორმაციის შესანახად იყენებს MS SQL Server-ს, რომელიც უზრუნველყოფს:

  • შეინახეთ თქვენი მონაცემები უფრო საიმედოდ.
  • ფაილების იზოლირება პირდაპირი წვდომისთვის.
  • უფრო დეტალური გახდა ტრანზაქციებისა და დაბლოკვის მექანიზმები.

სისტემის ფაილის და კლიენტ-სერვერის ვერსიის მნიშვნელობის მიუხედავად, ისინი ქმნიან ერთიანი წვდომის კონტროლის სქემას აპლიკაციის გადაწყვეტის დონეზე, რომელიც უზრუნველყოფს შემდეგ შესაძლებლობებს:

  • კორისტუვაჩის ავტორიზაცია 1C-ში მითითებული პაროლის გამოყენებით.
  • ბუღალტერის ავტორიზაცია Windows-ის ზუსტი ბუღალტერისთვის.
  • როლების მინიჭება სისტემის თანამშრომლებისთვის.
  • ადმინისტრაციული ფუნქციების დაყოფა როლებად.
  • როლებისთვის ხელმისაწვდომი ინტერფეისების მინიჭება.
  • მეტამონაცემების ობიექტებზე წვდომის შეზღუდვა როლების მიხედვით.
  • როლებისთვის ობიექტების დეტალებზე წვდომის გაზიარება.
  • მონაცემთა ობიექტებზე წვდომის შეზღუდვა როლებითა და სესიის პარამეტრებით.
  • ინტერაქტიული წვდომის ინტერვენცია მონაცემებსა და კონფიგურირებულ მოდულებზე.
  • Deyaki obezhenya vikonannya კოდი.

ზოგადად, მონაცემთა წვდომის სქემა, რომელიც ანალიზდება, დამახასიათებელია ამ დონის საინფორმაციო სისტემებისთვის. თუმცა, ტრილანკის კლიენტ-სერვერის არქიტექტურის ამ განხორციელებას აქვს მრავალი მნიშვნელოვანი ასპექტი, რაც იწვევს აშკარად დიდი რაოდენობის გადამტანს:

  1. არსებობს მონაცემთა დამუშავების ეტაპების დიდი რაოდენობა და კანის ეტაპზე შეიძლება არსებობდეს ობიექტებთან წვდომის განსხვავებული წესები.

    მონაცემთა დამუშავების ეტაპების დიაგრამა, რომელიც უსაფრთხოდ არის მიჩნეული, საგულდაგულოდ არის გამარტივებული და ნაჩვენებია ნახაზ 1-ში. 1C-ის ფუნდამენტური წესია სამყაროს შორის საზღვრის შეცვლა და სქემის უკან გადასვლა ქვევით, ისე, რომ ერთ-ერთ ზედა დონეზე გავრცელებამ შეიძლება გააფუჭოს სისტემის მუშაობა ყველა დონეზე.

  2. დონიდან დონეზე გადასვლისას გადატანილი მონაცემების მონიტორინგის დადგენილი პროცედურების არარსებობა.

    სამწუხაროდ, სისტემის ყველა შიდა მექანიზმი სრულყოფილად არ არის განვითარებული, განსაკუთრებით არაინტერაქტიული მექანიზმები, რომელთა განვითარება რთულია ერთი მხრივ, მაგრამ უფრო საიმედოა მეორეს მხრივ. ეს „დაავადება“ პრობლემას არ წარმოადგენს, მათ შორის 1C კომპანიის ჩათვლით, მაგრამ გავრცელებულია მრავალი სერვერის პროდუქტში, უმეტესი მოვაჭრეებისგან. დარჩენილი ბედის წყალობით, ამ პრობლემებისადმი პატივისცემა მნიშვნელოვნად გაიზარდა.

  3. დეველოპერებისა და სისტემის ადმინისტრატორების საშუალო კვალიფიკაცია, რომელიც ხელმისაწვდომი იყო წინა ვერსიაში, არასაკმარისად მაღალია.

    1C:Enterprise ხაზის პროდუქტები თავდაპირველად ორიენტირებული იყო განვითარების გამარტივებაზე და მცირე ორგანიზაციებში მუშაობის მხარდაჭერაზე, ამიტომ გასაკვირი არ არის, რომ ისტორიულად ის ისე განვითარდა, რომ გამოყენებითი გადაწყვეტილებების "დეველოპერების" და "ადმინისტრატორების" დეველოპერების მნიშვნელოვანი ნაწილი. სისტემებს არ გააჩნიათ სამუშაოსთვის საკმარისი ცოდნა და უნარები ეს არის მნიშვნელოვნად მოწინავე პროდუქტი, რომელიც არის ვერსია 8.0. პრობლემა გართულებულია და ფრენჩაიზის კომპანიებში მიღებული პრაქტიკა არის „ბრძოლაში“ დაწყება იმ კლიენტების გულისთვის, რომლებიც სისტემატურად არ უახლოვდებიან მათ დიეტას. აუცილებელია 1C კომპანიის სათანადო მხარდაჭერა, რათა რამდენიმე დაღუპვის შემდეგ ეს მდგომარეობა თანდათან გაუმჯობესდეს: სერიოზული ფრენჩაიზის კომპანიები სულ უფრო და უფრო უახლოვდებიან პერსონალის დაქირავების პრობლემას, ინფორმაციის დონის და ტექნოლოგიური მხარდაჭერის მხრივ. 1C კომპანია მნიშვნელოვანია, მათ გამოაცხადეს სასერტიფიკაციო პროგრამები მომსახურების უმაღლეს სტანდარტზე ორიენტირებისთვის; თუ სიტუაციის დაუყოვნებლივ გამოსწორება შეუძლებელია, მაშინ ამ თანამდებობის პირმა უნდა ჩაატაროს სისტემის უსაფრთხოების ანალიზი.

  4. პლატფორმის ხანმოკლე სიცოცხლე აღდგა.

    მსგავსი პირდაპირობის პროდუქტებს შორის და ერთ-ერთი ყველაზე ახალგაზრდა გადაწყვეტის ვიკორიზირების მიზნით. Big-mensch-ის პლატფორმის ფუნქციონალობა ბედზე ნაკლებს გადაურჩა. ამასთან, პლატფორმის გამოშვება, დაწყებული 8.0.10-დან (რომელშიც თავად გამოშვება იყო დანერგილი სისტემის ყველა უმნიშვნელო შესაძლებლობა), საგრძნობლად უფრო სტაბილური ხდება წარსულში. ტიპიური აპლიკაციის გადაწყვეტილებების ფუნქციონირება ჯერ კიდევ იზრდება არა ყოველდღე, არამედ ყოველდღე, თუმცა პლატფორმის შესაძლებლობები შემოიფარგლება სიმძლავრის ნახევარზე. რა თქმა უნდა, ასეთ გონებაში ისინი საუბრობენ სტაბილურობაზე, შეგიძლიათ ამაზე ისაუბროთ გონებრივად, მაგრამ ზოგადად უნდა იცოდეთ, რომ უკვე ბევრი გადაწყვეტა 1C 8.0 პლატფორმაზე მნიშვნელოვნად აღემატება ფუნქციონალურობასა და პროდუქტიულობას (და არა როგორც სტაბილურობას, ასევე სტაბილურობას) არის მსგავსი გადაწყვეტილებები 1C 7.7 პლატფორმაზე.

შემდეგ, სისტემა (და, შესაძლოა, ტიპიური აპლიკაციის გადაწყვეტა) შემუშავებულია ბიზნესისთვის და დაინსტალირებულია კომპიუტერზე. უპირველეს ყოვლისა, აუცილებელია ისეთი შუალედური ადგილის შექმნა, ამ შემთხვევაში 1C-ის უსაფრთხოების რეგულირების გრძნობა და რისთვისაც აუცილებელია მისი რეგულირება ისე, რომ შეღავათები იყოს სისტემა ბუნებრივად მიედინება სისტემის უსაფრთხოებაში დასრულებულია.

დაიცავით უსაფრთხოების მკაცრი წესები.

ჩვენ ვერ ვისაუბრებთ სისტემის რაიმე ინფორმაციულ უსაფრთხოებაზე, ვინაიდან დაცული სისტემების შექმნის ძირითადი პრინციპები არ არის დაცული. დარწმუნდით, რომ გადალახეთ ეს, რათა გინდოდეთ, რომ თქვენი გონება ასე იყოს დაცული:

  • სერვერებზე წვდომა ფიზიკურად არის დაკავშირებული და უზრუნველყოფილია უწყვეტი ოპერაციით:
    • სერვერის აღჭურვილობა უზრუნველყოფს საიმედოობას, მოწყობილია გაუმართავი სერვერის აღჭურვილობის შეცვლა, განსაკუთრებით კრიტიკული აპლიკაციებისთვის გამოიყენება დუბლირებული ტექნიკის უსაფრთხოების სქემები (RAID, მრავალი მოწყობილობის მხარდაჭერა, მრავალი საკომუნიკაციო არხი ku toscho);
    • სერვერები ჩაკეტილია და მდებარეობა ღიაა მხოლოდ ერთი საათის განმავლობაში, რომლის ამოღებაც შეუძლებელია;
    • სერვერების ადგილმდებარეობის გახსნის უფლება და მხოლოდ ერთ ან ორ შემთხვევაში, საგანგებო სიტუაციის შემთხვევაში, შემუშავებულია სხვა ადამიანების გაფრთხილების სისტემა;
    • უზრუნველყოფილია სერვერების უწყვეტი ელექტრომომარაგება
    • უზრუნველყოფილია ნორმალური კლიმატური პირობები და სამუშაო პირობები;
    • მიმდებარე სერვერებს აქვთ ხანძრის სიგნალიზაცია და არ არსებობს დატბორვის რისკი (განსაკუთრებით პირველი და დარჩენილი ზედაპირები);
  • ბიზნესის ქსელი და საინფორმაციო ინფრასტრუქტურა სწორად არის მორგებული:
    • Firewall-ები დაინსტალირებული და კონფიგურირებულია ყველა სერვერზე;
    • ყველა ანგარიში და კომპიუტერი ავტორიზებულია საზღვარზე, პაროლები ინახება ისე, რომ მათი აღება შეუძლებელია;
    • სისტემის ოპერატორებს აქვთ საკმარისი უფლებები სისტემის ნორმალური მუშაობისთვის, მაგრამ არ აქვთ უფლება ადმინისტრაციულ ქმედებებზე;
    • ყველა კომპიუტერს აქვს დაინსტალირებული და ჩართული ანტივირუსული ფუნქციები;
    • მნიშვნელოვანია, რომ კლიენტებს (ქსელის ადმინისტრატორების გარდა) არ ჰქონდეთ ადმინისტრაციული უფლებები კლიენტის სამუშაო სადგურებზე;
    • ინტერნეტთან და მნიშვნელოვანი ინფორმაციის მატარებლებთან წვდომა ექვემდებარება რეგულაციებს და შეზღუდვებს;
    • უსაფრთხოების სისტემის სისტემის აუდიტი შეიძლება მოიცავდეს კორექტირებას;
  • შემდეგი არის ძირითადი ორგანიზაციული კვების პარამეტრები:
    • კლერკებს აქვთ საკმარისი კვალიფიკაცია 1C-თან და აპარატურასთან მუშაობისთვის;
    • შესაბამისი შეტყობინებები მუშაობის წესების დარღვევის ალბათობის შესახებ;
    • აღიარებულია, როგორც მატერიალურად შეესაბამება საინფორმაციო სისტემის ფიზიკურ ელემენტს;
    • ყველა სისტემის ერთეული დალუქულია და დახურულია;
    • განსაკუთრებული პატივისცემა უნდა დაეთმოს ოფისის დამლაგებლების, განგაშის მუშაკებისა და ელექტრიკოსების ინსტრუქტაჟს და ზედამხედველობას. ამ პირებს შეუძლიათ, დაუდევრობით, განავითარონ ზიანი, რაც არ უტოლდება სისტემის უდავო კორუფციით გამოწვეულ არასაჭირო ზიანს.

პატივისცემა!ეს სია არ არის ამომწურავი, მაგრამ მხოლოდ აღწერს მათ, რაც ხშირად გამოტოვებულია რთულ და ძვირადღირებულ საინფორმაციო სისტემასთან გამკლავების მცდელობისას!

  • MS SQL Server, დამატებითი სერვერი და კლიენტის ნაწილი მუშაობს სხვადასხვა კომპიუტერზე, სერვერული პროგრამები მუშაობს სპეციალურად შექმნილი Windows მომხმარებლების უფლებებით;
  • MS SQL სერვერისთვის
    • დაყენებულია შერეული ავტორიზაციის რეჟიმი
    • MS SQL მომხმარებლები, რომლებიც უნდა შევიდნენ სერვერის ადმინისტრატორის როლში, არ მიიღებენ მონაწილეობას 1C რობოტიდან,
    • თითოეული IB 1C-სთვის შეიქმნა ცალკე MS SQL სისტემა, რომელსაც არ აქვს პრივილეგირებული წვდომა სერვერზე,
    • ერთი IB-ის MS SQL მომხმარებელი არ იძლევა წვდომას სხვა IB-ზე;
  • Koristuvachs არ იძლევა პირდაპირ წვდომას დამატებითი სერვერის და MS SQL სერვერის ფაილებზე
  • ოპერატორების სამუშაო სადგურები აღჭურვილია Windows 2000/XP-ით (არა Windows 95/98/Me)

არ გამოტოვოთ სისტემის დეველოპერების რეკომენდაციები და წაიკითხოთ დოკუმენტაცია. სისტემის დასაყენებლად მნიშვნელოვანი მასალები გამოქვეყნებულია ITS დისკებზე "მეთოდური რეკომენდაციების" განყოფილებაში. განსაკუთრებული ყურადღება მინდა გავამახვილო შემდეგ სტატისტიკაზე:

  1. რობოტული პროგრამების მახასიათებლები 1C: Enterprise სერვერის გამოყენებით
  2. მონაცემთა განთავსება 1C: Enterprises 8.0
  3. განახლება 1C: Enterprise 8.0 Microsoft Windows-ის მომხმარებლების მიერ ადმინისტრატორის უფლებების გარეშე
  4. კორისტუვაჩების სიის რედაქტირება კორისტუვაჩის სახელწოდებით, რომელსაც არ აქვს ადმინისტრაციული უფლებები
  5. Windows XP SP2 firewall პარამეტრების რეგულირება SQL Server 2000-ისთვის და SQL Server Desktop Engine (MSDE)
  6. COM+ Windows XP SP2 პარამეტრების რეგულირება რობოტის სერვერისთვის 1C: Enterprise 8.0
  7. Firewall-ის პარამეტრების კონფიგურაცია Windows XP SP2-ში რობოტის სერვერისთვის 1C: Enterprise 8.0
  8. Windows XP SP2 firewall პარამეტრების რეგულირება HASP License Manager-ისთვის
  9. საინფორმაციო მონაცემთა ბაზის სარეზერვო ასლის შექმნა SQL Server 2000-ის გამოყენებით
  10. ელექტრომომარაგება დაინსტალირებული და კონფიგურირებულია 1C: Enterprises 8.0 "კლიენტ-სერვერის" ვერსიაში(ერთ-ერთი ყველაზე მნიშვნელოვანი სტატია)
  11. Windows Server 2003-ის დაყენების მახასიათებლები 1C:Enterprise 8.0 სერვერის ინსტალაციის დროს
  12. კლიენტების საინფორმაციო ბაზაზე წვდომის რეგულირება კლიენტ-სერვერის ვერსიაში(ერთ-ერთი ყველაზე მნიშვნელოვანი სტატია)
  13. სერვერი 1C: საწარმოები და SQL სერვერი
  14. დეტალურია 1C:Enterprise 8.0-ის დაყენების პროცედურა "კლიენტ-სერვერის" ვერსიაში.(ერთ-ერთი ყველაზე მნიშვნელოვანი სტატია)
  15. გადმოწერილი ენის Vykoristannya 1C:Enterprise სერვერზე

თუმცა, დოკუმენტაციის კითხვისას, კრიტიკულად არის განწყობილი ინფორმაციის წაშლა, მაგალითად, სტატია „1C:Enterprise 8.0-ის დენის ინსტალაცია და დაყენება „კლიენტ-სერვერის“ ვარიანტში“ ზუსტად არ აღწერს უფლებებს, რომლებიც საჭიროა chevi. USER1CV8SERVER. ქვემოთ მოცემულ სიაში, შეტყობინებები იქნება ჩამოთვლილი, მაგალითად, [ITS1] ნიშნავს სტატიას „1C: Enterprise სერვერთან მუშაობის თავისებურებები“. სტატისტიკაში მოცემული ყველა ინფორმაცია მოცემულია ITS-ის მიმდინარე გამოცემაში წერის მომენტში (2006 წლიდან)

Vikorist ავტორიზაციის შესაძლებლობისთვის Windows ავტორიზაციასთან ერთად

კლიენტებისთვის ავტორიზაციის ორი შესაძლო რეჟიმიდან: 1C დამონტაჟებულია და კომბინირებულია Windows OS ავტორიზაციასთან - კომბინირებული ავტორიზაციის არჩევის შესაძლებლობის მიხედვით. მნიშვნელოვანია, რომ ჰაკერებს მივცეთ საშუალება, არ შეასრულონ ძალიან ბევრი პაროლი სამუშაო საათის განმავლობაში, ვიდრე შეამცირონ სისტემის უსაფრთხოების დონე. თუმცა, მათთვის, ვისაც არ სჭირდება Windows ავტორიზაცია, მნიშვნელოვანია პაროლის დაყენება დაწყებისას და შემდეგ ამ მომხმარებლისთვის 1C ავტორიზაციის ჩართვა. სისტემის განახლებისთვის აუცილებელია Active Directory-ის ნებისმიერი სტრუქტურიდან ამოიღოთ მინიმუმ ერთი ანგარიშის მენეჯერი, რომელსაც შეუძლია სისტემაში შესვლა 1C ავტორიზაციის გამოყენებით.

გამოყენებითი გადაწყვეტილებების როლების შექმნა, არ აძლევთ უფლებებს „რეზერვში“

აპლიკაციის გადაწყვეტის თითოეულ როლს შეუძლია აირჩიოს უფლებების მინიმალური აუცილებელი ნაკრები ამ როლისთვის შესაბამისი მოქმედებების დასრულებამდე. ვისი როლებიც შეიძლება დამოუკიდებლად ითამაშო. მაგალითად, გარე პროცესების ინტერაქტიულად დასაწყებად, შეგიძლიათ შექმნათ გარე როლი და მისცეთ ისინი ყველა კონტრიბუტორს, რომელიც შეიძლება იყოს ჩართული გარე პროცესებში.

ჩაატარეთ სარეგისტრაციო ჟურნალების და რობოტების სისტემის პროტოკოლების რეგულარული მიმოხილვა

თუ შესაძლებელია, დაარეგულირეთ და ავტომატიზირდით სარეგისტრაციო ჟურნალების და რობოტების სისტემის პროტოკოლების განხილვა. სათანადო მენეჯმენტით და ჟურნალების რეგულარული მიმოხილვით (მხოლოდ მნიშვნელოვანი თემების გაფილტვრა), შეგიძლიათ დაუყოვნებლივ აღმოაჩინოთ არაავტორიზებული ქმედებები ან დაეხმაროთ მათ თავიდან აცილებას მომზადების ეტაპზე.

კლიენტ-სერვერის ვერსიის ზოგიერთი მახასიათებელი

ეს განყოფილება აღწერს კლიენტ-სერვერის ვერსიის სპეციფიკურ მახასიათებლებს და მათ უსაფრთხოებას. წაკითხვის უფრო მარტივი მიზნით, მიღებულია შემდეგი აღნიშვნები:

პატივისცემა! ჩამოსხმის აღწერა

ინფორმაციის შენახვა, რომელიც აკონტროლებს სისტემაში წვდომას

IB ბუღალტერთა სიის შენახვა

ყველა ინფორმაცია IB ანგარიშის მონაცემების სიის და მასში არსებული როლების შესახებ ინახება Params ცხრილში MS SQL მონაცემთა ბაზაში (დივ. [ITS2]). ამ ცხრილის სტრუქტურის დათვალიერებისას აშკარა ხდება, რომ ანგარიშების შესახებ ყველა ინფორმაცია ინახება ჩანაწერში FileName ველის მნიშვნელობებით - "users.usr".

ასე რომ, ვინაიდან ჩვენ ვაღიარებთ, რომ ჰაკერები არ აძლევენ წვდომას MS SQL მონაცემთა ბაზაში, მაშინ ამ ფაქტს თავად ვერ იცავს კრიმინალი, თუმცა, როგორც კი შესაძლებელი გახდება კოდის შექმნა MS SQL-ში, ეს ხსნის კარს რაიმეს უარყოფისთვის ( !) წვდომა 1C-დან. იგივე მექანიზმი (მცირე ცვლილებებით) შეიძლება გამოყენებულ იქნას სისტემის ფაილური ვერსიის შესაცვლელად, რაც ფაილური ვერსიის მახასიათებლებიდან გამომდინარე, სრულად აფერხებს მათ სტაგნაციას უსაფრთხო სისტემებში.

რეკომენდაცია:ამ დროისთვის არ არსებობს გზა, რომ მთლიანად გაანადგუროთ პროგრამა ასეთი ცვლილებისგან, გარდა MS SQL სერვერზე ტრიგერების გამოყენებისა, რამაც, თავის მხრივ, შეიძლება გამოიწვიოს პრობლემები პლატფორმის ვერსიის განახლებისას ან ძირითადი სიის შეცვლისას ch_v. ასეთი ცვლილებების განსახორციელებლად, შეგიძლიათ შეამოწმოთ 1C რეესტრის ჟურნალი (იგულისხმება "საეჭვო" შესვლა კონფიგურატორის რეჟიმში შესვლის გარეშე) ან მუდმივად გაუშვათ SQL Profiler (რაც შეიძლება უარყოფითად იმოქმედოს სისტემის პროდუქტიულობაზე) ან დაარეგულიროთ Alerts მექანიზმის გამოყენება ( სწრაფად ყველაფრისთვის, სწრაფად vikoristannyam ტრიგერებიდან)

სერვერზე ინფორმაციის შენახვა IB სიის შესახებ

თითოეული 1C დამატებითი სერვერი ინახავს ინფორმაციას MS SQL-ის ახალ მონაცემთა ბაზასთან კავშირების სიის შესახებ. p align="justify"> ვიკორისტების მუშაობის თითოეული საინფორმაციო ბაზა მოიცავს კავშირების საკუთარ სერიას დამატებით სერვერსა და MS SQL სერვერს შორის. ინფორმაცია სერვერზე საინფორმაციო ბაზის პროგრამების რეგისტრაციის შესახებ დაკავშირების სტრიქონებთან ერთად ინახება ფაილში srvrib.lst, რომელიც დაინსტალირებულია სერვერზე კატალოგში.<Общие данные приложений>/1C/1Cv8 (მაგალითად, C:/Documents and Settings/All User/Application Data/1C/1Cv8/srvrib.lst). თითოეული IB-ისთვის შეინახება კავშირის ახალი შეკვეთა, რომელიც მოიცავს MS SQL მომხმარებლის პაროლს შერეული MS SQL ავტორიზაციის მოდელის მიხედვით. ამ ფაილის არსებობა საშუალებას გაძლევთ თავიდან აიცილოთ არასანქცირებული წვდომა MS SQL მონაცემთა ბაზაში და, როგორც ერთი მონაცემთა ბაზაში წვდომის რეკომენდაციების საწინააღმდეგოდ, უნდა გამოიყენოთ პრივილეგირებული მომხმარებლის ანგარიში (მაგალითად, "sa"), მაშინ მხოლოდ ერთი საფრთხეა. ї IB არის საფრთხე მთელი სისტემისთვის, რომელიც vikoryst MS SQL.

ეს ნიშნავს, რომ შერეულმა ავტორიზაციამ და Windows-ის ავტორიზაციამ MS SQL სერვერზე შეიძლება გამოიწვიოს სხვადასხვა სახის პრობლემები, როდესაც ფაილზე წვდომა აკრძალულია. ასე რომ, Windows ავტორიზაციის მთავარი უარყოფითი ავტორიტეტები იქნება:

  • ყველა IB-ის მუშაობა დამატებით სერვერზე და MS SQL სერვერზე უფლებების ერთი ნაკრების ქვეშ (სავარაუდოდ ყველაფერზე, რაც გადაჭარბებულია)
  • 1C დამატებითი სერვერის (ან ძირითად ვერსიაში, როგორც მომხმარებლის ანგარიში USER1CV8SERVER ან მისი ანალოგი) პროცესის მეშვეობით პაროლის შეყვანის გარეშე, შეგიძლიათ მარტივად დაუკავშირდეთ ნებისმიერ ინტერნეტ სერვისს პაროლის შეყვანის გარეშე.

მეორეს მხრივ, თავდამსხმელს შეუძლია დამატებითი კოდის ამოღება მომხმარებლის კონტექსტიდან USER1CV8SERVER უფრო რთული გზით, მნიშვნელობის ფაილის წაშლის გარეშე. საუბრის წინ, ასეთი ფაილის არსებობა არის კიდევ ერთი არგუმენტი სერვერის ფუნქციების გამოყოფისთვის სხვადასხვა კომპიუტერიდან.

რეკომენდაცია: srvrib.lst ფაილი შეიძლება იყოს ხელმისაწვდომი მხოლოდ სერვერის პროცესისთვის. Obov'yazkovo-მ შექმნა აუდიტი ფაილის შესაცვლელად.

სამწუხაროდ, ეს ფაილი შეიძლება არ მოიპაროს წაკითხვისგან, რაც აუცილებელია ხორხის სისტემის ანთების დროს დასაცავად. იდეალური ვარიანტი იქნება დამატებითი სერვერის მიერ ამ ფაილის წაკითხვა-ჩაწერაზე მუშაობა (სერვერის კავშირების წაკითხვისა და ჩაწერის ჩათვლით).

ავტორიზაციის ხანგრძლივობა სერვერზე IB-ის შექმნისას

პატივისცემა! ავტორიზაციის მოთხოვნასთან დაკავშირებული საკითხი გამოსწორდა 1C:Enterprise პლატფორმის 8.0.14 გამოშვებაში. ამ გამოშვებაში გამოჩნდა კონცეფცია "1C: Enterprise Server Administrator" და სანამ სერვერზე მითითებულია ადმინისტრატორების სია, სისტემა მუშაობს ისე, როგორც ქვემოთ აღწერილია, ასე რომ არ დაივიწყოთ ეს შესაძლო ფუნქცია.

რა თქმა უნდა, ამ განყოფილების ყველაზე დიდი გავლენა არის IB დამატებითი სერვერის დამატების შესაძლებლობა, რის შედეგადაც ნებისმიერი მომხმარებელი, რომელიც უარყოფს წვდომას დანამატის სერვერზე, ავტომატურად შეძლებს დამატებითი კოდის გაშვებას დანამატზე. სერვერი. მოდით შევხედოთ კონდახს.

ამის ბრალია, მაგრამ სისტემა დაინსტალირებულია მიმდინარე ვერსიაში

  • MS SQL Server 2000 (მაგალითად, SRV1 განზომილება)
  • სერვერი 1C: Enterprise 8.0 (SRV2 შერწყმა)
  • კლიენტის ნაწილი 1C: Enterprise 8.0 (WS მართვა)

გადადის, რომ კლიენტს (შემდგომში USER), რომელიც მუშაობს WS-ზე, სურს მინიმალური წვდომა SRV2-ზე რეგისტრირებულ ერთ-ერთ IB-ზე, მაგრამ არ აქვს პრივილეგირებული წვდომა SRV1-ზე და SRV2-ზე. ზოგადად, გადაზღვევის კომპიუტერების მიერ ფუნქციების გამოყენება იწვევს სიტუაციას. სისტემის დაყენება ეფუძნება რეკომენდაციებს დოკუმენტაციაში და ITS დისკებზე. სიტუაცია ნაჩვენებია ნახ. 2.


  • დააყენეთ COM+ უსაფრთხოება დამატებით სერვერზე ისე, რომ 1C მომხმარებლებს უარი ეთქვათ დამატებითი სერვერის პროცესთან დაკავშირების უფლებაზე (დაწვრილებით [ITS12]);
  • ფაილი srvrib.lst ხელმისაწვდომია მხოლოდ USER1CV8SERVER-ის წასაკითხად (სერვერზე ახალი IB-ის დასამატებლად, წერა ნებადართულია);
  • MS SQL-თან დასაკავშირებლად გამოიყენეთ მხოლოდ TCP/IP პროტოკოლი, ამ შემთხვევაში შეგიძლიათ:
    • ცალკეული კავშირები firewall-ის უკან;
    • დააკონფიგურირეთ კავშირი არასტანდარტულ TCP პორტთან, რათა გაამარტივოთ "მესამე მხარის" IB 1C კავშირები;
    • Vikoristovyvat მონაცემთა გადაცემის დაშიფვრა დამატებით სერვერსა და SQL სერვერს შორის;
  • სერვერის firewall-ის კონფიგურაცია ისე, რომ შეუძლებელი იყოს მესამე მხარის MS SQL სერვერებზე თავდასხმა;
  • გამოიყენოს უსაფრთხოების შიდა ზომები, რათა თავიდან აიცილოს არაავტორიზებული კომპიუტერის ლოკალურ საზღვრებში გამოჩენა (IPSec, ჯგუფის უსაფრთხოების პოლიტიკა, firewalls და ა.შ.);
  • ყოველთვის არ მისცეთ ადმინისტრაციული უფლებები USER1CV8SERVER-ს დამატებით სერვერზე.

ვიკიპედია კოდისთვის, რომელიც შედგენილია სერვერზე

თუ აირჩევთ 1C-ის კლიენტ-სერვერის ვერსიას, დეველოპერს შეუძლია გაანაწილოს კავშირის კოდი კლიენტსა და დამატებით სერვერს შორის. იმისათვის, რომ კოდი (პროცედურა ან ფუნქცია) დაიწეროს მხოლოდ სერვერზე, აუცილებელია მისი გაფართოება მთავარ მოდულში, რომლისთვისაც დაყენებულია ავტორიტეტი „სერვერი“ და თუ მოდული დაიწერება მხოლოდ სერვერზე, კოდის გასაფართოვებლად განყოფილებაში, მე გარშემორტყმული ვარ "# Yakshcho სერვერით":

#Yaksto სერვერი Todi
ფუნქცია სერვერზე (Param1, Param2 = 0) ექსპორტი // ეს ფუნქცია, მიუხედავად მისი სიმარტივისა, კონფიგურირებულია სერვერზე
Param1 = Param1 + 12;
შემობრუნება Param1;
ბოლო ფუნქციები
#KіnetsYakshcho

სერვერზე შედგენილი კოდის არჩევისას, თქვენ უნდა უზრუნველყოთ, რომ:

  • კოდი ასოცირდება უფლებებთან USER1CV8SERVER პროგრამის სერვერზე (ხელმისაწვდომი COM ობიექტები და სერვერის ფაილები);
  • კლიენტის ყველა სესია წარმოდგენილია სერვისის ერთი ინსტანციით, ასე რომ, მაგალითად, სერვერზე ხელახალი დაწყობა იწვევს ყველა აქტიური კლიენტის კავშირს;
  • სერვერის მოდულების შემუშავება რთულია (მაგალითად, ადმინისტრატორში წერტილის დაყენება შეუძლებელია), მაგრამ შეიძლება გამორთული იყოს;
  • კონტროლის კლიენტიდან დამატებით სერვერზე და უკან გადატანას შეუძლია მნიშვნელოვანი რესურსების ამოღება დიდი რაოდენობით გადაცემული პარამეტრებით;
  • ინტერაქტიული ფუნქციების (ფორმები, ცხრილების დოკუმენტები, დიალოგური ფანჯრები), გარე გამოხმაურება და კოდის დამუშავება დამატებით სერვერზე შეუძლებელია;
  • გლობალური ცვლილებების (პროგრამის მოდულების ცვლილებები, ხმები „ექსპორტის“ პარამეტრებიდან) ამოღება მიუღებელია;

მოხსენება Div. [ITS15] და სხვა ITS სტატისტიკა.

სერვერზე პასუხისმგებელი პროგრამული უზრუნველყოფა განსაკუთრებულ ყურადღებას უთმობს საიმედოობას. სწორად კონფიგურირებულ კლიენტ-სერვერის სისტემას უნდა ჰქონდეს შემდეგი აზრები:

  • არ არის საჭირო კლიენტის პროგრამები სერვერის მუშაობის შეფერხებისთვის (გარდა ადმინისტრაციული საკითხებისა);
  • პროგრამის კოდის შედგენა შეუძლებელია სერვერზე, კლიენტის წაშლა;
  • რესურსები პასუხისმგებელია კლიენტთა კავშირებს შორის „სამართლიანად“ განაწილებაზე, რაც უზრუნველყოფს სერვერის ხელმისაწვდომობას ნაკადის ტრაფიკის მიუხედავად;
  • თუ არსებობს მონაცემთა დაბლოკვა, კლიენტის კავშირები არ უნდა მუშაობდეს მარტო;
  • სერვერზე არ არის მომხმარებლის ინტერფეისი, წინააღმდეგ შემთხვევაში დაზიანებულია მონიტორინგისა და ჟურნალის ფუნქციები;

ზოგადად, 1C სისტემა შექმნილია ისე, რომ რაც შეიძლება ახლოს მიუახლოვდეს ამ მონაცემებს (მაგალითად, შეუძლებელია გარე პროცესების შედგენა სერვერზე), გარდა არაერთი მიუღებელი ფუნქციისა, ჯერ კიდევ ნათელია, რომ:

რეკომენდაცია:პროგრამული უზრუნველყოფის სერვერული ნაწილის შემუშავებისას რეკომენდებულია მინიმალური ინტერფეისის პრინციპის დაცვა. ტობტო. კლიენტის პროგრამებით სერვერის მოდულში შეყვანის რაოდენობა შეიძლება მჭიდროდ იყოს გამიჯნული და პარამეტრები მკაცრად რეგულირდება. რეკომენდაცია:სერვერზე პროცედურებიდან და ფუნქციებიდან პარამეტრების ამოღებისას აუცილებელია პარამეტრების დამოწმება (პარამეტრების ვალიდობის შემოწმება ტიპისა და მნიშვნელობის დიაპაზონისთვის). მნიშვნელოვანია, რომ არ შეგეშინდეთ სტანდარტული გადაწყვეტილებების, არამედ მძლავრი ტექნოლოგიების გამოყენება ვალიდაციის სირთულის უზრუნველსაყოფად. რეკომენდაცია:სერვერის მხარეს ტექსტური მოთხოვნების (და უფრო მეტიც, Viconati ბრძანების პარამეტრის) შექმნისას, არ აირჩიოთ სტრიქონები, რომლებიც ამოღებულია კლიენტის პროგრამებიდან.

ჩვენი მთავარი რეკომენდაცია იქნება უსაფრთხოების პრინციპების გაცნობა ვებ- დამატებები მონაცემთა ბაზებისთვის და დაიცვან მსგავსი პრინციპები. სინამდვილეში, მსგავსება იყო: ჯერ ერთი, როგორც ვებ-დამატება, დამატებითი სერვერი არის შუალედური სფერო მონაცემთა ბაზასა და კლიენტის ინტერფეისს შორის (მთავარი პასუხისმგებლობა არის ის, რომ ვებ სერვერი ქმნის კლიენტის ინტერფეისს); სხვაგვარად, უსაფრთხოების თვალსაზრისით, ჩვენ არ შეგვიძლია ვენდოთ იმ მონაცემებს, რომლებიც წაერთმევა კლიენტს, რადგან გარე ბგერების შესაძლო გაშვება და დამუშავება.

პარამეტრების გადაცემა

პარამეტრების გადატანა ფუნქციაზე (პროცედურაზე), რომელიც კონფიგურირებულია სერვერზე, საჭიროებს ენერგიის მცირე მიწოდებას. ეს, პირველ რიგში, განპირობებულია მათი გადაცემის აუცილებლობით აპლიკაციის სერვერსა და კლიენტის პროცესებს შორის. როდესაც კონტროლი გადადის კლიენტის ნაწილიდან სერვერის ნაწილზე, ყველა გადაცემული პარამეტრი სერიულირდება, გადადის სერვერზე, შემდეგ „იხსნება“ და იკითხება. სერვერის მხრიდან კლიენტის მხარეზე გადასვლისას პროცესი უკუგდებულია. აქვე უნდა აღინიშნოს, რომ ეს სქემა სწორად ამუშავებს პარამეტრების გადაცემას ინსტრუქციებსა და მნიშვნელობებზე. პარამეტრების გადაცემისას უნდა დაიცვან შემდეგი:

  • შესაძლებელია კლიენტსა და სერვერს შორის (მეორე მხრივ) შეუცვლელი მნიშვნელობების გადატანა (ამ მნიშვნელობების შეცვლა შეუძლებელია): პრიმიტიული ტიპები, გაგზავნილი, უნივერსალური კოლექციები, სისტემის ხელახლა გამოგონილი მნიშვნელობები, კონვერტაციული მნიშვნელობები. თუ სხვა რამის გადაცემას ცდილობთ, კლიენტის პროგრამა იშლება (სერვერს სთხოვს არასწორი პარამეტრის გადაცემას).
  • პარამეტრების გადაცემისას არ არის რეკომენდებული დიდი რაოდენობით მონაცემების გადაცემა (მაგალითად, 1 მილიონ სიმბოლოზე მეტი რიგები), რადგან ამან შეიძლება უარყოფითად იმოქმედოს სერვერის პროდუქტიულობაზე.
  • შეუძლებელია პარამეტრების გადატანა ციკლური გაგზავნის თავიდან ასაცილებლად, როგორც სერვერიდან კლიენტზე, ასევე უკან. თუ თქვენ ცდილობთ გადაიტანოთ ასეთი პარამეტრი, კლიენტის პროგრამები იშლება (სერვერი იძულებულია გადაიტანოს არასწორი პარამეტრი).
  • არ არის რეკომენდებული მონაცემთა კომპლექსური შეგროვების გადაჭარბებაც კი. თუ თქვენ ცდილობთ გადაიტანოთ პარამეტრი შეყვანის ძალიან მაღალი დონით, სერვერი იშლება (!).

პატივისცემა! ამ დროისთვის ყველაზე არასასურველი თვისება, რა თქმა უნდა, არის დასაკეცი კოლექციების გადაცემის შემცირება. ასე, მაგალითად, კოდი: Investment Rate = 1250;
M = Noviy Masiv;
პარამეტრი = M;
ანგარიშისთვის = 1 RivenInvestment ციკლის მიხედვით
MVintr = Noviy Masiv;
მ.დოდატი(MVInt);
M = MVint;
KіnetsCycle;
სერვერის ფუნქცია (გადასული პარამეტრი);

მიიტანეთ სერვერის გადაუდებელი ბმული ყველა კლიენტის კავშირებით და ეს უნდა გაკეთდეს თქვენს მიერ შეყვანილი კოდით სერვერის გადატანამდე.

სერვერის მხრიდან სახიფათო ფუნქციების ვიქტიმიზაცია.

ჩამოტვირთული ენის ყველა მახასიათებლის შეცვლა არ შეიძლება კოდში, რომელიც შედგენილია დამატებით სერვერზე, მაგრამ ხელმისაწვდომი ხელსაწყოების შუაში არ არის „პრობლემური“ დიზაინი, რომელიც შეიძლება ინტელექტუალურად კლასიფიცირდეს შემდეგნაირად:

  • ამ დღეებში შეგიძლიათ მიუთითოთ კოდის დაწერის შესაძლებლობა, რომელიც არ ჯდება კონფიგურაციაში (ჯგუფი "ფანჯრის კოდი")
  • კლიენტის ფაილისა და ოპერაციული სისტემის შესახებ ინფორმაციის მიწოდება კლიენტის პროგრამაში ან მონაცემების მუშაობასთან დაკავშირებული ქმედებების დამახინჯება („უფლებათა დარღვევა“)
  • ნამდვილად გამოიძახეთ სერვერის გადაუდებელი ლინკი ან ის, რომ დიდი რესურსიც კი არის ვიკორისტი (ჯგუფი "სერვერის ავარია")
  • ეს ტიპი არ ჩანს. მაგალითი: ცვალებადი მნიშვნელობის სერვერზე გადაცემა.
  • პროგრამირების ალგორითმების მოდიფიკაციები (დაუსრულებელი მარყუჟები, უწყვეტი რეკურსია და ა.შ.) („პროგრამირების ცვლილებები“)

ნაკლებად პრობლემური სტრუქტურების ძირითადი ტიპები (კონდახებით) ნაჩვენებია ქვემოთ:

ვიკონატის პროცედურა (<Строка>)

Vikonannya კოდი.გაძლევთ საშუალებას ნახოთ კოდის ფრაგმენტი, რომელიც გადაეცემა თქვენ, როგორც მწკრივის მნიშვნელობა. სერვერზე სერვერის არჩევისას აუცილებელია დავრწმუნდეთ, რომ მონაცემები არ წაიშლება კლიენტიდან, როგორც პარამეტრი. მაგალითად, ვიკორისტანზე თავდასხმა მიუღებელია:

#Yaksto სერვერი Todi
პროცედურა სერვერზე (Param1) ექსპორტი
ვიკონატი (პარამ1);
კინეტების პროცედურები
#KіnetsYakshcho

აკრიფეთ "COMObject" (კონსტრუქტორი New COMObject (<Имя>, <Имя сервера>))

ქმნის გარე პროგრამების COM ობიექტს USER1CV8SERVER უფლებებით აპლიკაციის სერვერზე (ან სხვა მითითებულ კომპიუტერზე). სერვერზე მუშაობისას, ფრთხილად იყავით, რომ პარამეტრები არ გადაეცეს კლიენტის პროგრამებს. თუმცა, სერვერის მხრიდან ეფექტურია ამ შესაძლებლობის გამოყენება იმპორტის/ექსპორტის, ინტერნეტით მონაცემების ატვირთვის, არასტანდარტული ფუნქციების განხორციელებისას და ა.შ.

ფუნქცია OtrimatiCOMObject(<Имя файла>, <Имя класса COM>)
უფლებების განადგურება და ვიკონური კოდი.ეს წააგავს ფაილთან დაკავშირებული COM ობიექტის წაშლის პირველ საფეხურს.
კომპიუტერის სახელის პროცედურები და ფუნქციები (), საათობრივი ფაილების დირექტორია (), პროგრამების დირექტორია (), Windows სერვერები ()
დანგრეული უფლებები.სერვერზე შესვლის შემდეგ ნება დართეთ სერვერის ქვესისტემის ორგანიზაციის დეტალების მოპოვება. სერვერზე ინსტალაციისას, დარწმუნდით, რომ მონაცემები არ გადაეცემა კლიენტს, ან მიუწვდომელია ოპერატორებისთვის ავტორიზებული ნებართვის გარეშე. განსაკუთრებული ყურადღება მინდა მივაქციო იმათ, რომ მონაცემები შეიძლება გადავიდეს მოთხოვნისთვის გაგზავნილ პარამეტრებზე.
ფაილებთან მუშაობის პროცედურები და ფუნქციები (ფაილის კოპირება, ფაილების ძებნა, ფაილების შერწყმა და მრავალი სხვა), ასევე ფაილის ტიპები.

დანგრეული უფლებები.საშუალებას აძლევს მათ სერვერზე დაინსტალირების შემდეგ გააუქმოს საერთო წვდომა ადგილობრივ (და ქსელში მდებარე) ფაილებზე, რომლებიც ხელმისაწვდომია მომხმარებლის უფლებებით USER1CV8SERVER. თუ იცით, რომ ისეთი ამოცანები, როგორიცაა სერვერზე მონაცემების იმპორტი/ექსპორტი, შეიძლება ეფექტურად განხორციელდეს.

ამ ფუნქციების გამოყენებამდე, დარწმუნდით, რომ შეამოწმეთ 1C ანგარიშის მენეჯერის უფლებები. მომხმარებლის უფლებების დასადასტურებლად, შეგიძლიათ გამოიყენოთ შემდეგი კონსტრუქცია სერვერის მოდულში:

#Yaksto სერვერი Todi
პროცედურა ViconatiRobotWithFile() ექსპორტი
RoleAdministrator = მეტამონაცემები.Roles.Administrator;
Koristuvach = ParameterSeance.PotochnyKoristuvac;
Yakshto Koristuvach.Role.Utrimuyut (RoleAdministrator) Todi
//აქ ემატება რობოტის კოდი ფაილებით
KinetsYakscho;
#KіnetsYakshcho

დარწმუნდით, რომ ყურადღებით შეამოწმეთ პარამეტრები, თუ პროცედურებსა და ფუნქციებში გაჭედილი ხართ, წინააღმდეგ შემთხვევაში თავიდან აიცილებთ შეცდომის არასწორად დაყენების ან 1C დამატებითი სერვერის არასწორი კოდის გაცნობიერების რისკს, მაგალითად, სერვერზე შესვლისას. კოდი:

გზა = "C:\Documents and Settings\All Users\Application Data\1C\1Cv8\";
MoveFile(Way + "srvrib.lst", Way + "WhereFileGone");

სერვერზე ასეთი კოდის წაშლის შემდეგ, თუ მომხმარებელს USER1CV8SERVER აქვს უფლება შეცვალოს ის, რაც ზემოთ იყო დაწერილი და სერვერის პროცესის გადატვირთვის შემდეგ (ყველა მომხმარებლის გასვლიდან 3 წუთის განმავლობაში), GREAT E კვების დაწყებამდე. სერვერი. ასევე შესაძლებელია ფაილების წაშლა გარეთ...

ტიპები "XBase", "DvіykovіDani", "ReaderXML", "WriteXML", "RecreateXSL", "WriteZipFile", "ReaderZipFile", "ReaderText", "WriteText"
დანგრეული უფლებები.საშუალებას აძლევს სერვერზე დაინსტალირებულს, უარყოს წვდომა ადგილობრივ (და ქსელში მდებარე) ძველი ფაილების ტიპებზე და ჩამოტვირთოს წასაკითხად/ჩასაწერად მომხმარებლის უფლებების USER1CV8SERVER. როგორც მოგეხსენებათ, შესაძლებელია ისეთი ამოცანების ეფექტურად განხორციელება, როგორიცაა სერვერზე მონაცემების იმპორტი/ექსპორტი, გარკვეული ფუნქციების ფუნქციონირების აღრიცხვა და უფროსი ადმინისტრაციული ამოცანები. ზოგადად, რეკომენდაცია არის თავიდან იქნას აცილებული წინა პუნქტი, მაგრამ უზრუნველყოს ამ ფაილების (და არა ყველა ტიპის ობიექტების) გადაცემის შესაძლებლობა კლიენტსა და სერვერის ნაწილებს შორის.
ჩაწერეთ "სისტემის ინფორმაცია"
დანგრეული უფლებები.საშუალებას იძლევა, პროგრამის კლიენტის ნაწილზე მონაცემების არასწორი გადაცემის შემთხვევაში, შესაძლებელია დამატებითი სერვერის მონაცემების მოძიება. მნიშვნელოვანია ვიკორსტანის უფლების დემარკაცია.
ტიპები "ინტერნეტ კავშირი", "ინტერნეტ ფოსტა", "ინტერნეტ პროქსი", "HTTP კავშირი", "FTP კავშირი"

დანგრეული უფლებები.როდესაც სერვერი გამორთულია, დაუკავშირდით დისტანციურ კომპიუტერს დამატებითი სერვერიდან USER1CV8SERVER უფლებებით. რეკომენდაციები:

  • აკონტროლებს პარამეტრებს მეთოდების საათობრივი პასუხის ქვეშ.
  • კონტროლი 1C koristuvach უფლებები.
  • უფლებების მკაცრი გაცვლა მომხმარებლის USER1CV8SERVER ლიმიტზე წვდომისთვის.
  • სწორად დააკონფიგურირეთ firewall 1C პროგრამის სერვერზე.

სწორი არჩევანით, შეგიძლიათ ხელით მოაწყოთ, მაგალითად, ელექტრონული ფოსტის გაგზავნა პროგრამის სერვერიდან.

ჩაწერეთ "KoristuvachInformationBase Manager", "KoristuvachInformationBase"

დანგრეული უფლებები.არასწორი ვიკის შემთხვევაში (პრივილეგირებულ მოდულში) შეგიძლიათ დაამატოთ ანგარიშები ან შეცვალოთ სხვა ანგარიშების ავტორიზაციის პარამეტრები.

ფუნქციის ფორმატი

მოკალი სერვერი.Ისე! ეს, რადგან ეს არასაჭირო ფუნქციაა, თუ არ აკონტროლებთ მის პარამეტრებს და არ შეხვალთ სერვერზე, გამოიწვევს სერვერის პროგრამების ავარიას. შეცდომა ჩნდება რიცხვების ფორმატირებისას და წამყვანი ნულებისა და სიმბოლოების დიდი რაოდენობის ჩვენების რეჟიმის გამოყენებისას, მაგალითად.

ფორმატი (1, "CHZ = 999; CHVN = ");

დარწმუნებული ვარ, რომ ეს შესწორება დაფიქსირდება პლატფორმის შემდეგ გამოშვებაში, მაგრამ ამასობაში, ყველა ზარს აქვს ფუნქციები, რომელთა კონფიგურაცია შესაძლებელია სერვერზე, შეამოწმეთ ზარის პარამეტრები.

მნიშვნელობების შენახვის პროცედურები და ფუნქციები (ValueRowInternal, ValueFile)
მოკალი სერვერი.ეს ფუნქციები არ ამუშავებს ციკლურ შეტყობინებებს კოლექციებში და წვლილის დიდ სიღრმესაც კი, რამაც შეიძლება გამოიწვიოს ავარია ზოგიერთ განსაკუთრებულ შემთხვევაში.

ფუნქციების სასაზღვრო და სპეციალური პარამეტრის მნიშვნელობების გაანგარიშება. Wikonanny კონტროლი.

ერთ-ერთი პრობლემა, რომელიც შეიძლება წარმოიშვას სერვერის დაზიანებით, არის სერვერის ფუნქციების მაღალი „გავრცელება“ (მთელი სერვერის აპლიკაციის გადაუდებელი შეწყვეტის შესაძლებლობა ერთ დაკავშირებულში შეცდომით და ერთი „რესურსული სივრცის“ ხელმისაწვდომობა sіkh-სთვის. სედნანი). საჭიროა ძირითადი პარამეტრების და დროის კონტროლი:

  • გადმოწერილი ფილმის ფუნქციისთვის შეამოწმეთ ორიგინალური გაშვების პარამეტრები (მაგალითად, ფუნქცია "ფორმატი")
  • ციკლების დროს, გადააკეთეთ თქვენი ტვინი ციკლიდან გამოსასვლელად. თუ ციკლი პოტენციურად უსასრულოა, გარს შემოუვლით მას რამდენიმე გამეორებით: Iteration Manager-ის მაქსიმალური მნიშვნელობა = 1000000;
    ექიმის გამეორება = 1;
    ბუვაი
    ფუნქციას არ შეუძლია შეუცვალოს არასწორი მნიშვნელობა()
    მე (HealerIteration<МаксимальноеЗначениеСчетчикаИтераций) Цикл

    //.... სხეული ციკლამდე
    Iteration Doctor = Iteration Doctor + 1;
    KіnetsCycle;
    Like Iteration Treatment>Maximum Value of Iteration Treatment
    //.... დაასრულეთ ვიკონის სუპერ გრძელი ციკლის იდეა
    KinetsYakscho;

  • თუ არის მაღალი რეკურსი, შეზღუდეთ წვლილის მაქსიმალური დონე.
  • შეკითხვის ფორმირებისა და შედგენისას, ფრთხილად იყავით, რომ არ შეიყვანოთ ინფორმაციის ძალიან ბევრი არჩევანი და არჩევანი (მაგალითად, თუ აირჩევთ „IN ІЄARCHY“, არ აირჩიოთ ცარიელი მნიშვნელობები)
  • საინფორმაციო ბაზის შექმნისას, დარწმუნდით, რომ არსებობს რიცხვების ტევადობის დიდი რეზერვი (წინააღმდეგ შემთხვევაში, შეკრება და გამრავლება ხდება არაკომუტაციური და არაასოციაციური, რაც ართულებს დაყენებას)
  • შეკითხვებში შეამოწმეთ სამუშაოს ლოგიკა NULL მნიშვნელობის გამოსავლენად და გონებისა და ვირუსების სწორი მუშაობა ითხოვს NULL მნიშვნელობებს.
  • შეზღუდული კოლექციით, აკონტროლეთ მათი გადაცემის შესაძლებლობა სერვერსა და პროგრამის კლიენტ ნაწილს შორის.

Vikoristana ტერმინალის წვდომა კლიენტის ნაწილზე წვდომის ურთიერთდაკავშირებისთვის

ხშირად რეკომენდირებულია ტერმინალის წვდომის გამოყენება, რათა შემცირდეს წვდომა მონაცემებზე და გაზარდოს პროდუქტიულობა კლიენტის კოდის ტერმინალის სერვერთან დაკავშირებით. ამრიგად, ტერმინალის წვდომის სწორი კონფიგურაციით, შესაძლებელია სისტემის უსაფრთხოების დონის ეფექტურად გაზრდა, მაგრამ, სამწუხაროდ, ხშირად შესაძლებელია თავიდან ავიცილოთ ის ფაქტი, რომ პრაქტიკული კონტროლით, სისტემის უსაფრთხოება კიდევ უფრო მცირდება. შევეცადოთ დაგიბრუნდეთ, სწორედ ეს არის საქმე. ტერმინალზე წვდომის ორგანიზების ორი მოწინავე მეთოდი არსებობს, კერძოდ, Microsoft Terminal Services (RDP პროტოკოლი) და Citrix Metaframe Server (ICA პროტოკოლი). სხვათა შორის, Citrix გთავაზობთ უამრავ მოქნილობას წვდომის ადმინისტრირებაში და ამ გადაწყვეტილებების ფასი მნიშვნელოვანია. ჩვენ გადავხედავთ ორივე პროტოკოლის ძირითად მახასიათებლებს, რომლებსაც შეუძლიათ შეცვალონ უსაფრთხოების ძირითადი დონე. ვიკორისტანის ტერმინალთან წვდომის სამი ძირითადი პრობლემაა:
  • სხვა კომპანიების მუშაობის დაბლოკვის შესაძლებლობა უზარმაზარი რესურსების დაგროვებით
  • სხვა კლიენტებთან წვდომა.
  • მონაცემთა უნებართვო კოპირება ტერმინალის სერვერიდან კლიენტის კომპიუტერზე

ნებისმიერ შემთხვევაში, ტერმინალის მომსახურება საშუალებას იძლევა:

  • სამუშაოს სანდოობის გაზრდა (კომპიუტერის ტერმინალებზე გაუმართაობის შემთხვევაში, მომხმარებელს შეუძლია გააგრძელოს მუშაობა იმავე ადგილიდან)
  • დაბლოკეთ წვდომა კლიენტის პროგრამებსა და ფაილებზე, რომლებიც შენახულია.
  • გადაიტანეთ მონაცემების გაანგარიშება კორესპონდენტის სამუშაო ადგილიდან ტერმინალის წვდომის სერვერზე
  • სისტემა უფრო ცენტრალიზებული და მოწესრიგებულია. თქვენი ფულის დაზოგვის მიზნით, პარამეტრები ეფექტური იქნება იმისდა მიუხედავად, თუ რომელი კომპიუტერიდან მოვიდა სისტემაში.
  • ზოგიერთ შემთხვევაში, შეგიძლიათ გამოიყენოთ ტერმინალის გადაწყვეტა სისტემაში დისტანციური წვდომისთვის.

აუცილებელია ერთი მომხმარებლის ტერმინალის სერვერიდან შესაძლო კავშირების რაოდენობის გამოყოფა

1C კლიენტის პროგრამის „უპრეტენზიულობის“ გამო, აბსოლუტურად აუცილებელია ერთი მომხმარებლის მომსახურების პროვაიდერის (ოპერატორის) მაქსიმალური რაოდენობის ერთსაათიანი კავშირების ერთმანეთთან დაკავშირება ტერმინალის სერვერთან. აქტიურ კავშირებს შეუძლიათ გამოიყენონ 300 მბ-მდე მეხსიერება პროგრამის მხოლოდ ერთი ეგზემპლარით. მეხსიერებას აქტიურად იყენებს პროცესორის საათი, რაც ასევე უზრუნველყოფს კომპიუტერის სერვერის სტაბილურობას. ამავდროულად, სერვერის მსოფლიო რესურსების მოხმარების გამო, ასეთ გაზიარებას შეუძლია გაანადგუროს სხვისი ღრუბლოვანი ანგარიშის რესურსები. დანერგილია სტანდარტული ტერმინალის სერვერის პარამეტრებით.

თქვენ არ შეგიძლიათ დაუშვათ ერთ ან ორზე მეტი 1C კლიენტის პროგრამის გაშვება ერთდროულად ერთ კავშირში

ეს ნაკარნახევია წინა აბზაცის წინა პუნქტით, მაგრამ ტექნიკურად უფრო რთული განსახორციელებელია. პრობლემა ის არის, რომ პრაქტიკულად შეუძლებელია ტერმინალის სერვერის გამოყენებით 1C-ის გადატვირთვის თავიდან აცილება (რატომ იქნება ახსნილი ქვემოთ), თქვენ უნდა განახორციელოთ ეს შესაძლებლობა აპლიკაციის გადაწყვეტის დონეზე (რაც ასევე არ არის კარგი გადაწყვეტილებები, ასე რომ თქვენ შეიძლება დაკარგოთ კარგი საათი esіi-სთან ერთად, რომ "დაკიდება" ) თუ პროგრამა არასწორად არის დასრულებული, საჭიროა აპლიკაციის გადაწყვეტის შემდგომი დამუშავება დანამატის მოდულში, რათა შევადგინოთ საჭირო განახლება 1C-ში). აბსოლუტურად აუცილებელია კლიენტს ჩამოერთვათ 2 დანამატის გაშვების შესაძლებლობა ფონზე მოქმედებების (მაგალითად, ზარების ფორმირების) შესაძლებლობისთვის - კლიენტის პროგრამა, სამწუხაროდ, რეალურად არის ერთსართულიანი.

არ არის რეკომენდირებული ტერმინალის სერვერზე წვდომის უფლებების მინიჭება ბექ-ოფისის მუშაკებისთვის, რომლებსაც შეიძლება ჰქონდეთ უფლება განახორციელონ რესურსზე ინტენსიური გამოთვლითი ამოცანები 1C-ში, ან თავიდან აიცილონ ასეთი გაშვება სხვა ოფისის მუშაკების აქტიური მუშაობის დროს.

რა თქმა უნდა, ტერმინალის სერვერზე წვდომას დიდი ალბათობით აეკრძალებათ მხოლოდ ფრილანსერები, რომლებიც არ ეწევიან ისეთ ამოცანებს, როგორიცაა მონაცემთა მოპოვება, გეოგრაფიული ნიმუშები, იმპორტი/ექსპორტი და სხვა ამოცანები, რომლებიც სერიოზულად მოქმედებს კლიენტის ნაწილობრივ პროგრამაზე. იმის გამო, რომ ჯერ კიდევ არსებობს ასეთი საკითხების გადაწყვეტის აუცილებლობა, აუცილებელია: აცნობოთ ანგარიშის მენეჯერს იმ საკითხების შესახებ, რომლებიც შეიძლება იყოს შეტანილი სხვა ანგარიშების პროვაიდერების მონაცემებში, ჩაწეროთ ისინი რეგისტრაციის ჟურნალში ამ პროცესის დასრულების შემდეგ, შესაძლებელი იქნება ვიკონანის მარეგულირებელი ჩარჩოს ფარგლებში გაგრძელების უფლება.

აუცილებელია აღინიშნოს, რომ თითოეულ კლიენტს აქვს უფლება დაწეროს მხოლოდ ტერმინალის სერვერის სიმღერების დირექტორიაში და სხვა კლიენტებს არ აქვთ წვდომა მათზე.

უპირველეს ყოვლისა, თუ არ ზღუდავთ ჩაწერის შესაძლებლობას ფარული დირექტორიებით (როგორიცაა დირექტორია, სადაც დაინსტალირებულია 1C), მაშინ შენახულია თავდამსხმელის შესაძლებლობა შეცვალოს პროგრამების ქცევა ყველა მომხმარებლისთვის. სხვაგვარად, ერთი მომხმარებლის მონაცემები (დრო-საათიანი ფაილები, ფაილების შენახვა ზარების დასაყენებლად და ა. მესამე, თავდამსხმელს ართმევს დანაყოფის „დანახვის“ შესაძლებლობას ისე, რომ მყარ დისკს ადგილი არ ამოეწურა. ვიცი, უნდა ვთქვა, რომ Windows-ში, Windows 2000-დან დაწყებული, არის კვოტის მექანიზმი, მაგრამ არ არსებობს ხარჯების მექანიზმი და პრაქტიკულად ვერ შევამჩნიე რეალური პრობლემა.

ვინაიდან ფაილებზე წვდომის წინასწარი რეგულირება ზოგადად მარტივია, ის ასევე (ფაქტობრივად) მარტივი ამოცანაა, რადგან კლიენტების ფაილებზე წვდომის რეგულირება არ არის ტრივიალური განხორციელება. პირველ რიგში, თუ კვოტის მექანიზმი არ არის გამოყენებული, შესაძლებელია დიდი ფაილების შენახვა. სხვა სიტყვებით რომ ვთქვათ, სისტემა შექმნილია ისე, რომ თქვენ შეიძლება სამუდამოდ დაკარგოთ ფაილის შენახვის შესაძლებლობა, რათა ის ხელმისაწვდომი იყოს სხვა მომხმარებლებისთვის.

ექიმებისთვის, რომელთა საქმიანობა კვლავაც მნიშვნელოვანია, რეკომენდებულია ფაილების უმეტესობის აუდიტი.

აუცილებელია დისკის მოწყობილობების, პრინტერებისა და კლიენტის სამუშაო სადგურის ბუფერების კავშირების (რუკების) უზრუნველყოფა.

RDP-ს და ICA-ს აქვთ შესაძლებლობა მოაწყონ დისკების, პრინტერების, ბუფერების, ტერმინალური კომპიუტერის პორტების ავტომატური კავშირი სერვერთან. მიუხედავად იმისა, რომ ეს შესაძლებელია, პრაქტიკულად შეუძლებელია ტერმინალის სერვერზე მესამე მხარის კოდის გაშვების თავიდან აცილება და ტერმინალის წვდომის კლიენტზე 1C მონაცემების შენახვა. რაც შეიძლება მეტი მიეცით ადმინისტრაციული უფლებების მქონე პირებს.

ტერმინალის სერვერიდან ფაილზე წვდომა შეიძლება შეიცავდეს საზღვრებს.

თუ წინააღმდეგი არ ხართ, მაშინ კორისტუვაჩს კვლავ შეუძლია არასწორი კოდის გაშვება ან მონაცემების შენახვა. იმის გამო, რომ რეგულარული რეესტრის ჟურნალი არ აკონტროლებს ფაილების სახელებს (სანამ ლაპარაკობს, კარგი იდეაა, რომ დეველოპერებმა განახორციელონ პლატფორმა), და პრაქტიკულად შეუძლებელია სისტემის აუდიტის დაყენება ყველა დონეზე (შეუძლებელია რესურსების დახარჯვა მისი შენარჩუნებისთვის) , უფრო სწორად, შეგიძლიათ მონაცემების გაგზავნა ან მეგობარს, ან ელექტრონული ფოსტით. განსაკუთრებული ყურადღება მინდა მივაქციო, რომ ტერმინალის სერვერმა ირიბად არ იმოქმედოს კორისტუვაჩების კეთილშობილ ცხვირებზე.

ყოველ ჯერზე, როდესაც იქმნება კომპრომეტირებული სისტემა, შეუძლებელია სერვერის ჩამორთმევა ტერმინალის სერვერზე დანამატებისგან.

მას შემდეგ, რაც სერვერის პროგრამა გაშვებულია ერთ კომპიუტერზე კლიენტის დანამატებით, მისი ნორმალური ფუნქციონირების შეფერხების დიდი პოტენციალი არსებობს. თუ რაიმე მიზეზით შეუძლებელია ტერმინალის სერვერისა და პროგრამის სერვერის ფუნქციების გამიჯვნა, განსაკუთრებული პატივისცემა უნდა დაეთმოს მომხმარებლების წვდომას ფაილებზე, რომლებსაც იყენებს პროგრამის სერვერი.

აუცილებელია გამორთოთ ტერმინალის სერვერზე 1C:Enterprise-ის გარდა ყველა პროგრამის გაშვების შესაძლებლობა.

ეს არის ერთ-ერთი ყველაზე რთული დასამახსოვრებელი წერტილი. ამიტომ საჭიროა დომენში ჯგუფის უსაფრთხოების პოლიტიკის სწორად კონფიგურაცია. აუცილებელია ყველა „ადმინისტრაციული შაბლონის“ და „ინტერნეტ პროგრამის პოლიტიკის“ სწორად კონფიგურაცია. იმისათვის, რომ თავად გადაამოწმოთ, შეამოწმეთ, გსურთ თუ არა ასეთი პარამეტრების დაბლოკვა:

ამის განხორციელების სირთულემ ხშირად შეიძლება გამოიწვიოს ტერმინალის სერვერზე "პირადი" 1C სესიის გაშვების შესაძლებლობა (როგორც სხვა ურთიერთდაკავშირების პროგრამებში, ძირითადად შეუძლებელია 1C-ის გაშვების თავიდან აცილება Windows მეთოდების გამოყენებით).

დააზღვიეთ რეგულარული სარეგისტრაციო ჟურნალის გაცვლა (თითოეულ მომხმარებელს შეუძლია გამოიყენოს პროგრამა ერთი კომპიუტერიდან)

ცხადია, როდესაც მომხმარებლები გახსნიან 1C ტერმინალის რეჟიმში, მაშინ თავად ტერმინალის სერვერი ჩაიწერება რეესტრის ჟურნალში. რეგისტრაციის ჟურნალი არ მიუთითებს, რომელ კომპიუტერთან არის დაკავშირებული მომხმარებელი.

ტერმინალის სერვერი – დაცვა თუ დაღვრა?

ასევე, ღამის ტერმინალების ძირითადი მახასიათებლების დათვალიერების შემდეგ, შეგვიძლია ვთქვათ, რომ ღამის ტერმინალების პოტენციალი დაგეხმარებათ გაანგარიშების ნაწილზე ავტომატიზაციაში და ასევე უსაფრთხო სისტემას შეუფერხებლად მუშაობაში. ერთ-ერთი ვარიანტი, როდესაც ტერმინალის სერვერის დაყენება ყველაზე ეფექტურია, არის 1C გაშვება Windows Explorer-ის გარეშე სრულ ეკრანზე, კომბინირებული ფუნქციონალური და სპეციალიზებული ინტერფეისის მქონე მომხმარებლებისთვის.

კლიენტის ნაწილის მუშაობა

Wikoristanny Internet Explorer (IE)

1C კლიენტის ნაწილის ნორმალური მუშაობის ერთ-ერთი მთავარი კომპონენტია Internet Explorer-ის მეორადი კომპონენტები. კიდევ უფრო ფრთხილად იყავით ამ კომპონენტებთან.

პატივისცემა! უპირველეს ყოვლისა, რადგან spyware ან adware მოდული "მიმაგრებულია" IE-ზე, თქვენ უნდა გაგიჩნდეთ ცდუნება დაათვალიეროთ ნებისმიერი HTML ფაილი 1C-ში. ჯერჯერობით მე ვერ მივხვდი ამ შესაძლებლობის აშკარა მნიშვნელობას, მაგრამ ორგანიზაციის ერთ-ერთ შენაძენში დავიჭირე ერთ-ერთი პორნოგრაფიული ღონისძიების „spygunsky“ მოდული 1C-ის გაშვებისას (ანტივირუსული პროგრამა არ იყო განახლებული, გამოვლინდა შემდეგი სიმპტომები: როდესაც firewall-ის კონფიგურაცია მოხდა, ცხადი იყო, რომ 1C მუშაობდა 80-ე პორტზე, დაკავშირება პორნოსაიტთან). ვლასნა, აქ არის კიდევ ერთი არგუმენტი, რომ დაცვა შეიძლება იყოს რთული.

პატივისცემა! სხვაგვარად, 1C სისტემა საშუალებას აძლევს გამოიყენოს ფლეშ ფილმები, ActiveX ობიექტები, VBScript გაფორმებულ HTML დოკუმენტებში, მონაცემთა გაგზავნა ინტერნეტში, გახსნა PDF ფაილები (!), თუმცა საბოლოოდ ის ითხოვს "გახსენით ან შეინახეთ". , ყველაფერი, რაც სულს ამხიარულებს. HTML-ის გადახედვისა და რედაქტირების შთაგონებული შესაძლებლობის არც თუ ისე გონივრული ვიკორისტანის მაგალითი:

  • შექმენით ახალი HTML დოკუმენტი (ფაილი -> ახალი -> HTML დოკუმენტი).
  • გადადით ცარიელი დოკუმენტის "ტექსტის" ჩანართზე.
  • ტექსტის წაშლა (მთლიანად).
  • გადადით ამ დოკუმენტის "განხილვის" ჩანართზე
  • drag-n-drop-ის გამოყენებით, შეგიძლიათ გადაიტანოთ ფაილი ღია Explorer-დან დოკუმენტის ფანჯარაში გაფართოებული SWF ფაილებიდან (არა Flash ფილმების ფაილებიდან), მაგალითად, ბრაუზერის ქეშიდან, თუმცა ასევე შეგიძლიათ გამოიყენოთ FLASH თამაში გასართობად.
  • Რა სილამაზეა! თქვენ შეგიძლიათ გაუშვათ თამაში 1C-ზე!

სისტემის უსაფრთხოების თვალსაზრისით, ეს სრულიად არასწორია. ჯერჯერობით, მე არ შემიმჩნევია რაიმე განსაკუთრებული თავდასხმა 1C-ზე ამ სპილოვერის საშუალებით, არამედ, ყველაფერი გაირკვევა კვების საათზე და თქვენი ინფორმაციის ღირებულებაზე.

ასევე არის რამდენიმე უმნიშვნელო პუნქტი, რომელიც ვლინდება HTML დოკუმენტის ველთან მუშაობისას, მაგრამ მთავარი არის ორი გადაჭარბებული კორექტირება. თუ გსურთ ამ მახასიათებლებს შემოქმედებითად მიუდგეთ, შეგიძლიათ მოაწყოთ რობოტის მართლაც სასწაულებრივი ინტერფეისის შესაძლებლობები 1C-ით.

გარე ბგერებისა და დამუშავების ვიკორსტანა.

პატივისცემა! გარე ინფორმაცია და დამუშავება - ერთის მხრივ - დამატებითი დამატებითი ფორმების, მარეგულირებელი ინფორმაციის, სპეციალიზებული ინფორმაციის დანერგვის მარტივი გზა, მეორე მხრივ - სისტემის უსაფრთხოების ფართო სპექტრის გვერდის ავლით და დანამატის მუშაობის შეფერხების პოტენციური გზა. სერვერი (არაჩვეულებრივი მაგალითი "პარამეტრების გადაცემაში"). 1C სისტემას აქვს სპეციალური პარამეტრი როლური უფლებების ნაკრებისთვის "გარე დამუშავების ინტერაქტიულად ჩვენება", მაგრამ ეს პრობლემას სრულად არ აღმოფხვრის - წარმატების მისაღწევად, თქვენ უნდა მიმართოთ თქვენს კოლეგებს, რომლებსაც შეუძლიათ ხელი შეუშალონ თქვენს მუშაობას. სხვა ფორმები, რეგულაციები და სხვა სტანდარტული შესაძლებლობები სტანდარტული განხორციელების გადაწყვეტილებებისთვის შერჩეული გარე დამუშავებიდან. მაგალითად, UPP-ში აზროვნების მიღმა, კორესპონდენტების ყველა მთავარ როლს აქვს დამატებითი დამატებითი ფორმებით მუშაობის შესაძლებლობა და ეს, არსებითად, არის ნებისმიერი გარე დამუშავების ჩანაცვლების შესაძლებლობა.

სტანდარტული მექანიზმების გამოყენება სტანდარტული გადაწყვეტილებებისა და პლატფორმებისთვის (მონაცემთა გაცვლა)

ეს სტანდარტული მექანიზმები პოტენციურად სახიფათოა და ისინი შეიძლება შემაშფოთებელი იყოს.

სხვა სიები

ნებისმიერი სია (მაგალითად, დოკუმენტი ან ჩანაწერების რეესტრი) შეიძლება გაიხსნას ან შეინახოს სისტემაში არსებულ ფაილში. ამ მიზნით, საკმარისია გამოიყენოთ სტანდარტული ფუნქციონალობა, რომელიც ხელმისაწვდომია კონტექსტური მენიუდან და "Dies" მენიუდან:

დარწმუნდით, რომ ყველაფერი, რაც ჩამოთვლილია სიებში, შეგიძლიათ იპოვოთ გარე ფაილებში. ერთადერთი, რაც შეგიძლიათ გააკეთოთ, არის შეინახოთ სხვა დოკუმენტების ჟურნალი იმავე სერვერებზე. განსაკუთრებით კრიტიკული ფორმებისთვის აუცილებელია სამოქმედო პანელის მორგება, რომელიც დაკავშირებულია ცხრილის ველთან, რომელიც დაცულია ისე, რომ სიის ჩვენების შესაძლებლობა არ იყოს ხელმისაწვდომი ამ პანელიდან და ჩართოთ კონტექსტური მენიუ (დივ. სურ. 6).

ქვედანაყოფებს შორის მონაცემთა გაცვლა

მონაცემთა გაცვლის ფორმატი ისეთივე მარტივია, როგორც აღწერილია დოკუმენტაციაში. თუ მომხმარებელს შეუძლია შეცვალოს რამდენიმე ფაილი, მას შეუძლია სისტემაში არაავტორიზებული ცვლილებები შეიტანოს (მომხმარებლისათვის გაურთულებლად). განაწილებული მონაცემთა ბაზის გაცვლის გეგმების შეცვლისას პერიფერიული მონაცემთა ბაზის შექმნის შესაძლებლობა შეიძლება ხელმისაწვდომი იყოს მეორადი ოპერატორებისთვის.

სტანდარტული XML მონაცემთა გაცვლა

მონაცემთა სტანდარტული გაცვლა, რომელიც გამოიყენება სტანდარტულ კონფიგურაციებს შორის გაცვლისთვის (მაგალითად, „ვაჭრობის მენეჯმენტი“ და „ბიზნეს ბუღალტერია“), აქვს შესაძლებლობა, გაცვლის წესებში მიუთითოს ობიექტების შესაბამისი მონაცემების მეუღლის დეტალები. ეს ხორციელდება ფაილიდან ფაილის ამოღებით და ფაილის შეძენისა და აღდგენის სტანდარტული დამუშავების "Vicont()" პროცედურის გამოყენებით ("Vicont()" პროცედურა გაშვებულია კლიენტის მხარეს). ცხადია, ძნელია ისეთი ყალბი გაცვლითი ფაილის შექმნა, რომელიც შეიძლება ფულის ფლანგვა იყოს. ტიპიური მეურვეების როლების უმეტესობისთვის ფულის გაცვლა დასაშვებია.

რეკომენდაცია:შეზღუდეთ XML გაცვლაზე წვდომა კლიენტების უმეტესობისთვის (შეზღუდეთ მხოლოდ IB ადმინისტრატორები). შეინახეთ პროტოკოლები დამუშავების პროცესის დასაწყებად, შეინახეთ გაცვლითი ფაილი, მაგალითად, IB ადმინისტრატორთან ელფოსტის გაგზავნით გადმოტვირთვამდე.

უნივერსალური ხმების ვიკორსტანა, განსაკუთრებით ხმის კონსოლები

კიდევ ერთი პრობლემაა კლიენტების წვდომა აქციებზე უნივერსალურ ზარებზე, განსაკუთრებით „ზარის კონსოლის“ ბმულზე. ეს დამახასიათებელია იმის გამო, რომ მომხმარებლებს საშუალებას აძლევს პრაქტიკულად ჩაწერონ IB-ზე და რადგან 1C უფლებების სისტემა (მათ შორის RLS) ძალიან მჭიდროდ არის მორგებული, ის საშუალებას აძლევს მომხმარებლებს ამოიღონ ბევრი „მიღებული“ ინფორმაცია mushiti სერვერიდან vikonuvati ისეთი მოთხოვნა, რომ თქვენ მიიღებს ყველაფერს სისტემის რესურსებს.

Vikoristannya სრული ეკრანის რეჟიმი (დესკტოპის რეჟიმი)

პროგრამის ფუნქციონალებთან ურთიერთდაკავშირებული წვდომით სპეციალიზებული ინტერფეისების ორგანიზების ერთ-ერთი ეფექტური გზაა ძირითადი (და, შესაძლოა, ერთი) ფორმის სრული ეკრანის რეჟიმი, რომელსაც იყენებს ინტერფეისი. ამ შემთხვევაში, საკვების ხელმისაწვდომობას არ აქვს მნიშვნელობა, მაგალითად, მენიუ "ფაილი" და მომხმარებლის ყველა ფუნქცია იცვლება შეცვლილი ფორმის შესაძლებლობებთან. მოხსენება Div. "დესკტოპის რეჟიმის განხორციელების თავისებურებები" ITS დისკზე.

სარეზერვო ასლი

1C-ის კლიენტ-სერვერის ვერსიის სარეზერვო ასლის შენახვა შესაძლებელია ორი გზით: გაფართოებული dt ფაილიდან მონაცემების ამოღება და SQL მეთოდების გამოყენებით სარეზერვო ასლების შექმნა. პირველ მეთოდს ბევრი ნაკლი აქვს: საჭიროა ექსკლუზიური წვდომა, ასლის შექმნას გაცილებით მეტი დრო სჭირდება, ზოგიერთ შემთხვევაში (თუ IB სტრუქტურა დაზიანებულია) არქივის შექმნა შეუძლებელია, მაგრამ მხოლოდ ერთი უპირატესობაა: მინიმალური ზომა. ივუს არქივის. SQL სარეზერვო ასლისთვის, ყველა დეტალი: სარეზერვო ასლის სარეზერვო ასლი ინახება ფონზე SQL სერვერის მიერ, მისი მარტივი სტრუქტურისა და კომპაქტურობის გამო - ეს ძალიან მარტივი პროცესია და სანამ SQL მონაცემთა ბაზის ფიზიკური მთლიანობა არ არის დაცული. არ არის დაზიანებული, სარეზერვო ასლი გამოსახულება მცირდება ზომამდე და ასლის ზომა ინახება რეალურ IB ზომასთან ახლოს გაშლილ სხეულზე (არ გაწუროთ). MS SQL სარეზერვო სისტემის დამატებითი უპირატესობებისთვის, უმჯობესია გამოიყენოთ იგი თავად (დაშვებულია 3 ტიპის სარეზერვო ასლი: სრული, დიფერენციალური, ტრანზაქციის ჟურნალის ასლი; არსებობს სარეზერვო ასლის შექმნის შესაძლებლობა, რომელიც რეგულარულად არის სარეზერვო ასლი; სარეზერვო ასლი. ასლი და სარეზერვო სისტემა ახლა გაშვებულია; სისტემის უსაფრთხოების თვალსაზრისით სარეზერვო ასლის ორგანიზების ძირითადი პუნქტებია:

  • აუცილებელია სარეზერვო ასლების შესანახი ადგილის არჩევა ისე, რომ ისინი არ იყოს ხელმისაწვდომი მომხმარებლებისთვის.
  • სარეზერვო ასლების შენახვის აუცილებლობა ფიზიკურ დისტანციურ MS SQL სერვერზე (სტიქიური უბედურების, ხანძრის, თავდასხმის და ა.შ.)
  • კომპიუტერის სარეზერვო ასლის დაწყების უფლების მინიჭების შესაძლებლობა, რომელიც არ იძლევა წვდომას სარეზერვო ასლებზე.

უფრო დეტალური ინფორმაციისთვის გადადით MS SQL დოკუმენტაციაში.

მონაცემთა დაშიფვრა

მონაცემების არასანქცირებული წვდომისგან დასაცავად, ხშირად გამოიყენება სხვადასხვა კრიპტოგრაფიული ტექნიკა (როგორც პროგრამული, ასევე აპარატურა), მაგრამ მათი მნიშვნელობა მდგომარეობს სისტემის დიზაინისა და დაცვის სისწორეში. ჩვენ განვიხილავთ მონაცემთა დაშიფვრას გადაცემის სხვადასხვა ეტაპზე და მონაცემთა შენარჩუნებას სხვადასხვა მოწინავე ფუნქციების გამოყენებით და სისტემის დიზაინის ძირითად მახასიათებლებს სხვადასხვა კრიპტოგრაფიული მახასიათებლების გამოყენებით.

თქვენ შეგიძლიათ იხილოთ ინფორმაციის დამუშავების რამდენიმე ძირითადი ეტაპი, რომელიც შეიძლება მოიპაროს:

  • მონაცემთა გადაცემა სისტემის კლიენტ ნაწილსა და დამატებით სერვერს შორის
  • მონაცემთა გადაცემა დამატებით სერვერსა და MS SQL სერვერს შორის
  • მონაცემები, რომლებიც ინახება MS SQL Server-ზე (მონაცემთა ფაილები ფიზიკურ დისკზე)
  • IB-ში შენახული მონაცემების დაშიფვრა
  • გარე მონაცემები (ასი პროცენტი IB)

კლიენტის მხარეს და დამატებით სერვერზე შენახული მონაცემებისთვის (დაზოგვა სერვერების დასაყენებლად, IB-ის სია და ა.შ.), დაშიფვრა სწორია მხოლოდ რამდენიმე შემთხვევაში და ეს აქ არ არის განხილული. კრიპტოგრაფიული მახასიათებლების გამოყენებით, არ უნდა დაგვავიწყდეს, რომ მათ გამოყენებას შეუძლია მნიშვნელოვნად შეამციროს სისტემის პროდუქტიულობა.

საიდუმლო ინფორმაცია პერიფერიული კავშირების კრიპტოგრაფიული დაცვის შესახებ TCP/IP პროტოკოლით.

დაცვის გარეშე, ყველა დაღვრა საგულდაგულოდ არის დაკავშირებული არაავტორიზებული წვდომის თავიდან ასაცილებლად. დაცვის მიზნით, შეგიძლიათ მონაცემების დაშიფვრა იმავე პროტოკოლის გამოყენებით, როგორც უსაფრთხოების პროტოკოლი. ლოკალურ ქსელში გადაცემული მონაცემების დაშიფვრად, ყველაზე ხშირად გამოიყენება IPSec, რომელიც მოწოდებულია ოპერაციული სისტემის მიერ.

IPSec ფუნქციები უზრუნველყოფს დამატებითი DES და 3DES ალგორითმების გამოყენებით გადაცემული მონაცემების დაშიფვრას, ასევე მთლიანობის შემოწმებას დამატებითი MD5 ან SHA1 ჰეშის ფუნქციების გამოყენებით. IPSec-ს შეუძლია ფუნქციონირება ორ რეჟიმში: ტრანსპორტის რეჟიმში და გვირაბის რეჟიმში. ტრანსპორტის რეჟიმი საუკეთესოდ შეეფერება ადგილობრივ საზღვრებთან კავშირების უზრუნველსაყოფად. გვირაბის რეჟიმი შეიძლება გამოყენებულ იქნას VPN კავშირის ორგანიზებისთვის ქსელის მიმდებარე სეგმენტებს შორის ან ლოკალურ ქსელთან დისტანციური კავშირის დასაცავად პირადი მონაცემთა არხებით.

ამ მიდგომის მთავარი უპირატესობებია:

  • უსაფრთხოების ცენტრალიზაციის შესაძლებლობა Active Directory-ის დამატებითი ფუნქციებისთვის.
  • დამატებითი სერვერთან და MS SQL სერვერთან არაავტორიზებული კავშირების გათიშვის შესაძლებლობა (მაგალითად, შესაძლებელია დამატებითი სერვერზე არაავტორიზებული IB წვდომისგან დაცვა).
  • ტრაფიკის „მოსმენას“ აბრალებენ.
  • არ არის საჭირო აპლიკაციის პროგრამების ქცევის შეცვლა (1C-სთვის).
  • ასეთი ხსნარის სტანდარტული ბუნება.

თუმცა, ამ მიდგომას აქვს შეზღუდვები და ნაკლოვანებები:

  • IPSec არ იცავს მონაცემებს გაგზავნისგან ან მოსმენისგან პირდაპირ კომპიუტერზე, რომელიც იღებს მონაცემებს.
  • მონაცემთა რაოდენობა, რომელიც გადაცემულია ქსელში, კიდევ უფრო დიდია, თუნდაც IPSec-ის საჭიროების გარეშე.
  • IPSec-ის დაყენებით, კიდევ უფრო მეტი აქცენტი კეთდება ცენტრალურ პროცესორზე.

სხვადასხვა IPSec ქსელების დეტალური აღწერა სცილდება ამ სტატიის ფარგლებს და უზრუნველყოფს IP პროტოკოლის მუშაობის ძირითადი პრინციპების გაგებას. კავშირის დაცვის სწორად კონფიგურაციისთვის, გთხოვთ, წაიკითხოთ თანდართული დოკუმენტაცია.

VPN კავშირის ორგანიზებისას მნიშვნელოვანია გახსოვდეთ ლიცენზირებული ტერიტორიის რამდენიმე ასპექტი 1C-დან. მარჯვნივ არის ის, რომ ტექნიკური საზღვრების რაოდენობის მიუხედავად, როდესაც დაკავშირებულია ლოკალური ქსელის რამდენიმე სეგმენტი, ან ახლომდებარე კომპიუტერის დისტანციური წვდომა ადგილობრივ ქსელში მოითხოვს რამდენიმე ძირითადი წყაროს ხელმისაწვდომობას.

მონაცემთა დაშიფვრა სისტემის კლიენტ ნაწილსა და დამატებით სერვერს შორის გადაცემის დროს.

Edge პროტოკოლის დონეზე დაშიფვრის გარდა, შესაძლებელია მონაცემების დაშიფვრა COM+ პროტოკოლის დონეზე, რაც აღწერილია სტატიაში „კლიენტების საინფორმაციო ბაზაზე წვდომის რეგულირება კლიენტ-სერვერის ვერსიაში“. მისი ამის განსახორციელებლად, თქვენ უნდა დააყენოთ ავტორიზაციის დონე ზარებისთვის „Packet Privacy“ 1CV8 პროგრამისთვის „კომპონენტების სერვისებში“. როდესაც ეს რეჟიმი დაყენებულია, სრულდება პაკეტის ავთენტიფიკაცია და მისი დაშიფვრა, მონაცემების ჩათვლით, ასევე დირექტორიაში ავთენტიფიკაცია და ხელმოწერა.

მონაცემთა დაშიფვრა დამატებითი სერვერსა და MS SQL სერვერს შორის გადატანისას

MS SQL Server უზრუნველყოფს შემდეგ ფუნქციებს მონაცემთა დაშიფვრისთვის:

  • შესაძლებელია Secure Sockets Layer (SSL) გამოყენება აპლიკაციის სერვერსა და MS SQL სერვერს შორის მონაცემთა გადაცემისას.
  • მრავალპროტოკოლის პროქსი ბიბლიოთეკის გამოყენებისას, მონაცემები დაშიფრულია RPC-ის გამოყენებით. ეს პოტენციურად სუსტია, ვიდრე დაშიფვრა SSL-თან შედარებით.
  • ვინაიდან საერთო მეხსიერების გაცვლის პროტოკოლი დაცულია (ეს ნიშნავს, რომ დამატებითი სერვერი და MS SQL სერვერი დაინსტალირებულია ერთ კომპიუტერზე), მაშინ დაშიფვრა არ არის დაცული ნებისმიერ ფასად.

MS SQL სერვერზე გადაცემული ყველა მონაცემის დაშიფვრის აუცილებლობის დასადგენად, თქვენ უნდა სწრაფად გამოიყენოთ პროგრამა "Server Network Utility". გაუშვით და "ზოგადი" ჩანართზე დააყენეთ "Force Protocol Encryption" ვარიანტი. დაშიფვრის მეთოდი შერჩეულია ყურადღებით შერჩეული კლიენტის აპლიკაციიდან (1C პროგრამის სერვერი). SSL-ის გამოსაყენებლად, სწორად უნდა დააკონფიგურიროთ ქსელის სერტიფიკატის სერვისი.

იმისათვის, რომ დააყენოთ აპლიკაციის სერვერზე გადაცემული ყველა მონაცემის დაშიფვრის აუცილებლობა, თქვენ სწრაფად უნდა გამოიყენოთ პროგრამა "Client Network Utility" (მდებარეობს "C:WINNTsystem32cliconfg.exe"). როგორც პირველი ნაბიჯი, "ზოგადი" ჩანართზე დააყენეთ "Force Protocol Encryption" ვარიანტი.

გაითვალისწინეთ, რომ მაღალსიჩქარიან დაშიფვრას ამ შემთხვევაში შეუძლია მნიშვნელოვანი გავლენა მოახდინოს სისტემის პროდუქტიულობაზე, განსაკუთრებით მაღალი სიჩქარით მოთხოვნის შემთხვევაში, რომელიც გადასცემს დიდი რაოდენობით ინფორმაციას.

იმისათვის, რომ უკეთ დავიცვათ კავშირი დამატებით სერვერსა და MS SQL Server-ს შორის TCP/IP პროტოკოლით, ჩვენ შეგვიძლია გირჩიოთ რიგი კორექტირების ცვლილებები, რომლებიც რეგისტრირებულია პროცედურის შემდეგ.

პირველ რიგში, შეგიძლიათ დააინსტალიროთ პორტი, რომელიც განსხვავდება სტანდარტულისაგან (გამოიყენება პორტი 1433). თუ გადაწყვეტთ არასტანდარტული TCP პორტის გამოყენებას მონაცემთა გაცვლისთვის, გთხოვთ გაითვალისწინოთ:

  • MS SQL სერვერი და დამატებითი სერვერი დამნაშავეა იმავე პორტის დარღვევაში.
  • თუ Firewall-ები დაყენებულია, ეს პორტი ექვემდებარება ნებართვის შეფერხებებს.
  • შეუძლებელია პორტის დაყენება, რომელიც შეიძლება გამოიყენოს სხვა პროგრამებმა MS SQL სერვერზე. ამის დასასრულებლად, შეგიძლიათ სწრაფად ეწვიოთ http://www.ise.edu/in-notes/iana/assignments/port-numbers (მისამართები აღებულია SQL Server Books Online-დან).
  • თუ თქვენ გაქვთ MS SQL Server სერვისის რამდენიმე ინსტანცია, თქვენ უნდა წაიკითხოთ MS SQL დოკუმენტაცია (განყოფილება „ქსელის კავშირების კონფიგურაცია“) კონფიგურაციისთვის.

ალტერნატიულად, MS SQL სერვერზე TCP/IP პროტოკოლით კონფიგურაციისას, შეგიძლიათ დააინსტალიროთ ბრძანება „სერვერის დამალვა“, რომელიც ბლოკავს ნახვებს ამ მაგალითის MS SQL Server სერვისის ფართო მოთხოვნებზე.

დისკზე შენახული MS SQL მონაცემების დაშიფვრა

ლოკალურ დისკზე შენახული მონაცემების დაშიფვრის პროგრამული უზრუნველყოფისა და აპარატურის ვარიანტების ფართო არჩევანია (ეს მოიცავს Windows-ის სტანდარტულ შესაძლებლობას დაშიფვროს EFS, eToken გასაღების აღდგენა და მესამე მხარის დაშიფვრის პროგრამები, როგორიცაა Jetico Bestcrypt ან PGPDisk). ერთ-ერთი მთავარი ამოცანა, რომელიც გასათვალისწინებელია ამ გზებით, არის მონაცემთა დაცვა მისი დაკარგვისას (მაგალითად, სერვერის მოპარვისას). გასაგებია, რომ მაიკროსოფტი არ გირჩევთ MS SQL მონაცემთა ბაზის შენახვას დაშიფრულ მედიაზე და ყველაფერი დაშიფრულია. ამის მთავარი პრობლემა არის პროდუქტიულობის ვარდნა და საიმედოობის შესაძლო პრობლემები წარუმატებლობის შემთხვევაში. კიდევ ერთი ფაქტორი, რომელიც ართულებს სისტემის ადმინისტრატორს, არის საჭიროება უზრუნველყოს მონაცემთა ბაზის ყველა ფაილის ხელმისაწვდომობა მათ წინაშე MS SQL სერვისის პირველი გაშვების დროს (მნიშვნელოვანია, რომ დაშიფრული მოწყობილობის დაკავშირებისას, ინტერაქტიული ).

სისტემის პროდუქტიულობის მნიშვნელოვანი დანაკარგების თავიდან ასაცილებლად, შეგიძლიათ სწრაფად გამოიყენოთ MS SQL მრავალი ფაილიდან მონაცემთა ბაზების შესაქმნელად. რა თქმა უნდა, ამ შემთხვევაში, MS SQL მონაცემთა ბაზა არ უნდა შეიქმნას 1C სერვერის მიერ საინფორმაციო ბაზის შექმნისას, მაგრამ შეიძლება შეიქმნას ცალკე. TSQL სკრიპტის მაგალითი კომენტარებით ნაჩვენებია ქვემოთ:

გამოიყენე ოსტატი
წადი
-- შექმენით მონაცემთა ბაზა SomeData,
შექმენით მონაცემთა ბაზა SomeData
- ყველა მონაცემი ინახება ფაილების ჯგუფში PRIMARY.
პირველადზე
-- რეტუშირების მონაცემების ძირითადი ფაილი დაშიფრულ დისკზე (ლოგიკური დისკი E :)
-- მას აქვს საწყისი ზომა 100 მბ, მაგრამ შეიძლება ავტომატურად გაიზარდოს 200 მბ-მდე
- Crocom 20 MB
(NAME = SomeData1,
FILENAME = "E:\SomeData1.mdf",
ზომა = 100 მბ,
MAXSIZE = 200,
FILEGROWTH = 2),
-- მონაცემთა კიდევ ერთი ფაილი რეტუშირებიდან დაშიფრულ ოპერატორზე (ლოგიკური დისკი :)
-- და საწყისი ზომა არის 100 MB, ის შეიძლება ავტომატურად გაიზარდოს ლიმიტამდე
-- დისკზე 5% ლიმიტი თითო ნაკადის ფაილზე (დამრგვალებულია 64 კბ-მდე)
(NAME = SomeData2,
FILENAME = "c:\პროგრამის ფაილები\microsoft sql სერვერი\mssql\data\SomeData2.ndf",
ზომა = 100 მბ,
MAXSIZE = შეუზღუდავი,
FILEGROWTH = 5%)
ᲥᲡᲔᲚᲨᲘ ᲨᲔᲡᲕᲚᲐ
- მიუხედავად იმისა, რომ ტრანზაქციის ჟურნალი ასევე შეიძლება დაიყოს ნაწილებად, ეს შეუძლებელი იქნება.
- იმიტომ ეს ფაილი უფრო ხშირად იცვლება და რეგულარულად იწმინდება (მაგალითად, როდის
- მონაცემთა ბაზის სარეზერვო ასლის შექმნა).
(NAME = SomeDatalog,
FILENAME = "c:\პროგრამის ფაილები\microsoft sql სერვერი\mssql\data\SomeData.ldf",
ზომა = 10 MB,
MAXSIZE = შეუზღუდავი,
FILEGROWTH = 10)
წადი
- უმჯობესი იქნება, სასწრაფოდ მივაწოდოთ მონაცემთა ბაზა კორესპონდენტს, ვინმეს სახელზე
- დაკავშირება 1C-ზე. რისთვისაც უნდა გავახმოვანოთ ნაკადის ბაზა
- მაგრად დავხურავ,
გამოიყენეთ SomeData
წადი
-- visconate procedure sp_changedbowner
EXEC sp_changedbowner @loginame = "SomeData_dbowner"

მცირე ინფორმაცია მონაცემთა ფაილის ზომის ავტომატურად გაზრდის შესახებ. მონაცემთა ბაზების შექმნისას ფაილის ზომა გაიზრდება მიმდინარე ფაილის ზომის 10%-მდე. ეს არის ძალიან კარგი გამოსავალი მცირე მონაცემთა ბაზებისთვის, მაგრამ არც ისე კარგია დიდისთვის: მონაცემთა ბაზის ზომით, მაგალითად, 20 GB, ფაილი შეიძლება დაუყოვნებლივ გაიზარდოს 2 გბ-ით. მიუხედავად იმისა, რომ ეს პროცესი იშვიათად მოხდება, მას შეიძლება დასჭირდეს რამდენიმე ათეული წამი (ყველა სხვა ტრანზაქცია ამ დროს რეალურად უმოქმედოა), რამაც შეიძლება ზიანი მიაყენოს ქმედებებს. პროპორციული ზრდის კიდევ ერთი უარყოფითი შედეგი, რომელიც ვლინდება დისკზე ძალიან ბევრი ადგილის დროს, არის დაუყოვნებელი მარცხის ალბათობა თავისუფალი სივრცის ნაკლებობის გამო. მაგალითად, თუ 40 გბ დისკის დანაყოფი შეიცავს მონაცემებს ერთი მონაცემთა ბაზისთვის (უფრო ზუსტად, მთელი მონაცემთა ბაზის ერთი ფაილის), მაშინ მონაცემთა ბაზის ფაილის კრიტიკული ზომა აბსოლუტურად აუცილებელია. მონაცემთა ფაილი არის 35 GB. დაინსტალირებული ზომით, 10-20 მბ-ით გაზრდა შესაძლებელია 39 გბ-მდე.

ამიტომ, მიუხედავად იმისა, რომ არჩეულ ჩამონათვალში მითითებულია მონაცემთა ბაზის ერთ-ერთი ფაილის ზომა 5% ზომით, მონაცემთა დიდი ზომის შემთხვევაში უმჯობესია მონაცემთა ბაზის ერთ-ერთი ფაილის ზომა დააყენოთ 10-20 მბ-ზე. როდესაც მითითებულია მონაცემთა ბაზის ფაილების ზომის ზრდის მნიშვნელობა, აუცილებელია მაქსიმალური ზომის აღდგენა, სანამ ფაილების ჯგუფის ერთ-ერთი ფაილი არ მიაღწევს მაქსიმალურ ზომას. ამრიგად, თუ SomeData1.mdf ფაილი აღწევს მაქსიმალურ ზომას 200 მბ, SomeData2.ndf ფაილის ზომა იქნება დაახლოებით 1,1 გბ.

ასეთი მონაცემთა ბაზის შექმნის შემდეგ, სადაც დაუცველი ფაილები SomeData2.ndf და SomeData.ldf ხელმისაწვდომი გახდება თავდამსხმელისთვის, ძალზე მნიშვნელოვანია მონაცემთა ბაზის განახლება (მათ შორის, მონაცემთა ბაზის ორიგინალური სტრუქტურის ჟურნალის შესახებ ინფორმაცია) განაწილდება მათ შორის. რამდენიმე ფაილი, უფრო მეტიც, ძირითადი ინფორმაცია (მათ შესახებ, მაგალითად, რომელი ფაილები ქმნიან მონაცემთა ბაზას) ინახება დაშიფრულ ფაილში.

რა თქმა უნდა, ვინაიდან მონაცემთა ბაზის ფაილები ინახება სხვადასხვა კრიპტოგრაფიული ფუნქციების გამოყენებით, სარეზერვო (ყველა ფაილის) არ უნდა განხორციელდეს დაშიფრული მოწყობილობებზე. მონაცემთა ბაზის მრავალი ფაილის არქივის უზრუნველსაყოფად გამოიყენეთ ბრძანება "BACKUP DATABASE" ძირითადი სინტაქსი. გთხოვთ, გაითვალისწინოთ, რომ მონაცემთა ბაზის სარეზერვო ასლის პაროლით დაცვის შესაძლებლობის მიუხედავად ("PASSWORD=" და "MEDIAPASSWORD=" ბრძანების "BACKUP DATABASE"), ასეთი სარეზერვო ასლი არ არის დაშიფრული!

მონაცემთა დაშიფვრა აპლიკაციის სერვერიდან და კლიენტის ნაწილებიდან, რომლებიც ინახება დისკებზე

უმეტეს შემთხვევაში, შეუძლებელია 1C:Enterprise-ის (კლიენტის ნაწილი და დამატებითი სერვერის) მიერ გაფორმებული ფაილების სწორი შენახვის ამოცნობა მოწყობილობაზე, რომელიც დაშიფრულია, არაგონივრულად მაღალი ხარჯების, დაცვის და ა.შ. რეალური საჭიროებაა იმის გაგება, რომ პროგრამის დამატებითი სერვერი და კლიენტის მხარე უფრო ხშირად გამოიყენება დროის საათის ფაილების შესაქმნელად. ხშირად ეს ფაილები შეიძლება დაიკარგოს პროგრამის დასრულების შემდეგ და პრაქტიკულად შეუძლებელია მათი წაშლის გარანტია 1C მეთოდების გამოყენებით. ამ გზით, საჭიროა დაშიფროთ დირექტორია, რომელიც მუშავდება შრომატევადი ფაილებისთვის 1C-ში, ან არ შეინახოთ იგი დისკზე RAM-დისკის გამოყენებით (სხვა ვარიანტი ყოველთვის არ არის შესაძლებელი ფაილების ზომის გამო იქმნება და შეიძლება სწრაფად მოხდეს 1C დანამატის მეხსიერება: Enterprises).

მონაცემთა დაშიფვრა 1C მეთოდების გამოყენებით.

ვიკორისტული დაშიფვრის სტანდარტული შესაძლებლობები 1C-ში მცირდება Zip ფაილებთან მუშაობის ვიკორისტურ ობიექტებამდე დაშიფვრის პარამეტრებით. ხელმისაწვდომია დაშიფვრის შემდეგი რეჟიმები: AES ალგორითმი 128, 192 ან 256 ბიტიანი გასაღებით და მოძველებული ალგორითმი, რომელიც თავდაპირველად გამოიყენებოდა Zip არქივში. გაფართოებული AES-ით დაშიფრული Zip ფაილები არ იკითხება მრავალი არქივის მიერ (WinRAR, 7zip). ფაილის შესაქმნელად, რომელიც შეიცავს დაშიფრულ მონაცემებს, უნდა მიუთითოთ პაროლი და დაშიფვრის ალგორითმი. დაშიფვრა-გაშიფვრის ფუნქციის უმარტივესი მაგალითი, ამ მიზანშეწონილობის საფუძველზე, ნაჩვენებია ქვემოთ:

ფუნქცია EncryptData (მონაცემები, პაროლი, დაშიფვრის მეთოდი = განუსაზღვრელი) ექსპორტი

// ჩაწერეთ მონაცემები ფაილში საათამდე. თუ შორს წახვედი, ნებისმიერი ხარკი, რისი შენახვაც შეგიძლია, ამ გზით შეინახება.
ValueVFile(TimingFile-ის სახელი, მონაცემები);

// დროის მონაცემების ჩაწერა არქივში
Zip = New EntryZipFile (TimeFileArchive-ის სახელი, პაროლი, დაშიფვრის მეთოდი);
Zip.Add (დროის ფაილის სახელი);
Zip.Write();

// კითხულობს მონაცემებს ამოღებული არქივიდან RAM-ში
EncryptedData = NewValueShort(NewDualData(NameTimeFileArchive));

// დროის ფაილები – წაშლილია

EndFunctions ფუნქცია DecryptData (Encrypted Data, Password) ექსპორტი

// პატივისცემა! გადაცემული პარამეტრების სისწორე არ არის დამოწმებული

// მნიშვნელობის ფაილში გადაცემის ჩანაწერი
NameTimeTimeFileArchive = RemoveTimeTimeFile("zip");
DoubleDataArchive = EncryptedData.Remove();
DualDataArchive.Write(NameTimeFileArchive);

// საგულდაგულოდ ჩაწერილი არქივის პირველი ფაილი გადმოწერილია
NameTimeTimeFile = RejectImTimeTimeFile();
Zip = New ReaderZipFile (TimeTimeFileArchiveImage, Password);
Zip.Forcible(Zip.Items, TimeFileName, UpdateModeZipFiles.Do Not Update);

// ფაილიდან ჩანაწერების კითხვა
Data = ValueFile (TimeFileName + "\" + Zip.Elements.Im);

// ხილული დროის საათის ფაილები
VidalityFile (TimeTimeFile);
Vidality ფაილი (Im'ya Timchasovogo ფაილის არქივი);

დანის დაბრუნება;

ბოლო ფუნქციები

რა თქმა უნდა, ამ მეთოდს არ შეიძლება ეწოდოს იდეალური - მონაცემები ჩაწერილია დროის საქაღალდეში ღია ხედში, მეთოდის პროდუქტიულობა, გულწრფელად რომ ვთქვათ, უარესია, ვიდრე სხვაგან, მონაცემთა ბაზაში შენახვა მოითხოვს ძალიან დიდ ადგილს, მაგრამ არა მეთოდი, რომელიც დაფუძნებულია პლატფორმის ჩაშენებულ მექანიზმებზე. უფრო მეტიც, ის აღემატება ბევრ სხვა მეთოდს - ეს მეთოდი ერთდროულად შიფრავს მონაცემთა შეფუთვას. თუ თქვენ გჭირდებათ დაშიფვრის განხორციელება იმ ხარვეზების გარეშე, რაც ამ მეთოდს აქვს, თქვენ უნდა განახორციელოთ ისინი გარე კომპონენტში, ან შეხვიდეთ სხვა ბიბლიოთეკებში COM ობიექტის გვერდის საშუალებით, მაგალითად, Vikorist და Microsoft CryptoAPI. როგორც წესი, ჩვენ შეგვიძლია დავაყენოთ რიგის დაშიფვრის/გაშიფვრის ფუნქცია აღდგენილი პაროლის საფუძველზე.

ფუნქცია EncryptStringDES (დაშიფრული მწკრივი, პაროლი)

CAPICOM_ENCRYPTION_ALGORITHM_DES = 2; // ეს მუდმივი არის CryptoAPI-დან


EncryptionMechanism.Content = UnencryptedRow;
დაშიფვრის მექანიზმი.ალგორითმი.სახელი = CAPICOM_ENCRYPTION_ALGORITHM_DES;
EncryptedRow = Encryption Mechanism.Encrypt();

TurnEncryptedRow;

EndFunctions // დაშიფრეთ StringDES()

ფუნქცია DecryptStringDES (EncryptRow, Password)

//უვაგა! პარამეტრები არ არის დამოწმებული!

დაშიფვრის მექანიზმი = New COMObject ("CAPICOM.EncryptedData");
დაშიფვრის მექანიზმი.SetSecret(Password);
სცადე
Encryption Mechanism.Decrypt(EncryptionRow);
ბრალი
// Არასწორი პაროლი!;
აღმოჩნდა Undesigned;
KinetsProby;

გარდამტეხი მექანიზმის დაშიფვრა. შინაარსი;

EndFunctions // DecryptStringDES()

გთხოვთ, გაითვალისწინოთ, რომ ცარიელი მნიშვნელობის მწკრივის ან პაროლის სახით ამ ფუნქციაში გადატანამდე, თქვენ არ მიიღებთ შეტყობინებას გადახდის შესახებ. სერია, ასეთი დაშიფვრის პროცედურის გამოყენების შემდეგ, შემცირდა ორიგინალის ღირებულებამდე. ამ დაშიფვრის სპეციფიკა ისეთია, რომ მაშინაც კი, თუ დაშიფვრავთ ორ რიგს, სხვა რიგები არ იქნება იდენტური.

ძირითადი სარგებელი კრიპტოგრაფიული მახასიათებლების აღმოფხვრის საათში.

კრიპტოგრაფიული ფუნქციების გამოყენებით, ხშირად დაშვებულია იგივე კომპრომისები:

კრიპტოგრაფიის ზრდის გამო პროდუქტიულობის შემცირების არასაკმარისი შეფასება.

კრიპტოგრაფია არის ამოცანა, რომელიც მოითხოვს ბევრ გამოთვლას (განსაკუთრებით ისეთი ალგორითმები, როგორიცაა DES, 3DES, GOST, PGP). და ერთხელ პროდუქტიული და ოპტიმიზებული ალგორითმების შერჩევა (RC5, RC6, AES) არ უწყობს ხელს მეხსიერებიდან და გამოთვლითი დამუშავების მონაცემების გადაცემას. და შესაძლებელია გავითვალისწინოთ სერვერის კომპონენტების ფართო სპექტრის შესაძლებლობები (RAID მასივები, ფრინჯ გადამყვანები). ტექნიკის დაშიფვრის ან დაშიფვრის გასაღების ტექნიკის მოხსნისას მნიშვნელოვანი გავლენა იქონია პროდუქტიულობაზე: გადაცემის სიჩქარე აქსესუარსა და მეხსიერებას შორის (და ასეთი მოწყობილობის პროდუქტიულობა შეიძლება მნიშვნელოვნად არ იმოქმედოს) ї როლები) . მცირე მონაცემების ვალდებულებების (მაგალითად, საფოსტო შეტყობინებების) დაშიფვრის გაგრძელებით, სისტემაზე ფინანსური ტვირთის მატება არც ისე მნიშვნელოვანია, მაგრამ ყველაფრის სრული დაშიფვრის შემთხვევაში, შესაძლოა გავლენა იქონიოს სისტემის პროდუქტიულობაზეც. სისტემა მთლიანად.

პაროლების და გასაღებების შერჩევისას მიმდინარე შესაძლებლობების შეუფასებლობა.

ამ დროისთვის, ტექნოლოგიის შესაძლებლობები ისეთია, რომ 40-48 ბიტიანი მნიშვნელობის გასაღების არჩევა შეიძლება მცირე ორგანიზაციამ, ხოლო გასაღები 56-64 ბიტიანი მნიშვნელობის მქონე დიდმა ორგანიზაციამ. ტობტო. გასაღების შესაქმნელად გამოყენებული ალგორითმების ბრალია, იქნება ეს 96 თუ 128 ბიტიანი. თუმცა, კლავიშების უმეტესობა გენერირებულია დამატებითი ჰეშის ალგორითმების გამოყენებით (SHA-1 და ა.შ.) პაროლის პანელზე, რომელიც შეყვანილია კლიენტის მიერ. ამ ტიპში თქვენ არ გჭირდებათ გასაღების ჩართვა 1024 ბიტით. უპირველეს ყოვლისა, ყველაზე ხშირად გამოყენებული პაროლი არის ის, რომლის გამოცნობაც ადვილია. თანამდებობის პირები, რომლებიც გააადვილებენ შერჩევას, ე: vikoristannya ერთზე ნაკლები სარეგისტრაციო წერილი; Vykoristannya სიტყვები, სახელები და გამონათქვამები პაროლებში; ცნობილი თარიღების ვიკორისტანია, ხალხის დღეები და ა.შ. პაროლების გენერირებისას „ნიმუშების“ შერჩევა (მაგალითად, 3 ასო, შემდეგ 2 რიცხვი, შემდეგ 3 ასო მთელი ორგანიზაციისთვის). კარგი პაროლი უნდა შეიცავდეს ასოების უნიკალურ თანმიმდევრობას ორივე რეგისტრიდან, რიცხვებიდან და გაყოფის სიმბოლოებიდან. პაროლები, რომლებიც შეყვანილია კლავიატურიდან 7-8 სიმბოლომდე, ამ წესების დაცვის შემთხვევაში, შეიძლება შეირჩეს გონივრულ საათში, უფრო მეტიც, თუ პაროლი არის მინიმუმ 11-13 სიმბოლო. იდეალური გამოსავალია გასაღების გენერირება პაროლის გამოყენებით, მაგალითად, სხვადასხვა სმარტ ბარათების გამოყენებით, მაგრამ ამ შემთხვევაში აუცილებელია დაშიფვრის გასაღების გაფლანგვისგან დაცვის შესაძლებლობა.

გასაღებების და პაროლების არასაიმედო შენახვა.

ამ პროდუქტის ტიპიური კონდახებია:

  • მომხმარებლის მონიტორზე დამაგრებულ სტიკერებზე დაწერილი გრძელი და რთული პაროლები.
  • ყველა პაროლის შენახვა ფაილისთვის, რომელიც არ არის მოპარული (ან მოპარული ფაილი ბევრად სუსტია თავად სისტემისთვის)
  • ელექტრონული გასაღებების შენახვა უსაფრთხო ადგილას.
  • ვაჭრებს შორის ელექტრონული გასაღებების გადაცემის ნაწილები.

უსაფრთხოების კარები ისევ მუშაობს, როცა გასაღები კარის სახელურის ქვეშ დევს?

დაშიფრული მონაცემების გადაცემა შუაში არ არის უსაფრთხო.

უსაფრთხოების სისტემის ორგანიზების დრომდე, დარწმუნდით, რომ ასრულებთ თქვენს მისიას. მაგალითად, მე ვიცოდი სიტუაცია (რომელიც არ იყო დაკავშირებული 1C-თან), თუ თავდაპირველი დაშიფრული ფაილი ღიად განთავსდებოდა დროისადმი მგრძნობიარე საქაღალდეში, რომლის მტკიცებულებაც შეიძლებოდა უსაფრთხოდ წაკითხულიყო. ხშირად, დაშიფრული მონაცემების სარეზერვო ასლები იმალება და იმალება ამ მონაცემების "მახლობლად".

კრიპტოგრაფიული მახასიათებლების გამოყენება არ არის განპირობებული

თუ გადაცემული მონაცემები დაშიფრულია, მასზე წვდომა შეუძლებელია და მონაცემები არ იქნება ხელმისაწვდომი მათ ლოკალურ მდებარეობებში. მაგალითად, IPSec სერვისები ჩვეულებრივ არ უგულებელყოფენ პროგრამის სერვერის მხარეს ტრაფიკის „მოსმენის“ შესაძლებლობას.

ამგვარად, დაზიანებული კრიპტოგრაფიული სისტემების შემთხვევაში რაიმე კომპრომისის თავიდან ასაცილებლად, კვალის გათხრამდე (მინიმუმ) შექმენით შემდეგი.

  • ახსენი:
    • რა უნდა მოიპაროს?
    • როგორია ვიკორსტატის კვალის დაცვის მეთოდი?
    • რომელი ნაკვეთებისთვის სისტემა მოითხოვს უსაფრთხოებას?
    • ვის აქვს წვდომა Keruvatime-ზე?
    • როგორ გამოვიყენოთ დაშიფვრა ყველა საჭირო ანგარიშზე?
  • იპოვეთ ადგილი ინფორმაციის შესანახად, კომპიუტერზე მისი გაგზავნის მეთოდი და კომპიუტერი, რომელსაც ექნება წვდომა ამ ინფორმაციაზე. სისტემის აღდგენამდე შესაძლებელია სიჩქარის, სიმძლავრის და მოკლევადიანი გაზომვის შესახებ ინფორმაციის მოძიება, რაც სასარგებლოა სიჩქარის კოდის ოპტიმიზაციისთვის.
  • შეაფასეთ სისტემის გავლენა სხვადასხვა ტიპის შეტევებზე.
  • მოამზადეთ და დააფიქსირეთ თქვენი სისტემის უსაფრთხოების გეგმა.
  • სისტემის ეკონომიკური ეფექტურობის (ვალიდობის) შეფასება.

ვისნოვოკი

რა თქმა უნდა, ერთი შეხედვით, შეუძლებელია 1C-ში უსაფრთხოებასთან დაკავშირებული ყველა ასპექტის ჩვენება, მაგრამ წინა ნაბიჯების გაკეთება თავად შეგიძლიათ. რა თქმა უნდა, ამ პლატფორმას არ შეიძლება ეწოდოს იდეალური - მას, ისევე როგორც ბევრ სხვას, აქვს მოპარული სისტემის ორგანიზების საკუთარი პრობლემები. ეს სულაც არ ნიშნავს, რომ ამ პრობლემების გვერდის ავლა შეუძლებელია, თუმცა, შესაძლოა, ყველა ხარვეზი აღმოიფხვრას სისტემის სწორი განვითარების, ხელშეწყობისა და აღდგენის გზით. პრობლემების უმეტესობა წარმოიქმნება კონკრეტული აპლიკაციის გადაწყვეტის არასაკმარისი დამუშავებით და მისი განვითარების შუალედით. მაგალითად, ტიპიური გადაწყვეტილებები მნიშვნელოვანი ცვლილებების გარეშე უბრალოდ არ გადადის მსოფლიოდან დაცულ სისტემაში.

ეს სტატია კიდევ ერთხელ ადასტურებს, რომ უსაფრთხოების მიდგომების ნებისმიერი კომპლექსი საჭიროა განვითარების ყველა ეტაპის დასაფარად: განვითარება, ხორხი, სისტემის ადმინისტრირება, სავალდებულო, ორგანიზაციული მიდგომები. საინფორმაციო სისტემებში უსაფრთხოების მთავარი საფრთხე თავად „ადამიანური ფაქტორია“. მიდგომების ეს ნაკრები შეიძლება იყოს გონივრული და დაბალანსებული: აზრი არ აქვს და ნაკლებად სავარაუდოა, რომ საკმარისი ფული დაინახოს თავდაცვის ორგანიზებისთვის, რაც აჭარბებს თავად მონაცემებს.

კომპანია - ეს არის უნიკალური სერვისი მყიდველებისთვის, საცალო მოვაჭრეებისთვის, დილერებისთვის და შვილობილი პარტნიორებისთვის. გარდა ამისა, ეს არის ერთ-ერთი უმსხვილესი ონლაინ მაღაზია რუსეთში, უკრაინაში, ყაზახეთში, რომელიც მომხმარებელს სთავაზობს ფართო ასორტიმენტს, გადახდის მეთოდების გარეშე, შესყიდვების სწრაფ (ხშირად ადგილზე) დამუშავებას, პერსონალური განყოფილების შესყიდვის პროცესის დაჩქარებას.

ამ კონტექსტის დასტა იგივეა, რაც პირველი ბუფერი, რომელსაც გამოყოფთ პროგრამის დასრულებისას. მარცხნივ, ჯერ (LIFO) ნიშნავს იმას, რაც დარჩა, რას დებთ, უპირველეს ყოვლისა, როცა მოტრიალებთ - როცა ორ ელემენტს დაწყობთ დასტაში, "A" და შემდეგ "B", შემდეგ ჯერ რას დებთ ზემოდან. სტეკის იქნება "B", ხოლო შემდეგი ნაბიჯი იქნება "A".

როდესაც თქვენ ინახავთ ფუნქციას თქვენს კოდში, ბრძანება ფუნქციის გამოძახების შემდეგ ინახება დასტაზე და მეხსიერების ნებისმიერ სივრცეში, რომელიც შეიძლება გადაიწეროს ფუნქციის გამოძახებით. არჩეულ ფუნქციას შეუძლია გამოიყენოს მეტი დასტა სივრცე მისი ლოკალური ცვლილებებისთვის. მას შემდეგ რაც დაიშლება, საჭირო იქნება ცვლილებების ლოკალური სივრცის ჩანაცვლება, როგორიცაა ვიკორისტები და შემდეგ წინა ფუნქციაზე დაბრუნება.

ხელახლა დაწყობა

სტეკის შევსება - თუ თქვენ გამოყოფდით მეტ მეხსიერებას სტეკისთვის, ის არ გადაეცემა პროგრამას. მიმდინარე სისტემებზე შეიძლება გქონდეთ მხოლოდ 256 ბაიტი სტეკისთვის და რადგან კანის ფუნქცია იკავებს 32 ბაიტს, შეგიძლიათ გამოძახოთ ფუნქცია 8 ფუნქცია 2 ღრმა ფუნქციით 1, როგორც Clicks ფუნქცია 3, რომელიც დააწკაპუნებს ფუნქციას 4... ვინც არ უნდა იყოს გამოძახების ფუნქცია 8, რომელიც უწოდებს ფუნქციას 9, და ფუნქცია 9 გადაწერს მეხსიერებას დასტას შორის. შეგიძლიათ გადაწეროთ მეხსიერება, კოდი და ა.შ.

არსებობს უამრავი პროგრამა, რომელსაც შეუძლია ამის გაკეთება A ფუნქციაზე დაწკაპუნებით, რომელიც შემდეგ აწკაპუნებს ფუნქციას B, რომელიც შემდეგ აწკაპუნებს ფუნქციას C, რომელიც შემდეგ აწკაპუნებს ფუნქციას A. შეგიძლიათ დახარჯოთ საათზე მეტი, მაგრამ მხოლოდ ერთხელ არასწორად შეყვანილი სახელით її. її scho შესახებ მეორე დღეს, ხოლო კომპიუტერი კომპიუტერმა არ იცის, რომ დასტა გადაწერილია.

რეკურსიული ფუნქციები ასევე არის მიზეზი იმისა, თუ რატომ წერთ რეკურსიულად (ასე რომ თქვენი ფუნქცია თავის თავს იწოდებს), მაშინ უნდა იცოდეთ ამ სტატიკური/გლობალური ცვლილებების შესახებ, რათა შეინარჩუნოთ ყველაფერი თანმიმდევრული ій რეკურსიები.

როგორც წესი, OS არის პროგრამირების ის ტიპი, რომელსაც იყენებთ, ქმნით სტეკს და არ გაქვთ ხელიდან. თქვენ უნდა დაათვალიეროთ თქვენი დაწკაპუნების გრაფიკი (ხის მსგავსი სტრუქტურა, რომელიც აჩვენებს თქვენს მთავარ წერტილში, რომ იძახებს თითოეულ ფუნქციას), რათა გაიგოთ, თუ რამდენად ღრმაა თქვენი დაწკაპუნების ფუნქციები და შემდეგ ამოიცნოთ ციკლები და რეკურსიები, რომლებიც არ არის აღიარებული. ყოველდღიური ციკლები და რეკურსიები ჩნდება, მაგრამ ცალ-ცალკე იღუპება, როგორც ამას ძალიან ბევრჯერ უწოდებენ.

კარგი პროგრამირების პრაქტიკის, სტატიკური და დინამიური ტესტირების გარდა, ამ მაღალი დონის სისტემებიდან ბევრს ვერ მიიღებთ.

დანერგილი სისტემები

ახალ სამყაროში, განსაკუთრებით მაღალი სანდოობის მქონე კოდებში (ავტომობილები, ავიაცია, სივრცე), თქვენ ასრულებთ კოდის უამრავ გადასინჯვას და გადახედვას და ასევე ასრულებთ შემდეგ ქმედებებს:

  • დაიცავით რეკურსიები და ციკლები - წინასწარი მორთვის პოლიტიკა და ტესტირება
  • კოდის მორთვა და დასტა ერთმანეთისგან შორს არის (კოდი არის ფლეშ მეხსიერებაში, დასტა არის RAM-ში და ისინი არ არიან ერთმანეთთან შედარებადი)
  • მოათავსეთ მშრალი ლაქები დასტაზე - მეხსიერების ცარიელი ადგილი, რომელსაც შეავსებთ ჯადოსნური ნომრით (დააყენეთ ხელახალი რენდერის პროგრამა, მაგრამ აქ უამრავი ვარიანტია) და ასობით და ათასობით ჯერ მეორედ გაგიკვირდებათ მშრალი ლაქები, გადატრიალდება ისე, რომ სუნი არ იყოს გადაწერილი.
  • Vikoristovvati zakhist mem'yati (არ ვიკონოვოთ დასტაზე, არ წაიკითხოთ ან დაწეროთ პირდაპირ დასტაზე)
  • Interchange არ იძახებს მეორე ფუნქციებს - ისინი ჩასვამენ ბრძანებებს, აკოპირებენ მონაცემებს და ნებას რთავს დამატებით მონაცემებს თქვენი დამუშავების შესახებ (წინააღმდეგ შემთხვევაში შეგიძლიათ ამოიღოთ 8 თქვენი ფუნქციების ხის სიღრმიდან, გაიმეოროთ მონაცემები და შემდეგ გამორთოთ ფუნქციების რაოდენობა შუაში. შეფერხების, რომელსაც ვიკიდი ეწოდება). თქვენ გაქვთ ციკლური ხეები - ერთი ძირითადი პროცესებისთვის და თითო კანის გაღიზიანებისთვის. როგორ შეიძლება თქვენი შეფერხებები ერთმა შეწყვიტოს... კარგი, დრაკონები...

მაღალი დონის კინო და სისტემები

მაღალი რანგის ალუმინი, რომელიც მუშაობს ოპერაციულ სისტემებში:

  • შეცვალეთ ლოკალური ცვლილებების კლასტერი (ლოკალური ცვლილებები შენახულია სტეკზე), გსურთ, რომ შემდგენელები იყვნენ უფრო გონივრული ამ მხრივ და მოათავსეთ ბევრი რამ კლასტერში, რადგან თქვენი დაწკაპუნების ხე არის Friendly.
  • უნიკალური ან მკაცრად გამოკვეთილი რეკურსია
  • ნუ გადატვირთავთ თქვენს პროგრამას მცირე ფუნქციებით - ფუნქციები დაზოგავს 64 ბაიტამდე დასტაზე (32-ბიტიანი პროცესორი, პროცესორის რეგისტრების ნახევარის შენახვა), prapori toscho).
  • ხის ხის მორთვა ზედაპირულით (ზემოთ აღწერილის მსგავსი)

ვებ სერვერები

ეს უნდა ინახებოდეს "ქვიშის ყუთში", როგორც მოგეხსენებათ, რათა აკონტროლოთ და დაასვენოთ დასტა. ყველაფერზე მეტად, თქვენ შეგიძლიათ შეიძინოთ ვებ სერვერები, ისევე როგორც სხვა მაღალი დონის ენები და ოპერაციული სისტემები, თქვენი ხელიდან მნიშვნელოვანი თანხით, მაგრამ არა იმ ენით, რომელიც გამოიყენება და სერვერის დასტაზე. მაგალითად, შეგიძლიათ დაარღვიოთ სტეკი თქვენს SQL სერვერზე.

პროგრამის დასტა არის სპეციალური მეხსიერების არეალი, რომელიც ორგანიზებულია LIFO (ბოლო შემოსვლა, პირველი გამოსვლა) პრინციპის გამოყენებით. სახელწოდება „დაწყობა“ ფირფიტების დაწყობის პრინციპის მსგავსია - შეგიძლიათ დაადოთ ფირფიტები ერთმანეთზე (დასტის დამატების მეთოდი, „დაკერვა“, „დაძაბვა“), შემდეგ კი წაიღოთ, დაწყებული ზედა (მეთოდი otrimannya zі სტეკი, "vishtovhuvannya", "pop"). პროგრამის დასტას ასევე უწოდებენ ტექსტურ დასტას, კომპიუტერის დასტას (არ უნდა აგვერიოს „დასტაში“ - მონაცემთა აბსტრაქტული სტრუქტურა).

რა სახის დასტა გჭირდებათ? ის საშუალებას გაძლევთ ხელით მოაწყოთ ზარი ქვეპროგრამაზე. გამოძახებისას ფუნქცია შლის გარკვეულ არგუმენტებს; თქვენ ასევე შეგიძლიათ შეინახოთ თქვენი ადგილობრივი ცვლილებები აქ. გარდა ამისა, თქვენ უნდა გესმოდეთ, რომ ერთ ფუნქციას შეუძლია გამოიძახოს სხვა ფუნქცია, რომელსაც ასევე სჭირდება პარამეტრების გადაცემა და მისი ცვლილებების შენახვა. სტეკის გამოყენებით, პარამეტრების გადაცემისას, თქვენ უბრალოდ უნდა დააყენოთ ისინი სტეკზე, რათა გამოძახებულმა ფუნქციამ შეძლოს მათი ამოღება და ამოღება. ლოკალური ცვლილებების შენახვა შესაძლებელია იქაც - მისი კოდის დასაწყისში ფუნქცია ხედავს სტეკის მეხსიერების ნაწილს, ხოლო კონტროლის ჩართვისას ის ასუფთავებს და ინახავს. მაღალხარისხიან ენობრივ პროგრამებს არ აწუხებთ ასეთი მეტყველება - ყველა საჭირო რუტინული კოდი გენერირდება მათთვის შემდგენლის მიერ.

ტრაპეზის მემკვიდრეობა

ახლა ჩვენ უფრო მივუახლოვდით პრობლემას. აბსტრაქტული თვალსაზრისით, სტეკი არის გაუთავებელი სტრუქტურა, რომელშიც ახალი ელემენტები შეიძლება დაუსრულებლად დაემატოს. სამწუხაროდ, ჩვენს სამყაროში ყველაფერი ნათელია - და მეხსიერება არ არის დამნაშავე. რა მოხდება, თუ ფუნქციის არგუმენტები დასტაზე იქნება გადატანილი? რომელი ფუნქცია ხედავს მეხსიერებას მისი ცვლილებებისთვის?

იქნება ცვლილება სახელწოდებით სტეკის შევსება. კლიენტის გამოძახების ფუნქციების ორგანიზებისთვის საჭირო სტეკის ფრაგმენტები (და თითქმის ყველა პროგრამა, რომელიც დაფუძნებულია მიმდინარე ენებზე, მათ შორის ობიექტზე ორიენტირებული, და რომლებიც სხვაგვარად დაფუძნებული იქნება ფუნქციებზე), უფრო სავარაუდოა, რომ გამოიძახონ. ტ. ამრიგად, ოპერაციული სისტემა იღებს ბირთვს, ასუფთავებს დასტას და წყვეტს პროგრამას. აქ შეგიძლიათ გაზარდოთ სხვაობა სტეკის შევსებას შორის - პირველ ფაზაში, ჯარიმა წარმოიქმნება, როდესაც მეხსიერების არე გადადის არასწორ ზონაში, და რადგან დაცვა ამ ეტაპზე არ იჩენს თავს - მომავალში, სხვათა შორის, პროგრამა შეიძლება ნორმალურად იმუშაოს. როგორც კი ხოცვა-ჟლეტის ხსოვნა მოხდა, ის მოიპარეს და ამოიღეს. თუ თქვენ დაასრულებთ დასტას, პროგრამა აუცილებლად დასრულდება.

უფრო ზუსტად, უნდა აღინიშნოს, რომ ასეთი აღწერა სწორია მხოლოდ შემდგენელებისთვის, რომლებიც ადგენენ „მშობლიურ“ კოდს. ვირტუალურ მანქანას აქვს საკუთარი დასტა პროგრამების დასაპროგრამებლად, რომლის თვალყურის დევნება ბევრად უფრო ადვილია და თქვენ შეგიძლიათ საკუთარ თავს უფლება მისცეთ გადაიტანოთ შეცდომები პროგრამაში დანაშაულის ჩადენის შემთხვევაში. Sі და Sі++ ენებს არ აქვთ შესაძლებლობა უზრუნველყონ ასეთი „ფუფუნების“ დაზღვევა.

მოწყალება გამოიწვიოს

რამ შეიძლება გამოიწვიოს ასეთი მიუღებელი მდგომარეობა? აღწერილი მექანიზმიდან გამომდინარე, ერთ-ერთი ვარიანტია დაწკაპუნების შეყვანის ფუნქციების ძალიან დიდი რაოდენობა. განსაკუთრებით დამაჯერებელია ვიკორისკალური რეკურსიით მიდგომის განვითარების ეს ვარიანტი. უწყვეტი რეკურსია (გამოთვლების „გაანგარიშების“ მექანიზმის არარსებობის შემთხვევაში) წყდება იმავე გზით, გამომავალი ჩანაცვლებამდე, რამაც შეიძლება გამოიწვიოს სტაგნაცია. თუმცა, დასტაზე გამოყოფილი მეხსიერების მცირე რაოდენობა (რაც, მაგალითად, დამახასიათებელია მიკროკონტროლერებისთვის), შეიძლება საკმარისი იყოს დაწკაპუნების მარტივი თანმიმდევრობა.

კიდევ ერთი ვარიანტია ლოკალური ცვლილებები, რომლებიც საჭიროებენ მეხსიერების დიდ რაოდენობას. ლოკალური მასივის დაწყება მილიონი ელემენტით და მილიონი ლოკალური ცვლადით (რაც ძალიან იშვიათად ხდება) არ არის საუკეთესო იდეა. ასეთი "ხარბი" ფუნქციის ერთმა დაწკაპუნებამ შეიძლება გამოიწვიოს სტეკის ხელახალი შევსება. დიდი რაოდენობით მონაცემების მოსაპოვებლად, უფრო სწრაფია დინამიური მეხსიერების მექანიზმების გამოყენება უზუსტობების დამუშავების დასაშვებად.

ამასთან, დინამიურ მეხსიერებაზე წვდომა და შენახვა შესაძლებელია მხოლოდ ხელით (რადგან ის დაკავებულია ოპერაციული სისტემის მიერ), ხოლო პირდაპირი წვდომით აუცილებელია მისი ხელით ნახვა და წაშლა. დასტაზე მეხსიერება სწრაფად ჩანს (ფაქტობრივად, საჭიროა მხოლოდ ერთი რეგისტრის მნიშვნელობების შეცვლა), გარდა ამისა, დასტაზე ხილულ ობიექტებს ავტომატურად გამოძახებენ დესტრუქტორებს, როდესაც ფუნქცია ჩართულია და დასტა გასუფთავდება. რა თქმა უნდა, დაუყოვნებლივ აუცილებელია მეხსიერების ამოღება დასტადან. ამრიგად, ხელახალი განხორციელების მესამე გზა არის პროგრამისტის მიერ მეხსიერების დასტაზე დამოუკიდებელი ხილვადობა. სპეციალურად ამ მიზნით, ენის ბიბლიოთეკა უზრუნველყოფს alloca ფუნქციას. გთხოვთ გაითვალისწინოთ, რომ სანამ malloc დინამიური მეხსიერების ფუნქციას აქვს თავისი „ტყუპი“ თავისუფალ რეჟიმში, alloca ფუნქციას არ გააჩნია - მეხსიერება ავტომატურად იხსნება ამ ფუნქციის კონტროლის ჩართვის შემდეგ. შესაძლოა, ეს ქმნის უფრო რთულ სიტუაციას - ფუნქციიდან გასვლამდეც კი, მეხსიერება არ იქნება ხელმისაწვდომი. ნუ აინტერესებთ მათ, ვინც კაცის სიუჟეტის მიხედვით, „ალოკას ფუნქცია ინახება მდიდარ სისტემებში, მისი დანერგვა პრობლემურია და ბევრი პრობლემა აქვს; არა "საამაყო" - ჯერ კიდევ არსებობს გამარჯვებული დამოკიდებულება.

გამოიყენეთ იგი

მაგალითად, მოდით შევხედოთ კოდს ფაილების რეკურსიულად ძიების, MSDN-ზე მათი ამოღების მიზნით:

Void DirSearch(String* sDir) ( სცადეთ ( // იპოვეთ ქვესაქაღალდეები იმ საქაღალდეში, რომელიც გადაცემულია. String* d = დირექტორია::GetDirectories(sDir); int numDirs = d->get_Length(); for (int i= 0;< numDirs; i++) { // Find all the files in the subfolder. String* f = Directory::GetFiles(d[i],textBox1->ტექსტი); int numFiles = f->get_Length(); for (int j = 0; j< numFiles; j++) { listBox1->Items->Add(f[j]); ) DirSearch(d[i]); ) ) catch (System:: Exception* e) ( MessageBox::Show(e->Message); ) )

ეს ფუნქცია იბრუნებს ფაილების სიას მითითებულ დირექტორიაში და შემდეგ აბრუნებს სიის ელემენტებს, რომლებიც, როგორც ჩანს, დირექტორიებია. როგორც ჩანს, თუ ჩვენ მივიღებთ ღრმა ფაილური სისტემის ხეს, მივიღებთ ბუნებრივ შედეგს.

განსხვავებული მიდგომის მაგალითი, აღებული კვებისგან "რატომ ივსება დასტა?" საიტიდან, სახელწოდებით Stack Overflow (საიტი შეიცავს არხებისა და მიმოხილვების კრებულს ყველა სახის პროგრამირების თემაზე და არა მხოლოდ სტეკის შევსებას, რაც შეიძლება გაკეთდეს):

#define W 1000 #define H 1000 #define MAX 100000 //... int main() ( int image; float dtr; initImg (image,dtr); return 0; )

როგორც ჩანს, მთავარ ფუნქციას აქვს მეხსიერება დასტაზე int და float ტიპების მასივის ქვეშ, მილიონი კანის ელემენტისთვის, რაც საერთო ჯამში შეადგენს 8 მეგაბაიტზე ოდნავ ნაკლებს. თუ ხვდებით, რომ Visual C++ სტეკისთვის 1 მეგაბაიტზე მეტს იტოვებს, დასკვნა აშკარა ხდება.

და კონდახის ღერძი, აღებული GitHub საცავიდან Lightspark Flash player პროექტისთვის:

DefineSoundTag:: DefineSoundTag(/* ... */) ( // ... ხელმოუწერელი int soundDataLength = h.getLength()-7; ხელმოუწერელი char *tmp = (ხელმოუწერელი char *) alloca(soundDataLength); // .. .

შეგიძლიათ დარწმუნებული იყოთ, რომ h.getLength()-7 არ იქნება ისეთი დიდი რიცხვი, რომ შემდეგი მწკრივი არ გადაიფაროს. Ale chi varto zashchadzheny na vidіlenі mem'yatі საათის "პოტენციური" villotu პროგრამა?

Ჩანთა

Stack overflow არის ფატალური პრობლემა, რადგან პროგრამები, რომლებიც იყენებენ რეკურსიულ ფუნქციებს, ყველაზე ხშირად განიცდიან. თუმცა, ვინაიდან პროგრამა არ იტევს ასეთ ფუნქციებს, ხელახალი დანერგვა მაინც შესაძლებელია დიდი რაოდენობით ლოკალური ცვლილებების ან ხილული მეხსიერების დასტაზე ცვლილებების გამო. ყველა კლასიკური წესი აღარ არის ძალაში: ვინაიდან შესაძლებელია არჩევანის გაკეთება, რეკურსიის ნაცვლად უფრო ადვილია გამეორების უპირატესობის მიღწევა და ასევე კომპილერის ჩანაცვლებისთვის ხელით მუშაობის გარეშე.

ბიბლიოგრაფიული სია

  • ე.ტანენბაუმი. კომპიუტერული არქიტექტურა.
  • ვიკიპედია. დასტის გადინება.
  • Stack Overflow. დასტის გადატვირთვა C++.

14.04.2016 ვერსია 3.22 შეიცვალა ინტერფეისი, გამოსწორდა შეცდომები რეესტრის გადაცემისას, შეიცვალა ორგანიზაციის გადაცემის პროცედურა და ღრუბლოვანი პოლიტიკა. პლატფორმა 8.3.7.2027 BP 3.0.43.174
17.03.2016 ვერსია 3.24 შესწორებები. პლატფორმა 8.3.8.1747 BP 3.0.43.241
06/16/2016 ვერსია 3.26 მარკირების შესწორებები. პლატფორმა 8.3.8.2088 BP 3.0.44.123
16/10/2016 ვერსია 4.0.1.2 მნიშვნელობის საქაღალდის გადატანა შესწორებულია, ღრუბლოვანი პოლიტიკის გადაცემა 3.44.* გამოშვებისთვის შეიცვალა. პლატფორმა 8.3.9.1818 BP 3.0.44.164.
19.04.2017 ვერსია 4.0.2.7 შეიცვალა პროვაიდერებთან ასოცირებული რეგისტრების გადაცემის ალგორითმი, შესწორებულია მარკირება და შესწორებულია შეტყობინებების გადაწერით გადაცემა.
29.05.2017 ვერსია 4.0.4.5 შეიცვალა არქივების გადაცემა, ახლა დაემატა გადაცემული დოკუმენტების არქივის მიმოხილვა.
05/30/2017 ვერსია 4.0.4.6 დაფიქსირდა შეფერხება აუცილებელი მუშაკების სიის შევსებისას (შოის წყალობით)
17.06.2017 ვერსია 4.0.5.1 შეიცვალა არქივების გადაცემის ალგორითმი.
19.07.2017 ვერსია 4.0.5.4 KI-ს გადაცემა BP 2.0-დან შეიცვალა. სამწუხაროდ, Smilegm-ზე იყო პორტირება UT 10.3-დან, ამ ვერსიაში ასეთი სიტუაციისთვის პორტირება ოდნავ გამოსწორდა)))
08/10/2017 ვერსია 4.0.5.5 შესწორებები BP 2.0-დან გადატანისას
09/19/2017 ვერსია 4.4.5.7 დაფიქსირდა კავშირის შემოწმება 3.0.52-ისთვის.*
28.11.2017 ვერსია 4.4.5.9 მარკირების შესწორებები
12/06/2017 ვერსია 5.2.0.4 ძიების შესაძლებლობის ალგორითმი გადამუშავებულია. BP 1.6-დან გადაცემის პროცედურის დამატების შემდეგ, BP-სთან ხისტი კავშირი აღარ არის - შეგიძლიათ უსაფრთხოდ გადაიტანოთ მონაცემები "იგივე" ზომით, როგორც ახალი კონფიგურაციები. ყველა ასპექტი გამოსწორდება სასწრაფოდ.
12/08/2017 ვერსია 5.2.1.3 დამატებულია ალგორითმი ხელფასის გადახდის ანგარიშების BP.2.0-დან BP 3.0-ზე გადასატანად. ახალ კონფიგურაციებს შორის გაცვლის ცვლილებები გამორთულია.
19.12.2017 ვერსია 5.2.2.2 მოწმეთა დამოუკიდებელი ანგარიშების რეესტრის გადაცემა, როგორც ეს სხვა რეესტრებშია, დაზუსტებულია.

12/06/2017 ახალი ვერსია 5.2.0.4. ერთ-ერთი ყველაზე მნიშვნელოვანი ცვლილება არის BP 1.6-დან BP 3.0-ზე გადატანის შესაძლებლობა. მთავარი ცვლილება არის მრჩეველთა შეტყობინებების ძიების მართვა - ადრინდელ ვერსიებში ძიება არის GUID-ისთვის და ამ ვერსიაში შეგიძლიათ ჩართოთ ძებნა "დეტალებისთვის":

17.01.2018 ვერსია 5.2.2.3 შესწორებულია მცირე კონტრაქტორების მარკირება და ანგარიშების პერიოდული რეესტრები.

07/19/2018 ვერსია 5.2.2.8 დაფიქსირდა შესწორებული მარკირება.

რომელშიც შეგიძლიათ შეიყვანოთ ნებისმიერი გამომძიებლის ძიების დეტალები. ეს რეჟიმი თავისთავად არის "გამარჯვება" მუშაკთა რაოდენობაზე, მაგალითად, თუ საჭიროა გაცვლა არსებული ბაზიდან, რომელშიც უკვე არის მონაცემები (მაგალითად, ორი ორგანიზაციის სტრუქტურის ერთ ბაზაში გაერთიანება).

21.12.2015 რ. პლატფორმა 8.3.7.1805 და BP 3.0.43.29 გამოვიდა, ცხადია, და პროგრამული უზრუნველყოფის ახალი ვერსია 3.1 :-) (აღწერილია ქვემოთ). ახალი ფუნქციონირება - ჭარბი და ბრუნვის გათანაბრების შესაძლებლობა ელექტრომომარაგების ორ ბაზას შორის (ყველა სფეროსთვის, სადაც ბაზრის გეგმები ხორციელდება, და ბუღალტრული აღრიცხვის სფეროს სხვა სფეროებისთვის, რომელსაც მიჰყვება, ანალიტიკოსი ოჰ ან მის გარეშე).
01/03/2016 რ. ვერსია 3.5 - შეიცვალა მოწყობილობის ბაზასთან შეერთების მექანიზმი - განახლებულია BSP 2.3.2.43. ზოგიერთი მცირე ხარვეზი გამოსწორებულია. პლატფორმა 8.3.7.1845, BP 3.0.43.50
16.02.2016წ ვერსია 3.6 - დამატებულია ოფცია „ინსტალაციის ხელით რედაქტირება“ დოკუმენტებისთვის, რომლებიც გადაცემულია ხელით. საბუთების გადაცემა შესწორებულია - დოკუმენტები, რომლებსაც აქვთ უფრო მოკლე თარიღი და ვადა, შესაძლებელია გადარიცხვის გარეშე. პლატფორმა 8.3.7.1917, BP 3.0.43.116
22.03.2016 რ. ვერსია 3.10 - დამატებულია ბრძანება „გადაწერეთ შეკვეთა წინასწარ“ შეკვეთილი ობიექტების სავალდებულო ხელახალი ჩაწერისთვის (გადაცემის სიჩქარე მცირდება, საჭიროების შემთხვევაში). დამატებულია ჩანართი „მომზადება“, სადაც შეგიძლიათ დააკონფიგურიროთ მოწყობილობის თაროებისა და აპლიკაციის გეგმების ტიპი (თაროს კოდებთან ერთად) და კონსტანტების გადატანა. პლატფორმა 8.3.7.1970, BP 3.0.43.148

04/03/2016 ვერსია 3.11 შევსებული იყო დოკუმენტების სია, რომელიც ძერელიას აქვს: ანგარიშების გეგმის წესების უკან იყო შევსება, რომელიც დასრულებულია უბრალოდ პერიოდის გაგზავნით, ისევე როგორც //site/public/509628/

დამუშავება გამიზნულია ნებისმიერი პერიოდის მონაცემების გადასაცემად "Vivantation MXL"-ის მსგავსი გზით ITS-ით მხოლოდ XML, JSON და ა.შ. გამოყენების გარეშე. შუალედური ფაილები - მონაცემთა ბაზიდან მონაცემთა ბაზაში გაცვლა COM-ის საშუალებით. 3.10-ზე ძველი ვერსიები საჭიროებენ კავშირებს ალგორითმთან BSP-დან, რომელშიც გადადის comcntr.dll-ის რეგისტრაცია (OS-ის „გადასაჭრელად“), ასევე განსხვავებულია, თუ შეუძლებელია კავშირის დაყენება, მაგალითად - „ინფორმაცია“ მონაცემთა ბაზა განახლების პროცესშია“ და ა.შ. არჩევანის ხელახალი გადამოწმება დაემატა არჩევანის მეთოდს - როგორც ჩანს, დროზე ცოტა უსწრებს.

შეიძლება buti vikoristan ამისთვის:

1. მარეგულირებელი და სამართლებრივი ინფორმაციის (NSI) გადაცემა IB Dzherelo-დან IB Primach-ში (ყველა NCI-ის გადაცემა ექვემდებარება კორესპონდენტის მოვალეობას, ასევე გადადის საჭირო დოკუმენტები ინსტრუქციის მიხედვით ნებისმიერი გადარიცხვის შემთხვევაში).

2. დოკუმენტების გადაცემა ნებისმიერი შერჩეული პერიოდისთვის.

3. ყველა ინფორმაციის გადაცემა „დაზიანებული“ IB-დან, რადგან ის გაშვებულია 1C:Enterprise რეჟიმში და მონაცემების იმპორტი ან კონფიგურატორის გაშვება შეუძლებელია.

დამუშავების თავისებურება - ორივე მეთოდი და მოწყობილობა შეიძლება გადავიდეს 2.0-დან 3.0-მდე - გამოცემები შეიძლება გადავიდეს 2.0-დან 3.0-მდე! დეტალების იგნორირება არ შეიძლება, თუ საჭიროა გადაცემის ალგორითმის დაყენება.

Შენიშვნა: მონაცემთა კონვერტაცია არ ექვემდებარება გამარჯვებას! და ნუ ჭამ ჩომას! მათთვის, ვინც განსაკუთრებით მგრძნობიარეა - BP 3.0 იცვლება ნელ-ნელა, დიდი ძალისხმევა სჭირდება გადაცემის წესების ამჟამინდელ მდგომარეობაში შენარჩუნებას - აქ ყველაფერი უფრო მარტივია :-).

დამუშავების კიდევ ერთი მახასიათებელია ის, რომ ის გაშვებულია მიმღების IB-ში (ფუნქციონალთან ყველაზე ახლოს ანალოგები მუშაობენ პარალელურად - მოწყობილობიდან მიმღებამდე).

სამუშაოს დასაწყისი - აუცილებელია მიუთითოთ დამუშავების პერიოდი, მიუთითოთ ორგანიზაცია მოწყობილობიდან და გადაეცემა მიღებაზე.

ორგანიზაციის გადაცემისას გადაეცემა რეგიონული პოლიტიკა და ჩანაწერების „თანმხლები“ ​​რეესტრები. ამიტომ, როდესაც პირველად ირჩევთ ორგანიზაციას ჯერელში, სანამ ის გამოჩნდება მისაღებში, იქნება ტყუილი.

დამნაშავეთა განლაგებისა და მიღების გეგმები უცვლელი დარჩება, მაგრამ სექციები, რომლებიც გამოყოფილია, არ გადაეცემა მიღებას 2 ვერსიებში.* დაგეგმილია სექციების თანმიმდევრულობის კორექტირება მომავალში; ყუთები გადაეცემა იმ კოდებისთვის, რომლებიც არ არის ნაპოვნი ყუთში და არ შეიქმნება!!!

სხვა ობიექტები გადაიცემა შიდა იდენტიფიკატორების უკან (GUID), რის გამოც ისინი პატივს სცემენ ძირითად იდენტიფიკატორებში, როგორიცაა ვალუტა.

თუ თქვენ გეგმავთ გაცვლას „სუფთა“ მონაცემთა ბაზასთან, შეგიძლიათ სწრაფად წაშალოთ დასრულებული მონაცემები, როდესაც პირველად დაიწყებთ მას გაცვლამდე. რატომ არის ნიმუშში გვერდი, სადაც შეგიძლიათ აირჩიოთ ბრაუზერების ელემენტები და წაშალოთ ისინი. მინიმუმ, თქვენ უნდა აირჩიოთ "რუბლის" ვალუტა. - იმიტომ გაორმაგება პრაქტიკულად გარდაუვალია (პრინციპში, მისი ადვილად გამოსწორება შესაძლებელია ძიების გაცვლისა და BP 3.0-ში დანერგილი დუბლიკატების ჩანაცვლების შემდეგ).

Cob შევსების ფორმის გახსნისას არჩეული მონაცემების გვერდზე დაწკაპუნების გადატანის მაგალითში:

დამუშავების გახსნისას, მონაცემების პირველადი შევსებისთვის გამოჩნდება წაშლილი ჩანაწერების გვერდი:

3.22 ვერსიით, ინტერფეისი შეიცვალა, ახლა ყველა მოსამზადებელი ოპერაცია მონიშნულია და ხელმისაწვდომია მომავალში


მნიშვნელოვანია, დარწმუნდით, რომ შეამოწმოთ გეგმის სტრუქტურის ტიპი და ყურადღებით მიუთითოთ სტრუქტურის ტიპი.

არ არის საჭირო დამატებითი ელემენტების ამოღება დამხმარე საშუალებებიდან - ისინი გადატანილია კონფიგურაციის იდენტიფიკატორებით (არა GUID).

თქვენ შეგიძლიათ აირჩიოთ გადასატანი ობიექტები დოკუმენტებიდან და დოკუმენტებიდან დამატებითი შერჩევის ფორმის გამოყენებით. (ამ ობიექტთან დაკავშირებული რეგისტრები გადაიცემა ავტომატურად, ამიტომ მათი შერჩევა არ არის საჭირო).რეგისტრების გადაცემა ამჟამად გამორთულია - თქვენ უნდა მოითხოვოთ რეგისტრების სია გადარიცხვისთვის - მისი გადატანა შესაძლებელია ახლა, რა ეტაპზე საკმარისია ბრაუზერში გადატანა, გადაცემის რეგისტრების სია იქნება შაბლონში მომავალი ვერსია ჰო.

2.0-დან გაცვლისას ზოგიერთი დეტალი (მაგალითად, საკონტაქტო ინფორმაცია) გადადის ალგორითმში, რადგან 2.0 და 3.0-ისთვის სუნი ინახება სხვადასხვა გზით. ანალოგიური სიტუაციაა დაბალი ხარისხის დოკუმენტებით (მაგალითად, Coryguvannya Borg).

ობიექტების ტიპების სია შეიძლება განსხვავებულად შეივსოს 3.22 ვერსიაში, მაგრამ შედის ქვემენიუში, ცვლის სურათზე აღწერილობას:

და გამარტივებული დამუშავება - თქვენ არ შეგიძლიათ აირჩიოთ მრჩევლები გაცვლისთვის, არამედ უბრალოდ შეავსეთ ტიპების სია მხოლოდ იმ ტიპის მრჩევლებით, რომლებთანაც გსურთ ერთი ჩანაწერი გქონდეთ.

განლაგების განხორციელების დამუშავებისას, არ არის საჭირო დოკუმენტების შეცვლა, რომლებიც გადატანილია მოწყობილობიდან დანიშნულების ადგილზე (განლაგება "გადაცემის გამორიცხვა"). ეს განლაგება შეიძლება დაემატოს (ნახული) როგორც მტკიცებულება. არ არის აუცილებელი ყველა ინფორმაციის გადაცემა - საკმარისია საბუთების გადაცემა, რომელთა ჩამონათვალიც შეგიძლიათ შეარჩიოთ ტიპების არჩევის გარეშე, უბრალოდ შეავსოთ ყველა დოკუმენტი იმ დოკუმენტებით, რისთვისაც არის განცხადებები.

ნანგრევებით საბუთების გადაცემა გადატანილია, 3.0-ის 3.0-დან გასაცვლელად და არქივის გეგმების მიხედვით, ერთი-ერთზე, 2.0-ის 3.0-დან გაცვლისას არის გადაცემის შესაძლებლობა, რეკომენდებულია საბუთების გადაცემა. ნანგრევების გარეშე და შემდეგ უბრალოდ აჩვენე ისინი მიმღებს. დოკუმენტების ხელით გადაცემისას დაყენებულია დროშა "მექანიკური შესწორება".

"გასული" რეკვიზიტი დამონტაჟებულია მიღების დოკუმენტებში ისევე, როგორც ძერელიაში, გარდა წარუმატებლობისა (რადგან ისინი არ იქნა გადაცემული) მხოლოდ დოკუმენტების დამუშავების შემდეგ, მაგალითად, BP 3.0-ში დანერგილი დოკუმენტების ჯგუფის დამუშავების გამოყენებით. (რეკომენდებული ვარიანტი), ამ დამუშავებით (ღილაკი "დოკუმენტების გამოქვეყნება" აქ є).

თუ დამუშავება დაგეგმილია მუდმივი გაცვლის გზით - ის შეიძლება დარეგისტრირდეს მიმღების IB-ში (ღილაკი "რეგისტრაცია"). "ერთჯერადი" გადარიცხვებისთვის, შეგიძლიათ უბრალოდ შექმნათ ასლი File - Open-ის საშუალებით.

12/21/2015 - ვერსია 3.1 პლატფორმა 8.3.7.1805 და კვების ბლოკი 3.0.43.29 (ვერსია 2.15 3.0.43.* არ მუშაობს - კონფიგურაცია მნიშვნელოვნად შეიცვალა).

შეიცვალა:

DIALOG VIBOR VIBER VARIANTA PIDKLUCHENNEN, Zavzhdi-ის წვდომის Clound-სერვერის წვდომა, Vibir Folder Basy-ის საქაღალდეებზე წვდომის ლოგიკური პარამეტრები, ბაზის Abo-დივანი თავად სერვერის სერვერზე (დიალოგის ბოდიში ვერსია 2.15)

- ახალი ფუნქციონალობა: ბაზებს შორის ჭარბი და ბრუნვის გამოთვლის მექანიზმი განხორციელდა და ჩართული იყო სხვადასხვა დეტალებში:


აირჩიეთ ბავშვისგან ცხოველის მოვლის ვარიანტები:


და ბრაუზერის ხილვადობა თხელ და სქელ კლიენტში - ფაილების გასწორების ფანჯარა ნაჩვენებია თხელი კლიენტში:


თხელი კლიენტზე, პროგრამის ღილაკების დაჭერით შეწუხების გარეშე, ვცდილობ გასწორების ფანჯრის ჩვენების მარტივ ვარიანტს:


თინ კლიენტში, IMHO, განახლება უფრო რთულია, რადგან არსებობს ღილაკები აქტივობებში ნავიგაციისთვის, ასე რომ უფრო დიდი ამოცანებისთვის ცხრილის გადახვევა უფრო ადვილია მაუსით გადახვევით:

22.03.2016 რ. ვერსია 3.10 - დამატებულია ბრძანება „გადაწერეთ შეკვეთა წინასწარ“ შეკვეთილი ობიექტების სავალდებულო ხელახალი ჩაწერისთვის (გადაცემის სიჩქარე მცირდება, საჭიროების შემთხვევაში). დამატებულია ჩანართი „მომზადება“, სადაც შეგიძლიათ დააკონფიგურიროთ მოწყობილობის თაროებისა და აპლიკაციის გეგმების ტიპი (თაროს კოდებთან ერთად) და კონსტანტების გადატანა. პლატფორმა 8.3.7.1970, BP 3.0.43.148

- ახალი ფუნქციონალობა:დოკუმენტების გადაცემამდე რეკომენდებულია შენახვის გეგმის შემოწმება მოწყობილობისა და მოწყობილობის თანმიმდევრულობაზე, ასევე კომპლექტის მუდმივთა თანმიმდევრულობაზე.

რისთვისაც დაემატა ჩანართი „მომზადება“, რომელშიც შეგიძლიათ დააყენოთ შემდეგი ტიპები:


მარტივი სეგმენტების ტიპების ცხრილის შევსების ალგორითმი - გაანალიზებულია როტაციაში ძირითადი, და ნიმუში თითოეულ შემთხვევაში განისაზღვრება კოდით, იმისდა მიხედვით, თუ რა ტიპის არ არის ნაპოვნი - ცხრილში გამოჩნდება სტრიქონი თაროს კოდი, რის შემდეგაც თქვენ უნდა აირჩიოთ მიმღები თარო და გადაცემისას გამარჯვებული იქნებით. ტიპი დამონტაჟებულია კოდის იმავე დონეზე.

დაყენებული მუდმივების ტიპის შესამოწმებლად და გადასატანად, ნაჩვენებია შემდეგი ცხრილი:

გახსოვდეთ, საჭიროების შემთხვევაში - პორტატული. განხორციელდეს მუდმივობის ნიშნით განსაზღვრულთა მიღმა.

© 2024 androidas.ru - ყველაფერი Android-ის შესახებ