1s katlanır olan olası yeniden istifleme ile yıkanacaktır. COMConnector aracılığıyla veri aktarımı. Terminal sunucusundan kenarlı dosya erişimi sınırlar içerebilir

Golovna / Corisna bilgileri

Informix® DataBlade™ API'si artık . "Yığın Alanını Yönetme" bölümü arka ofis işlevinin (UDR) oluşturulmasını açıklar. Bu makale iyileştirme amacıyla ek bilgiler sağlar.

Aşağıdaki bilgiler, UDR'nin bilgisayarınızın sanal işlemcisinde (VP) veya CPU VP'sinde yapılandırılmış olmasına bakılmaksızın geçerlidir. İş parçacığı yığını sanal işlemcinin etrafında doğrudan UDR'nin önünde hareket ettirilebilir.

UDR için yığının boyutu nasıl görünüyor?

UDR'nin kullanabileceği yığının boyutu, UDR'nin nasıl oluşturulduğuna bağlıdır:

    UDR'nin özel görüş yığınını vikorize etmesine olanak tanıyan STACK değiştiricinin yardımı için,

    STACK değiştiricisi olmadan; bu, UDR'nin, isteğin yapıldığı iş parçacığıyla birlikte sunucu tarafından görülebilen yığını onaylayacağı anlamına gelir. Bu formdaki yığın boyutu onconfig yapılandırma dosyasındaki STACKSIZE parametresinin değerlerine göre belirlenecektir.

STACK değiştirici

CREATE PROCEDURE veya CREATE FUNCTION ifadeleri, UDR wiki için gerekli olan yığın alanının boyutunu bayt cinsinden belirtmenize olanak tanıyan isteğe bağlı bir STACK değiştirici içerir.

UDR'nin oluşturulması sırasında STACK değiştiricisini kullanırsanız sunucu görünür ve UDR oluşturulduğunda yığın alanı kaldırılabilir. Geçerli kullanılabilir boyut, STACK'in bayt cinsinden önceki değerinden, işlev bağımsız değişkenlerinin sayısına bağlı olarak harcanan ek yük miktarı çıkarılarak elde edilen değerdir.

STACK değeri onconfig dosyasındaki (sonraki bölüm) STACKSIZE parametresinin değerinden küçük olduğundan, UDR için görülen yığın boyutu otomatik olarak STACKSIZE değerine yuvarlanacaktır.

Yapılandırma parametresi STACKSIZE

Yapılandırma dosyası onconfig, dokuma ipliklerin arkasındaki yığının boyutunu belirten STACKSIZE parametresini içerir.

UDR'yi oluştururken STACK belirtmezseniz sunucu, UDR değerini oluşturmaya yönelik ek yığın alanını görmez. Natomist UDR vikoristovuyu yığın alanı, vikonannya'ya yönelik vizyonlar silindi. Kullanılabilir yığın boyutu, SQL'de olduğundan daha az yaygın olan işlevleri yapılandırmanın genel giderlerinden kaynaklanmaktadır.

İş parçacığı yığını, girdiğiniz belirli iş parçacığı için bir kez görünür. UDR bir yığını bir iş parçacığıyla paylaşırsa hız daha yüksektir, böylece sunucu, UDR çağrısı başına ek yığını görmek için kaynakları boşa harcamaz. Öte yandan, ölçeklendirilen yığının boyutu STACKSIZE değerine yaklaştığından, depoda işlev çağrıldığında yığının yeniden doldurulmasını zorlamak mümkündür (bu durumda UDR penceresi için daha az yığın yer bulunacaktır).

STACKSIZE değerini ayarlamanın mümkün olmadığını, dolayısıyla kodun tüm iş parçacıklarının kaybolacağını unutmamak önemlidir.

Yığın boyutunu ölçmek ne zaman gereklidir?

UDR'nin özyinelemeli çağrıları engellemesi veya UDR'nin yığın iş parçacığının (STACKSIZE) arkasında bulunmayan daha fazla yığın alanı kaplaması nedeniyle yığın alanını boşa harcamaktan siz sorumlusunuz.

UDR ekibi için yığını artırmanın iki yolu vardır:

    UDR oluşturulduğunda STACK değiştiricisini girin.

    Özyinelemeli çağrıları seçmek için mi_call() işlevini kullanın ("Informix DataBlade API Programcı Kılavuzu"ndaki mükemmel örnek).

Boyutu STACK aracılığıyla belirtmezseniz ve iş parçacığı yığınını artırmak için mi_call() yöntemini kullanmazsanız ve UDR, çok fazla yığın alanı kaplayan herhangi bir şekilde çalışıyorsa, o zaman yığını yenilemeniz gerekir. .

Ciddiye alındığında, mi_* görünümünün bu işlevleri, bu güçlü galibin yığınına yeni bir bölüm ekler. Bu segmentler, işlevin çağrıldığı UDR'ye döndürüldüğünde değiştirilir.

Bir şeyler ters giderse ne yapmalı?

Wiki yığınına dikkat edin

Koruma metası, belirli bir UDR için özel olarak STACK değerlerini değiştirmek üzere yığın yenilemeyi gerektiren belirli bir UDR'nin tanımlanmasıdır.

    "Onstat -g sts" ek komutu için wiki yığınına dikkat edin

    SQL'in görüntülediği oturuma dikkat edin, yardım için onstat -g ses session_id komutunu kullanın.

Yığın üzerinde yeniden doldurulacak olan SQL ifadesini belirledikten sonra, orijinal ifadenin saklanmasından önce gelen UDR sorgularını eşleştirerek yığının değerini belirleyebilirsiniz.

UDR için STACK değerlerini dinamik olarak ayarlayabilirsiniz. Örneğin:

MyFoo (lvarchar,lvarchar) işlevini (add stack=131072) ile değiştirin;

STACK değerini değiştirdikten sonra, artık istikrarlı bir şekilde çalışması için orijinal girişi yeniden dönüştürmek üzere protesto edin.

STACKSIZE uzantısı

Alternatif olarak STACKSIZE değerini artırmayı deneyin. Soruna neyin sebep olduğunu ters çevirin. (Daha sonra eski değere çevirmeyi unutmayın).

STACKSIZE'ın arttırılması işe yaramadığından hafıza bozulması sorunu ortadan kalktı. Önermelerin ekseni:

    Bellek karalamayı kapatın ve bellek havuzlarını kontrol edin. UDR'ler için Bellek Ayırma makalesinin "Hata Ayıklama Sorunları" bölümünde bunun nasıl yapılacağı açıklanmaktadır.

    mi_lvarchar'a bir göz atın. Özellikle, mi_lvarchar'ın boş terimi argüman olarak kaldıracak bir işleve aktarıldığına dikkat edilmelidir.

    Sorunu daha da kötüleştirmek için CPU (veya güç) VP'lerinin sayısını bire düşürün.

mi_print_stack() -- Solaris

OS Solaris için Informix Dynamic Server, UDR'de kullanılabilen mi_print_stack() işlevini içerir. İşlemlerin tamamlanmasından sonra bu işlev yığın çerçevesini bir sonraki dosyaya kaydeder:

/tmp/default.stack

Çıktı dosyasının adını değiştiremezsiniz ancak DBTEMP değişkeninin değerlerini değiştirerek çıktısını değiştirebilirsiniz. Lütfen $DBTEMP dizininin informix kullanıcısına yazılmasına izin verildiğini kontrol edin. $MSGPATH'de mi_print_stack() işlevinin görüntülenip görüntülenmediği.

Bu işlev yalnızca OC Solaris'te kullanılabilir.

Sözlük

Bu makalede terimler kısaltılmış ve kullanılmıştır:

UDRKullanıcı Tanımlı Rutin
Başkan YardımcısıSanal İşlemci

Bu makale, herhangi bir karmaşık güvenlik yaklaşımının, gelişimin tüm aşamalarını kapsaması gerektiğini bir kez daha göstermektedir: geliştirme, gırtlak, sistem yönetimi, zorunlu, organizasyonel yaklaşımlar. Bilgi sistemlerinde güvenliğe yönelik temel tehdidi “insan faktörü” oluşturmaktadır. Bu yaklaşımlar dizisi makul ve dengeli olabilir: hiçbir anlamı yoktur ve savunmayı organize etmek için yeterli paranın görülmesi de pek olası değildir, bu da verilerin kendisinden daha ağır basmaktadır.

Girmek

1C:Enterprise, Rusya'daki en kapsamlı bulut sistemidir, ancak buna bakılmaksızın, sürüm 8.0'a kadar satıcıları gıda güvenliğine çok az saygı gösteriyordu. Temel olarak bu, yeni ürünün fiyatı ve günlük kalifiye BT çalışanlarının bulunduğu küçük işletmelere odaklanılması ve korunan sistemlerin açılması ve desteklenmesinin olası riskleri tarafından belirlendi ve iş amaçlı yolda yasaklanacaktı. 8.0 sürümünün piyasaya sürülmesiyle vurgu biraz değişecek: çözüm düzeyi önemli ölçüde arttı, sistem önemli ölçüde ölçeklendi ve kompakt hale geldi - özellikler önemli ölçüde değişti. Sistem güvenilir olmaya ve çalınmaya başladı - yiyecekler daha da bireysel. Acil işlerin ana bilgi sistemi, en azından mevcut güvenlik avantajlarıyla tatmin edilebilir:

  • Sistemin iç nedenlerden dolayı arızalanma olasılığı düşüktür.
  • Müşterilerin güvenilir şekilde yetkilendirilmesi ve verilerin yanlış eylemlerden korunması.
  • Yabancıların haklarının tanınmasına yönelik etkili bir sistem.
  • Arıza durumunda operasyonel sistem yedeklenir ve güncellenir.

Bu tür faydalara sahip 1C:Enterprise 8.0 tabanlı çözümlerden memnun musunuz? Net bir cevap yok. Erişim kontrol sistemindeki değişikliklerin önemi ne olursa olsun, büyük miktarda kullanılmamış güç elde etmek imkansızdı. Sistem parçalı ve ince ayarlı olduğundan, hepsinden taviz verilmemesi veya dünyadaki bu ilerlemeye yetecek şekilde konsolidasyona tabi tutulması, saygı kazanılması (aynı zamanda, platformun "gençliğinin" mirası), böylece gelecek için aşırı korunan zihinlerin çabalarında gerçekten devasa bir çaba gösterilmesi gerekiyor.

Bu makale, 1C:Enterprise platformundaki çözümlerin geliştiricileri ve uygulayıcılarının yanı sıra 1C:Enterprise kullanan kuruluşların sistem yöneticilerine yöneliktir ve sistemin geliştirilmesi ve ayarlanmasıyla ilgili adımları açıklar. Bilgi güvenliği organizasyonunun bakış açısı. Bu makale, belgelemenin yerine geçemez; daha ziyade, içinde henüz tespit edilmemiş bazı noktalara işaret etmektedir. Ve elbette, tüm belgeler olmasa da bu makale, günümüzde güvenlik, üretkenlik, kullanılabilirlik ve işlevsellik gibi üstün faydalarla tatmin olabilecek çalıntı bilgi sistemi sorununun karmaşıklığını aktaramayacaktır.

Sınıflandırma ve terminoloji

Makalenin ana konusu bilgi tehditleridir.

Bilgi tehdidi– Verilerin izinsiz olarak okunduğu, kopyalandığı, değiştirildiği veya engellendiği bir durum olasılığı.

Bu anlamdan yola çıkarak istatistikler bilgi tehditlerini şu şekilde sınıflandırıyorum:

  • Verilerin izinsiz azaltılması
  • Verilerin izinsiz değiştirilmesi
  • Verilerin izinsiz kopyalanması
  • Verilerin izinsiz okunması
  • Veri kullanılamıyor

Tüm tehditler gerçek ve öngörülemeyen olarak ikiye ayrılır. Gerçekleştirilen bilgi tehdidine denir olay. Sistemin özellikleri:

Dökülme- olaylara yol açan özellikler Zakhistu'ya gel- bir olay olasılığını engelleyen özellikler

Temel olarak, geçerliliği 1C teknolojik platformunun durgunluğundan kaynaklanan bu tür değişiklikler dikkate alınır: İstemci-sunucu sürümünde Enterprise 8.0 (yalnızca 1C veya 1C 8.0'ın anlamını anlamasanız bile) . Aşağıdakiler sistemin önemli ana rolleridir:

  • Operatörler– uygulanan bir rolle verileri inceleme ve değiştirme hakkını paylaşan ancak idari işlevleri olmayan çalışanlar
  • Sistem yöneticisi- Eklenti sunucusunun ve MS SQL sunucusunun işletim sistemlerindeki yönetici hakları, MS SQL'deki yönetici hakları vb. dahil olmak üzere sistemde yönetici haklarına sahip olan müşteriler.
  • IB Yöneticisi- 1C bilgi tabanında idari işlevler devredilen muhabirler (müşteri ekleme, test etme ve düzeltme, yedekleme, uygulama çözümlerinin ayarlanması vb.)
  • Sistem distribütörleri- Uygulamalı çözümler geliştiren Koristuvach'lar. Anneler yalnızca işletim sistemine erişebilir.
  • Sisteme doğrudan erişimi olmayan kişiler– 1C'ye erişim hakları verilmeyen ancak sistemin çalışmasına başka bir şekilde erişebilen kullanıcılar (sistemin kurulu olduğu aynı Active Directory etki alanının tüm kullanıcılarına bağlı olarak). Bu kategori, sistemdeki potansiyel olarak güvenli olmayan konuları belirlemeden önce dikkate alınır.
  • Otomatik yönetim komut dosyaları– eylemlerin otomatik olarak yürütülmesi için tasarlanmış belirli işlevleri devreden programlar (örneğin, verilerin içe ve dışa aktarımı)

Burada iki noktaya dikkat etmek gerekiyor: birincisi, bu sınıflandırma çok kaba ve cilt grubunun ortasındaki alanı kapsamıyor - belirli spesifik tipler için böyle bir alan oluşturulacak ve başka bir şekilde aktarılıyor. diğer bireyler sistemin çalışmasına katkıda bulunamazlar. %100 1C harici araçlarla sabitlenebilir.

Tamlık ve güvenliği sağlamak için herhangi bir güvenlik sisteminin oluşturulup oluşturulamayacağı. Bilgi sisteminin geliştirilmesi ve devreye alınmasından önce, sistemi koruma maliyetinin:

  • korunan bilginin değeri;
  • olaya katkı (gerçek bir tehdit durumunda);
  • olay durumunda mali riskler

Önemli ölçüde pahalı olan ve mali verimliliğine ilişkin değerlendirmenin daha düşük olduğu bir savunma düzenlemek aptalca ve gariptir. Bilgi kaybı risklerini değerlendirmeye yönelik çeşitli yöntemler vardır ve bu istatistikler arasında farklılıklar vardır. Bir diğer önemli husus ise bilgi güvenliği, sistem üretkenliği, sistemin kullanım kolaylığı ve işletim kolaylığı, geliştirme ve dağıtım hızı ve bilgi sistemlerine yönelik diğer faydalar açısından çoğunlukla geçerli olan bir denge kurmaktır.

Sistemin bilgi güvenliği mekanizmasının temel özellikleri

1C:Enterprise 8.0'ın iki sürümü mevcuttur: dosya ve istemci-sunucu. Dosya sürümü aşağıdaki sebeplerden dolayı sistemin bilgi güvenliğini sağlayacak şekilde kullanılamaz:

  • Bu konfigürasyon verileri, sistemin tüm kullanıcıları tarafından okunabilen ve yazılabilen bir dosyaya kaydedilir.
  • Aşağıda da görüleceği gibi sistemin yetkilendirilmesinin yönetimi oldukça kolaydır.
  • Sistemin bütünlüğü yalnızca istemci kısmının çekirdeği tarafından sağlanır.

Bilgilerin kaydedilmesine yönelik istemci-sunucu seçeneği, aşağıdakileri sağlayacak olan MS SQL Server'ı kullanır:

  • Verilerinizi daha güvenilir bir şekilde kaydediyoruz.
  • Doğrudan erişim için dosyaların izolasyonu.
  • İşlem mekanizmaları ve engellemeler daha ayrıntılı hale geldi.

Sistemin dosya ve istemci-sunucu sürümünün önemi ne olursa olsun, aşağıdaki yetenekleri sağlayan uygulama çözümü düzeyinde tek bir erişim kontrol şeması oluştururlar:

  • 1C'de belirtilen şifreyi kullanarak bir koristuvach'ın yetkilendirilmesi.
  • Windows'un doğru muhasebecisi için muhasebecinin yetkilendirilmesi.
  • Sistem çalışanlarına rol ataması.
  • İdari işlevlerin rollere bölünmesi.
  • Kullanılabilir arayüzlerin rollere atanması.
  • Meta veri nesnelerine erişimi rollere göre kısıtlama.
  • Roller için nesnelerin ayrıntılarına erişimi paylaşma.
  • Veri nesnelerine erişimi rollere ve oturum parametrelerine göre kısıtlama.
  • Verilere ve yapılandırılmış modüllere etkileşimli erişime müdahale.
  • Deyaki obezhenya vykonannya kodu.

Genel olarak analiz edilen verilere erişim şeması bu seviyedeki bilgi sistemleri için tipiktir. Bununla birlikte, trilank istemci-sunucu mimarisinin bu uygulamasının, görünüşe göre çok sayıda yayılmaya yol açan bir dizi önemli yönü vardır:

  1. Veri işlemenin çok sayıda aşaması vardır ve dış görünüm aşamasında nesnelere erişim için farklı kurallar söz konusu olabilir.

    Güvenlik açısından güvenli kabul edilen veri işleme aşamalarının şeması dikkatlice basitleştirilmiş ve Şekil 1'de gösterilmektedir. 1C'nin temel kuralı, dünya ile planın arkasındaki geçiş arasındaki sınırı değiştirmek, böylece üst düzeylerden birindeki bir yayılma, sistemin tüm düzeylerdeki işleyişini bozabilir.

  2. Bir seviyeden diğerine geçerken aktarılan verilerin izlenmesine yönelik yerleşik prosedürlerin bulunmaması.

    Ne yazık ki, sistemin tüm iç mekanizmaları, özellikle de bir yandan geliştirilmesi zor, diğer yandan daha güvenilir olan etkileşimli olmayan mekanizmalar ideal şekilde geliştirilmemiştir. Bu "hastalık", 1C şirketi de dahil olmak üzere bir sorun değildir, ancak çoğu satıcının çok çeşitli sunucu ürünlerinde yaygındır. Kalan kaderler sayesinde bu sorunlara duyulan saygı önemli ölçüde arttı.

  3. Önceki versiyonda mevcut olan geliştiricilerin ve sistem yöneticilerinin ortalama yeterliliği yeterince yüksek değil.

    1C:Enterprise serisinin ürünleri başlangıçta geliştirme kolaylığı ve küçük kuruluşlarda çalışmayı desteklemeye yönelikti, bu nedenle tarihsel olarak uygulamalı çözümlerin "geliştiricilerinin" ve "yöneticilerinin" önemli bir bölümünün bu şekilde gelişmesi şaşırtıcı değil. sistemler iş için yeterli bilgi ve beceriye sahip değil Bu, 8.0 sürümü olan oldukça gelişmiş bir üründür. Sorun karmaşıktır ve franchise şirketlerinde benimsenen uygulama, diyetlerine sistematik olarak yaklaşmayan müşteriler uğruna "savaşmaya" başlamaktır. Birkaç ölümden sonra bu durumun kademeli olarak düzeltilmesi için 1C şirketini uygun şekilde desteklemek gerekir: ciddi franchise şirketleri, personel seçimi ve işe başlama sorununa, bilgi düzeyine ve teknolojik desteğe giderek daha fazla yaklaşmaya başladı. 1C şirketi önemli, en yüksek hizmet standardına uyum için bir sertifika programı duyurdular; Durum derhal düzeltilemezse bu yetkili sistemin güvenlik analizini yapmalıdır.

  4. Platformun kısa ömrü yeniden sağlandı.

    Benzer doğrudanlığa sahip ürünler arasında ve vikorizasyon amacıyla en genç çözümlerden biri. Büyük adam platformunun işlevselliği, kaderden daha az hayatta kaldı. Bununla birlikte, platformun 8.0.10'dan itibaren piyasaya sürülmesi (sürümün kendisi, sistemin tüm olası özelliklerinin uygulandığı), geçmişte önemli ölçüde daha kararlı hale geldi. Tipik uygulama çözümlerinin işlevselliği hala her gün değil, her geçen gün artıyor, ancak platformun yetenekleri gücün yarısı ile sınırlı. Elbette bu tür zihinlerde istikrardan bahsediyorlar, bunun hakkında zihinsel olarak konuşabilirsiniz, ancak genel olarak 1C 8.0 platformundaki birçok çözümün işlevsellik ve üretkenlik açısından (kararlılık ve kararlılık için değil) önemli ölçüde geride kaldığını bilmek gerekir. 1C 7.7 platformunda çözümler.

Daha sonra sistem (ve belki de tipik bir uygulama çözümü) iş için geliştirilir ve bir bilgisayara kurulur. İlk etapta böyle bir orta yol oluşturmak gerekiyor, bu durumda 1C'nin güvenliğini ayarlama anlayışı ve bunun için de öyle bir ayarlama yapılması gerekiyor ki, 1C'nin ayarlanması varsayımı. Sistemin güvenliği tamamlandığında kaçınılmaz olarak sistemin içine akacaktır.

Sıkı güvenlik kurallarına uyun.

Güvenli sistemler oluşturmanın temel ilkelerine uyulmadığı için sistemin herhangi bir bilgi güvenliğinden söz edemeyiz. Bunu mutlaka aşın, böylece zihinlerinizin şu şekilde korunmasını istersiniz:

  • Sunuculara erişim fiziksel olarak bağlantılıdır ve kesintisiz bir robot tarafından sağlanmaktadır:
    • sunucu ekipmanı yüksek güvenilirlik sağlar, hatalı sunucu ekipmanının değiştirilmesi sağlanmıştır, özellikle kritik uygulamalar için, çoğaltılmış donanım güvenliğine sahip şemalar kullanılır (RAID, çeşitli cihazlardan ömür, toscho'ya bağlanan kanal sayısı);
    • sunucular kilitlidir ve konum yalnızca bir saatliğine açıktır ve bu kaldırılamaz;
    • sunucuların konumlarını açma hakkı ve yalnızca bir veya iki durumda, acil durumlarda diğer kişileri uyaracak bir sistem geliştirilmiştir;
    • sunuculara kesintisiz güç sağlanması sağlanır
    • normal iklim koşulları ve çalışma koşulları sağlanır;
    • Bitişik sunucularda yangın alarmı mevcut olup su baskını riski yoktur (özellikle ilk ve kalan yüzeyler);
  • İşletmenin ağ ve bilgi altyapısı doğru yapılandırılmıştır:
    • güvenlik duvarları tüm sunuculara kurulur ve yapılandırılır;
    • Sınırda tüm hesaplar ve bilgisayarlar yetkilendiriliyor, şifreler alınamayacak şekilde saklanıyor;
    • Sistem operatörleri sistemin normal çalışması için yeterli haklara sahiptir ancak idari işlemlere ilişkin haklara sahip değildir;
    • Tüm bilgisayarlarda anti-virüs özellikleri yüklü ve etkindir;
    • İstemcilerin (ağ yöneticileri hariç) istemci iş istasyonlarında yönetici haklarına sahip olmaması önemlidir;
    • İnternete ve önemli bilgi taşıyıcılarına erişim düzenlemelere ve kısıtlamalara tabidir;
    • Güvenlik sisteminin sistem denetimi ayarlamaları içerebilir;
  • Aşağıdakiler ana organizasyonel beslenme seçenekleridir:
    • Katipler 1C ve donanımla çalışmak için yeterli niteliklere sahiptir;
    • çalışma kurallarının ihlal edilme olasılığı hakkında ilgili bildirimler;
    • bilgi sisteminin fiziksel unsuruyla maddi olarak tutarlı olduğu kabul edilen;
    • tüm sistem birimleri mühürlü ve kapalıdır;
    • Ofis temizlikçilerine, alarm çalışanlarına ve elektrikçilere eğitim ve denetim verilmesine özellikle saygı gösterilmelidir. Bu kişiler, dikkatsizlik nedeniyle, sistemin şüphesiz yolsuzluğunun neden olduğu gereksiz zarara eşit olmayan zararlar geliştirebilirler.

Saygı! Bu liste kapsamlı değildir, yalnızca karmaşık ve pahalı bir bilgi sistemiyle başa çıkmaya çalışırken sıklıkla gözden kaçırılanları açıklamaktadır!

  • MS SQL Server, eklenti sunucusu ve istemci kısmı farklı bilgisayarlarda çalışır, sunucu programları özel olarak oluşturulmuş Windows kullanıcılarının hakları altında çalışır;
  • MS SQL Sunucusu için
    • Karma yetkilendirme modu yüklü
    • Serveradmin rolüne girmesi gereken MS SQL kullanıcıları 1C robotundan görev almazlar,
    • Her IB 1C için sunucuya ayrıcalıklı erişime sahip olmayan ayrı bir MS SQL sistemi oluşturulmuştur,
    • Bir IB'nin MS SQL kullanıcısı diğer IB'ye erişime izin vermez;
  • Koristuvach'lar, eklenti sunucusunun ve MS SQL sunucusunun dosyalarına doğrudan erişime izin vermez
  • Operatörlerin iş istasyonları Windows 2000/XP ile donatılmıştır (Windows 95/98/Me değil)

Sistem geliştiricilerinin tavsiyelerini ve belgeleri okumayı kaçırmayın. Sistemin kurulumuna yönelik önemli materyaller ITS disklerinde “Metodolojik Öneriler” bölümünde yayınlanmaktadır. Aşağıdaki istatistiklere özellikle dikkat etmek istiyorum:

  1. 1C:Enterprise sunucusunu kullanan robotik programların özellikleri
  2. Veri yerleştirme 1C:İşletmeler 8.0
  3. Güncelleme 1C: Yönetici haklarına sahip olmayan Microsoft Windows kullanıcıları tarafından Enterprise 8.0
  4. Yönetici hakları olmayan koristuvach'ların listesini koristuvach adı altında düzenlemek
  5. SQL Server 2000 ve SQL Server Desktop Engine (MSDE) için Windows XP SP2 güvenlik duvarı ayarlarını ayarlama
  6. Robot sunucusu 1C: Enterprise 8.0 için COM+ Windows XP SP2 parametrelerinin ayarlanması
  7. Robot sunucusu 1C: Enterprise 8.0 için Windows XP SP2'de güvenlik duvarı parametrelerini yapılandırma
  8. HASP Lisans Yöneticisi için Windows XP SP2 güvenlik duvarı parametrelerini ayarlama
  9. SQL Server 2000 kullanarak bilgi veritabanının yedek kopyasını oluşturma
  10. “İstemci-sunucu” sürümünde 1C:Enterprises 8.0 için kurulu ve yapılandırılmış güç kaynağı(en önemli makalelerden biri)
  11. 1C:Enterprise 8.0 sunucusunun kurulumu sırasında Windows Server 2003'ü kurma özellikleri
  12. İstemci-sunucu versiyonunda istemcilerin bilgi tabanına erişiminin düzenlenmesi(en önemli makalelerden biri)
  13. Sunucu 1C: İşletmeler ve SQL sunucusu
  14. 1C:Enterprise 8.0'ı “istemci-sunucu” sürümüne kurma prosedürü ayrıntılı olarak açıklanmıştır.(en önemli makalelerden biri)
  15. 1C:Enterprises sunucusunda indirilen dilin Vykoristannya'sı

Bununla birlikte, belgeleri okurken, bilgilerin kaldırılması eleştirilir; örneğin, "1C:Enterprise 8.0'ın "istemci-sunucu" seçeneğinde güç kurulumu ve kurulumu" makalesi, gerekli olan hakları doğru şekilde tanımlamıyor. USER1CV8SERVER müşterileri. Aşağıdaki listede mesajlar listelenecektir, örneğin [ITS1], “1C:Enterprise sunucusuyla çalışmanın özellikleri” makalesi anlamına gelir. İstatistiklerde yer alan tüm bilgiler, bu yazının yazıldığı sırada (2006'dan beri) ITS'nin güncel baskısında verilmiştir.

Windows yetkilendirmeyle birleştirilmiş yetkilendirme olasılığı için Vikorist

İstemciler için iki olası yetkilendirme modundan: 1C, birleşik yetkilendirmeyi seçme olasılığına göre kurulur ve Windows işletim sistemi yetkilendirmesi ile birleştirilir. Sistemin güvenlik düzeyini düşürmek yerine, bilgisayar korsanlarının mesai saatleri içinde çok fazla şifreyle oynamamasına izin vermek önemlidir. Ancak Windows yetkilendirmesine ihtiyaç duymayanlar için, başlatırken bir şifre belirlemeleri ve ardından o kullanıcı için 1C yetkilendirmesini etkinleştirmeleri önemlidir. Sistemi güncellemek için herhangi bir Active Directory yapısından 1C yetkilendirmesini kullanarak sisteme giriş yapabilen en az bir hesap yöneticisinin kaldırılması gerekir.

Uygulanan çözümlerin rollerini oluşturmak, “yedek” haklar vermemek

Uygulama çözümünün her rolü, bu rolle ilgili eylemleri tamamlamadan önce gerekli minimum hak kümesini seçebilir. Kimin rolleri bağımsız olarak oynanabilir? Örneğin, harici süreçleri etkileşimli olarak başlatmak için harici bir rol oluşturabilir ve bu rolü, harici süreçlere dahil olabilecek tüm katılımcılara verebilirsiniz.

Kayıt günlüklerinin ve robot sistem protokollerinin düzenli olarak gözden geçirilmesi

Mümkünse kayıt günlüklerinin ve robot sistem protokollerinin incelenmesini düzenleyin ve otomatikleştirin. Günlüklerin uygun şekilde yönetilmesi ve düzenli olarak incelenmesiyle (yalnızca önemli konular için filtreleme), yetkisiz etkinlikleri anında tespit edebilir veya hazırlık aşamasında bunlardan kaçınmaya yardımcı olabilirsiniz.

İstemci-sunucu sürümünün bazı özellikleri

Bu bölümde istemci-sunucu sürümünün belirli özellikleri ve bunların güvenliği açıklanmaktadır. Daha fazla okuma kolaylığı için aşağıdaki gösterimler kabul edilir:

Saygı! şişeleme açıklaması

Sisteme erişimi kontrol eden bilgilerin kaydedilmesi

IB muhasebecilerinin listesini kaydedin

IB hesap verileri listesi ve içindeki mevcut roller hakkındaki tüm bilgiler, MS SQL veritabanındaki (div. [ITS2]) Params tablosuna kaydedilir. Bu tablonun yapısına bakıldığında, hesaplarla ilgili tüm bilgilerin DosyaAdı alanının “users.usr” değerlerinin bulunduğu bir kayıtta saklandığı açıkça görülmektedir.

Dolayısıyla, bilgisayar korsanlarının MS SQL veri tabanına erişime izin vermediğini kabul ettiğimize göre, bu durum bir suçlu tarafından savunulamaz, ancak MS SQL'de kod oluşturmak mümkün olduğunda, bu durum herhangi bir şeyin inkar edilmesine kapıyı açar ( !) 1C'den erişim. Aynı mekanizma (küçük değişikliklerle), sistemin dosya sürümünü değiştirmek için kullanılabilir; bu, dosya sürümünün özellikleri nedeniyle güvenli sistemlerde durgunluklarını tamamen önler.

Öneri:Şu anda, MS SQL Server'daki tetikleyicilerin kullanılması dışında, böyle bir değişiklikten programı tamamen yok etmenin bir yolu yoktur; diğer yandan, platform sürümünü güncellerken veya istemci listesini değiştirirken sorunlara neden olabilir iv . Bu tür değişiklikleri yapmak için, 1C kayıt defteri günlüğünü kontrol edebilir (yapılandırıcı modunda oturum açma bilgisi girmeden "şüpheli" oturum açmalara atıfta bulunarak) veya SQL Profiler'ı sürekli olarak başlatabilir (bu, sistem verimliliği üzerinde olumsuz bir etkiye sahip olabilir) veya Uyarılar mekanizmasını anlayarak ayarlayabilirsiniz ( her şey için hızlı bir şekilde, vikoristannyam tetikleyicilerinden hızlı bir şekilde)

IB listesine ilişkin bilgilerin sunucuya kaydedilmesi

Her 1C eklenti sunucusu, yeni bir MS SQL veritabanına yapılan bağlantıların listesi hakkındaki bilgileri saklar. p align="justify"> Vikoristlerin çalışmalarına yönelik her bilgi tabanı, eklenti sunucusu ile MS SQL sunucusu arasındaki kendi bağlantı serisini içerir. Bilgi tabanı programlarının sunucuya kaydedilmesiyle ilgili bilgiler, bağlantı satırlarıyla birlikte, katalogda sunucuya yüklenen srvrib.lst dosyasına kaydedilir.<Общие данные приложений>/1C/1Cv8 (örneğin, C:/Documents and Settings/Tüm Kullanıcılar/Uygulama Verileri/1C/1Cv8/srvrib.lst). Her IB için, karma MS SQL yetkilendirme modeli kapsamında MS SQL kullanıcı şifresini içeren yeni bir bağlantı sırası kaydedilir. Bu dosyanın varlığı, MS SQL veritabanına yetkisiz erişimi önlemenizi sağlar ve herhangi bir veritabanına, ayrıcalıklı kullanıcıya (örneğin, "sa") erişim önerilerine aykırı olduğundan, yalnızca bir tehdit vardır ї IB, MS SQL'in vikoryst olduğu tüm sistem için bir tehdittir.

Bu, MS SQL sunucusundaki karışık yetkilendirme ve Windows yetkilendirmesinin, bir dosyaya erişim engellendiğinde farklı türde sorunlara yol açabileceği anlamına gelir. Yani Windows yetkilendirmesinin temel olumsuz otoriteleri şöyle olacaktır:

  • Tüm IB'nin eklenti sunucusunda ve MS SQL sunucusunda tek bir haklar kümesi altında çalışması (büyük olasılıkla aşırı olan her şey için)
  • 1C eklenti sunucusu işlemi sayesinde (veya ana sürümde USER1CV8SERVER kullanıcı hesabı veya benzeri olarak) şifre girmeden, herhangi bir İnternet hizmetine şifre girmeden kolayca bağlanabilirsiniz.

Öte yandan, bir saldırgan, anlam dosyasını silmeden USER1CV8SERVER kullanıcı bağlamından daha karmaşık bir şekilde ek kod çıkarabilir. Konuşmadan önce böyle bir dosyanın varlığı, sunucu işlevlerinin farklı bilgisayarlardan ayrılmasının başka bir argümanıdır.

Öneri: Srvrib.lst dosyasına yalnızca sunucu işlemi tarafından erişilebilir. Obov'yazkovo dosyayı değiştirmek için bir denetim ayarladı.

Larinks sistemi iltihaplandığında korunmak için gerekli olan bu dosya maalesef okunarak çalınamayabilir. İdeal seçenek, eklenti sunucusunun bu dosyanın okunması ve yazılması üzerinde çalışması olacaktır (sunucunun bağlantılarının okunması ve yazılması dahil).

Sunucuda IB oluştururken yetkilendirme süresi

Saygı! Yetkilendirme gerekliliğine ilişkin sorun, 1C:Enterprise platformunun 8.0.14 sürümünde düzeltildi. Bu sürümde “1C:Enterprise Server Administrator” kavramı ortaya çıktı ve sunucuda yönetici listesi belirtildiği sürece sistem aşağıda anlatıldığı gibi çalışıyor, bu olası özelliği unutmayın.

Elbette, bu bölümün en büyük etkisi muhtemelen bir IB eklenti sunucusu ekleyebilme yeteneğidir; bunun sonucunda, eklenti sunucusuna bağlantıya erişimi reddeden herhangi bir kullanıcı, üzerinde Ek kod çalıştırma yeteneğini de otomatik olarak reddeder. eklenti sunucusu. Kıçına bakalım.

Suçlu ama sistem mevcut sürümde kuruldu

  • MS SQL Server 2000 (örneğin, SRV1 boyutu)
  • Sunucu 1C:Enterprise 8.0 (SRV2 birleştirme)
  • İstemci bölümü 1C:Enterprise 8.0 (WS yönetimi)

WS üzerinde çalışan istemcinin (bundan böyle KULLANICI olarak anılacaktır), SRV2'de kayıtlı IB'lerden birine minimum erişim istediği ancak SRV1 ve SRV2'ye ayrıcalıklı erişime sahip olmadığı aktarılmaktadır. Genel olarak aşırı reasürans bilgisayarlarının fonksiyonları kullanması bu duruma yol açmaktadır. Sistemin kurulumu belgelerdeki ve ITS disklerindeki önerilere dayanmaktadır. Durum Şekil 2'de gösterilmektedir. 2.


  • eklenti sunucusunda COM+ güvenliğini, 1C kullanıcılarının eklenti sunucusu işlemine bağlanma hakkı reddedilecek şekilde ayarlayın (daha fazla ayrıntı [ITS12]);
  • srvrib.lst dosyasına yalnızca USER1CV8SERVER tarafından okunmak üzere erişilebilir (sunucuya yeni IB eklemek için yazmaya izin verilir);
  • MS SQL'e bağlanmak için yalnızca TCP/IP protokolünü kullanın; bu durumda şunları yapabilirsiniz:
    • bir güvenlik duvarının arkasında ayrı bağlantılar;
    • “üçüncü taraf” IB 1C bağlantılarını basitleştirmek için bağlantıyı standart olmayan bir TCP bağlantı noktasına yapılandırmak;
    • Eklenti sunucusu ile SQL sunucusu arasındaki veri aktarımlarının Vikoristovat şifrelemesi;
  • sunucu güvenlik duvarını, üçüncü taraf MS SQL sunucularının saldırıya uğramasını imkansız hale getirecek şekilde yapılandırın;
  • Yetkisiz bir bilgisayarın yerel sınırda görünmesini önlemek için dahili güvenlik önlemlerini kullanın (IPSec, grup güvenlik politikaları, güvenlik duvarları vb.);
  • Eklenti sunucusunda USER1CV8SERVER'a her zaman yönetici hakları vermeyin.

Sunucuda derlenen kod için Wikipedia

1C'nin istemci-sunucu sürümünü seçerseniz geliştirici, bağlantı kodunu istemci ile eklenti sunucusu arasında dağıtabilir. Kodun (prosedür veya fonksiyonun) sadece sunucu üzerine yazılabilmesi için, “Sunucu” yetkisinin ayarlandığı ana modülde genişletilmesi ve eğer modül sadece sunucu üzerine yazılmasına izin veriliyorsa, bunun genişletilmesi gerekmektedir. sunucusu, "# Yakshcho Sunucusu" ile çevrelendiğim bölümdeki kodu genişletmek için:

#Yaksto Sunucu Todi
Fonksiyon Sunucuda (Param1, Param2 = 0) Export // Bu fonksiyon basit olmasına rağmen sunucuda yapılandırılmıştır
Param1 = Param1 + 12;
Param1'i çevirin;
Son Fonksiyonlar
#KіnetsYakscho

Sunucuda derlenen bir kodu seçerken şunlardan emin olmalısınız:

  • Kod, program sunucusundaki (erişilebilir COM nesneleri ve sunucu dosyaları) USER1CV8SERVER haklarıyla ilişkilidir;
  • bir istemcinin tüm oturumları, hizmetin bir örneği tarafından temsil edilir; bu nedenle, örneğin, sunucuda yeniden yığınlama, tüm etkin istemcilerin bağlantısına neden olur;
  • sunucu modüllerinin geliştirilmesi zordur (örneğin, yöneticide bir nokta belirlemek mümkün değildir), ancak devre dışı bırakılabilir;
  • kontrolün istemciden eklenti sunucusuna ve geriye aktarılması, aktarılan çok sayıda parametreyle önemli kaynakların çıkarılmasını sağlayabilir;
  • eklenti sunucusunda etkileşimli özelliklerin (formlar, elektronik tablo belgeleri, iletişim kutuları), harici geri bildirimin ve kod işlemenin kullanılması mümkün değildir;
  • genel değişikliklerin kaldırılması (program modüllerindeki değişiklikler, "Dışa Aktarma" ayarlarından oylar) kabul edilemez;

Div'in Raporu. [ITS15] ve diğer ITS istatistikleri.

Sunucudan sorumlu programların güvenilirliğine özel önem verilmektedir. Düzgün yapılandırılmış bir istemci-sunucu sistemi aşağıdaki düşüncelere sahip olmalıdır:

  • sunucunun çalışmasını kesintiye uğratmak için hiçbir istemci programına gerek yoktur (yönetimsel sorunlar hariç);
  • Program kodu istemciyi kaldırarak sunucuda derlenemez;
  • kaynaklar, istemci bağlantıları arasında "adil" bir şekilde dağıtılmalı ve akış trafiğine bakılmaksızın sunucunun kullanılabilirliği sağlanmalıdır;
  • Veri engelleme varsa istemci bağlantılarının tek başına çalışması gerekmez;
  • sunucuda kullanıcı arayüzü yoktur, aksi halde izleme ve kayıt fonksiyonları zarar görür;

Genel olarak 1C sistemi, bu verilere mümkün olduğunca yaklaşacak şekilde tasarlanmıştır (örneğin, harici işlemlerin sunucuda derlenmesi imkansızdır), bir takım kabul edilemez özellikler dışında, hala şunu açık:

Öneri: Yazılımın sunucu kısmını geliştirirken minimal arayüz ilkesine uyulması tavsiye edilir. Tobto. İstemci programları ile sunucu modülüne yapılan girişlerin sayısı yakından ayrılabilir ve parametreler sıkı bir şekilde düzenlenir. Öneri: Sunucudaki prosedürlerden ve işlevlerden parametreleri kaldırırken, parametreleri doğrulamak gerekir (tip ve değer aralığı için parametrelerin geçerliliğinin kontrol edilmesi). Standart çözümlerden korkmamak, bunun yerine doğrulamanın karmaşıklığını sağlamak için güçlü teknolojileri kullanmak önemlidir. Öneri: Sunucu tarafında metin sorguları (ve ayrıca Viconati komut parametresi) oluştururken, istemci programlarından kaldırılan satırları seçmeyin.

En önemli önerimiz güvenlik ilkelerine aşina olmanız olacaktır. - Veritabanları için eklemeler ve benzer ilkelere uyulması. Aslında benzerlik şuydu: birincisi, bir web eklentisi olarak eklenti sunucusu, veritabanı ile istemci arayüzü arasında bir ara küredir (ana sorumluluk, web sunucusunun istemci arayüzünü oluşturmasıdır); başka bir deyişle, güvenlik açısından müşteriden toplanan verilere güvenemeyiz çünkü Harici seslerin ve işlemenin olası başlatılması.

Parametrelerin aktarılması

Parametrelerin sunucuda yapılandırılmış bir işleve (prosedüre) aktarılması zayıf bir güç kaynağı gerektirir. Bunun temel nedeni, bunları uygulama sunucusu ile istemci işlemleri arasında aktarma ihtiyacıdır. Kontrol istemci kısmından sunucu kısmına geçtiğinde aktarılan tüm parametreler serileştirilir, sunucuya aktarılır, ardından “paketten çıkarılır” ve geri alınır. Sunucu tarafından istemci tarafına geçildiğinde süreç tersine döner. Burada bu şemanın parametrelerin talimatlara ve değerlere aktarımını doğru bir şekilde gerçekleştirdiğine dikkat etmek gerekir. Parametreleri aktarırken aşağıdakilere dikkat edilmelidir:

  • İstemci ile sunucu arasında (diğer yandan) değiştirilemeyen değerlerin (bu değerler değiştirilemez) aktarımı mümkündür: ilkel türler, gönderilenler, evrensel koleksiyonlar, sistem değerleri, değerler yakınsak. Başka bir şeyi aktarmaya çalışırsanız istemci programı çöker (sunucudan yanlış bir parametre aktarması istenir).
  • Parametreleri aktarırken büyük miktarda verinin (örneğin 1 milyon karakterin üzerindeki satırlar) aktarılması sunucu verimliliğini olumsuz etkileyebileceğinden önerilmez.
  • Döngüsel göndermeyi önlemek için parametrelerin hem sunucudan istemciye hem de sunucudan istemciye aktarılması mümkün değildir. Böyle bir parametreyi aktarmaya çalışırsanız istemci programları çöker (sunucu yanlış bir parametreyi aktarmaya zorlanır).
  • Karmaşık veri koleksiyonlarının bile aşırı uzatılması önerilmez. Çok yüksek düzeyde girdi içeren bir parametreyi aktarmaya çalışırsanız sunucu çöker (!).

Saygı! Şu anda en hoş karşılanmayan özellik elbette katlanan koleksiyonların transferindeki azalmadır. Örneğin kod: Yatırım Oranı = 1250;
M = Yeni Masiv;
Parametre = M;
Hesap İçin = 1 RivenInvestment Cycle'a göre
MVintr = Yeni Masiv;
M.Dodati(MVInt);
M = MVint;
KіnetsCycle;
Sunucu Fonksiyonu (Geçilen Parametre);

Tüm istemcilerin bağlantılarını içeren sunucunun acil durum bağlantısını getirin ve bu, sizin tarafınızdan girilen kodla sunucuyu aktarmadan önce yapılmalıdır.

Sunucu tarafında güvensiz fonksiyonların mağdur edilmesi.

İndirilen dilin tüm özellikleri eklenti sunucusunda derlenen kodda değiştirilemez, ancak mevcut araçların ortasında entelektüel olarak aşağıdaki gibi sınıflandırılabilecek “sorunlu” tasarımlar yoktur:

  • Bu günlerde konfigürasyona uymayan kod yazma yeteneğini belirtebilirsiniz ("Pencere kodu" grubu)
  • Müşterinin dosyası ve işletim sistemi hakkındaki bilgilerin müşteri programına gönderilmesi veya verilerle iş ile ilgili olmayan eylemlerin cezalandırılması (“Hak ihlali”)
  • Sunucunun acil durum bağlantısını veya büyük kaynakların bile vikorist olduğunu ("Sunucu çökmesi" grubu) gerçekten çağırın
  • Bu tür görünmez. Örnek: değiştirilebilir bir değerin sunucuya aktarılması.
  • programlama algoritmalarındaki değişiklikler (bitmeyen döngüler, kesintisiz yineleme, vb.) (“Programlama değişiklikleri”)

Daha az sorunlu yapıların ana türleri (uçlu) aşağıda gösterilmiştir:

Viconati prosedürü (<Строка>)

Vikonannya kodu. Size satır değeri olarak iletilen kodun bir parçasını görüntülemenizi sağlar. Sunucu üzerinde sunucu seçerken parametre olarak verilerin istemciden silinmediğinden emin olmak gerekir. Mesela Vikoristan'a yapılan saldırı kabul edilemez:

#Yaksto Sunucu Todi
Sunucudaki Prosedür (Param1) Dışa Aktarma
Viconati (Param1);
KinetsProsedürleri
#KіnetsYakscho

"COMObject" yazın (yapıcı New COMObject (<Имя>, <Имя сервера>))

Uygulama sunucusunda (veya belirtilen başka bir bilgisayarda) USER1CV8SERVER hakları altında harici programların bir COM nesnesini oluşturur. Bir sunucuda çalıştırırken parametrelerin istemci programlarından aktarılmamasına dikkat edin. Ancak sunucu tarafında, içe/dışa aktarım yaparken, internet üzerinden veri yüklerken, standart dışı işlevler uygularken vb. durumlarda bu yeteneğin kullanılması etkilidir.

İşlev OtrimatiCOMObject(<Имя файла>, <Имя класса COM>)
Hakların ve vikonik kuralların yok edilmesi. Bu, dosyayla ilişkili COM nesnesinin kaldırılmasındaki ilk adıma benzer.
Bilgisayar Adı(), Saatlik Dosya Dizini(), Program Dizini(), Windows Sunucuları() prosedürleri ve işlevleri
Haklar mahvoldu. Sunucuya giriş yaptıktan sonra sunucu alt sisteminin organizasyonunun ayrıntılarını elde etmelerine izin verin. Sunucuya kurulduğunda, verilerin istemciye aktarılmadığından veya yetkili izin olmadan operatörler tarafından erişilemediğinden emin olun. Verilerin istek için gönderilen parametrelere aktarılabileceğine özellikle dikkat etmek isterim.
Dosyalarla (Dosya kopyala, Dosya bul, Dosyaları birleştir ve diğerleri) ve dosya türleriyle çalışmaya yönelik prosedürler ve işlevler.

Haklar mahvoldu. Bunları sunucuya yükledikten sonra, USER1CV8SERVER kullanıcı hakları kapsamında erişilebilen yerel (ve ağda bulunan) dosyalara paylaşılan erişimin iptal edilmesine olanak tanır. Sunucuya veri alma/dışa aktarma gibi görevlerin etkili bir şekilde uygulanabileceğinin farkındaysanız.

Bu işlevleri kullanmadan önce 1C hesap yöneticisinin haklarını kontrol ettiğinizden emin olun. Kullanıcı haklarını doğrulamak için sunucu modülünde aşağıdaki yapıyı kullanabilirsiniz:

#Yaksto Sunucu Todi
Prosedür ViconatiRobotWithFile() Dışa Aktarma
RoleAdministrator = Metadata.Roles.Administrator;
Koristuvach = ParametreSeance.PotochnyKoristuvac;
Yakshto Koristuvach.Role.Utrimuyut (Rol Yöneticisi) Todi
//Buraya dosyaların bulunduğu robot kodu eklenir
KinetsYakscho;
#KіnetsYakscho

Prosedürlerde ve işlevlerde takılıp kalırsanız parametreleri dikkatlice kontrol ettiğinizden emin olun, aksi takdirde, örneğin sunucuya giriş yaptığınızda, 1C eklenti sunucusunda hatayı yanlış ayarlama veya yanlış kodun farkına varma riskinden kaçınırsınız. kod:

Yol = "C:\Belgeler ve Ayarlar\Tüm Kullanıcılar\Uygulama Verileri\1C\1Cv8\";
MoveFile(Yol + "srvrib.lst", Yol + "NereyeFileGone");

Bu kodun sunucuda kaldırılmasından sonra, USER1CV8SERVER kullanıcısı yukarıda yazılanlar hakkında değişiklik yapma hakkına sahip olduğundan ve sunucu işlemini yeniden başlattıktan sonra (tüm kullanıcıların çıkışından 3 dakika sonra), başlamadan önce BÜYÜK beslenme sunucu. Ayrıca dışarıdaki dosyaları da silmek mümkündür...

"XBase", "DvіykovіDani", "ReaderXML", "WriteXML", "RecreateXSL", "WriteZipFile", "ReaderZipFile", "ReaderText", "WriteText" türleri
Haklar mahvoldu. Bunları sunucuya yükledikten sonra, yerel (ve ağda bulunan) eski dosya türlerine erişimi reddetmenize ve bunları USER1CV8SERVER kullanıcı hakları altında okuma/yazma için indirmenize olanak tanır. Bildiğiniz gibi sunucuya veri alma/dışa aktarma, belirli fonksiyonların çalışmasının loglanması, üst düzey idari görevler gibi görevleri etkin bir şekilde gerçekleştirmek mümkündür. Genel olarak öneri, önceki noktadan kaçınmak, ancak bu dosyaların (ve her türden nesnenin değil) istemci ve sunucu parçaları arasında aktarılma olasılığının sağlanmasıdır.
"Sistem Bilgisi" yazın
Haklar mahvoldu. Programın istemci kısmına hatalı veri aktarımı durumunda eklenti sunucusuna ait verilerin alınmasına olanak sağlar. Vikoristan'ın hakkının sınırlarını çizmek önemlidir.
Türler “İnternet Bağlantısı”, “İnternet Postası”, “İnternet Proxy”, “HTTP bağlantısı”, “FTP bağlantısı”

Haklar mahvoldu. Sunucu devre dışı bırakıldığında, eklenti sunucusundan uzaktaki bilgisayara USER1CV8SERVER haklarıyla bağlanın. Öneriler:

  • Metotların saatlik yanıtı altındaki parametreleri kontrol eder.
  • 1C koristuvach haklarının kontrolü.
  • USER1CV8SERVER kullanıcısı için hakların sert değişimi sınırına erişim.
  • 1C program sunucusundaki güvenlik duvarını doğru şekilde yapılandırın.

Doğru seçimle, örneğin program sunucusundan elektronik posta gönderilmesini manuel olarak düzenleyebilirsiniz.

"KoristuvachInformationBase Yöneticisi", "KoristuvachInformationBase" yazın

Haklar mahvoldu. Yanlış bir wiki durumunda (ayrıcalıklı bir modülde), hesap ekleyebilir veya diğer hesapların yetkilendirme parametrelerini değiştirebilirsiniz.

İşlev Formatı

Sunucuyu öldürün. Bu yüzden! Bu, gereksiz bir işlev olduğundan, parametrelerini kontrol etmezseniz ve sunucuya giriş yapmazsanız, sunucu programlarının çökmesine neden olur. Hata, sayıları biçimlendirirken ve baştaki sıfırları ve çok sayıda karakteri görüntüleme modunu kullanırken ortaya çıkıyor; örneğin

Biçim(1, "CHZ = 999; CHVN = ");

Bu düzeltmenin platformun bir sonraki sürümünde düzeltileceğinden eminim, ancak bu arada tüm çağrıların sunucuda yapılandırılabilen işlevleri vardır, çağrı ayarlarını kontrol edin.

Değerleri kaydetmeye yönelik prosedürler ve işlevler (ValueRowInternal,ValueFile)
Sunucuyu öldürün. Bu işlevler, koleksiyonlardaki döngüsel mesajları ve hatta bazı özel durumlarda çökmelere neden olabilecek büyük derinlikteki katkıları işlemez.

Fonksiyonların sınır ve özel parametre değerlerinin hesaplanması. Wikonanny kontrolü.

Sunucu devre dışı bırakıldığında karşılaşılabilecek sorunlardan biri, sunucu işlevlerinin yüksek "çok yönlülüğü"dür (bağlı bir hata nedeniyle tüm sunucu uygulamasının acil olarak sonlandırılması olasılığı ve bunun için bir "kaynak alanının" bulunması). tüm Ikh z'ednan). Temel parametreleri ve zamanlamayı kontrol etmeye ihtiyaç vardır:

  • İndirilen film işlevi için orijinal başlatmanın parametrelerini kontrol edin (örneğin, "Format" işlevi)
  • Döngü zamanlarında beyninizi döngüden çıkacak şekilde yeniden yapılandırın. Döngü potansiyel olarak sonsuzsa, onu bir dizi yinelemeyle çevreleyin: Yineleme Yöneticisinin maksimum değeri = 1000000;
    Doktor İterasyonu = 1;
    Buwai
    İşlev yanlış değeri döndüremez()
    I (ŞifacıYineleme<МаксимальноеЗначениеСчетчикаИтераций) Цикл

    //.... Döngüye alınacak gövde
    Yineleme Doktoru = Yineleme Doktoru + 1;
    KіnetsCycle;
    Yineleme Tedavisi gibi>Yineleme Tedavisinin Maksimum Değeri
    //.... doğaüstü derecede uzun vikonik döngü sürecini tamamla
    KinetsYakscho;

  • Yüksek bir yineleme varsa maksimum katkı düzeyini sınırlayın.
  • Sorgu oluştururken ve oluştururken çok fazla bilgi ve seçim girmemeye dikkat edin (örneğin “IN ІЄARCHY” seçeneğini seçtiyseniz boş değerler seçmeyin)
  • Bir bilgi tabanı tasarlarken, sayılar için büyük bir kapasite rezervi olduğundan emin olun (aksi takdirde toplama ve çarpma, değişmeli ve birleşmesiz hale gelir, bu da kurulumu karmaşık hale getirir)
  • Sorgularda NULL değerini tespit etmek için işin mantığını kontrol edin ve akılların ve virüslerin doğru çalışması NULL değerleri isteyecektir.
  • Sınırlı bir koleksiyonla, programın sunucu ve istemci kısmı arasındaki aktarım olasılığını kontrol edin.

Erişim ara bağlantısı için istemci kısmına Vikoristana terminal erişimi

İstemci kodunu terminal sunucusuna bağlayarak verilere erişimi azaltmak ve üretkenliği artırmak için genellikle terminal erişiminin kullanılması önerilir. Böylece, terminal erişiminin doğru yapılandırılmasıyla sistem güvenliği düzeyini etkili bir şekilde artırmak mümkündür, ancak ne yazık ki pratik kontrolle sistem güvenliğinin daha da azalması gerçeğinin önüne geçmek çoğu zaman mümkündür. Size geri dönmeye çalışalım, bütün mesele bu. Terminal erişimini düzenlemek için iki gelişmiş yöntem vardır: Microsoft Terminal Hizmetleri (RDP protokolü) ve Citrix Metaframe Sunucusu (ICA protokolü). Bu arada, Citrix erişim yönetimi konusunda oldukça fazla esneklik sunuyor ve bu kararların maliyeti oldukça yüksek. Her iki protokolün de temel güvenlik düzeyini değiştirebilecek temel özelliklerine göz atacağız. Vikoristan terminaline erişimde üç ana sorun var:
  • Muazzam miktarda kaynağı istifleyerek diğer şirketlerin çalışmalarını engelleme yeteneği
  • Diğer istemcilere erişim.
  • Verilerin terminal sunucusundan istemcinin bilgisayarına izinsiz kopyalanması

Her durumda, terminal hizmetleri şunları sağlar:

  • İşin güvenilirliğini arttırmak (Bilgisayar terminallerinde arıza olması durumunda müşteri aynı yerden çalışmaya devam edebilir)
  • Kaydedilen istemci programlarına ve dosyalara erişimi engelleyin.
  • Veri hesaplamasını muhabirin işyerinden terminal erişim sunucusuna aktarın
  • Sistem daha merkezi ve ayarlıdır. Paradan tasarruf etmek için ayarlar sisteme hangi bilgisayardan gelirse gelsin etkili olacaktır.
  • Bazı durumlarda sisteme uzaktan erişim için bir terminal çözümü kullanabilirsiniz.

Bir müşterinin terminal sunucusundan olası bağlantı sayısını ayırmak gerekir

1C istemci programının "iddiasızlığı" nedeniyle, bir müşteri hizmetleri sağlayıcısının (operatörün) maksimum bir saatlik bağlantı sayısını terminal sunucusuna bağlamak kesinlikle gereklidir. Etkin bağlantılar, programın yalnızca bir örneğiyle 300 MB'a kadar bellek kullanabilir. Bellek, işlemci saati tarafından aktif olarak kullanılır ve bu da bilgisayar sunucusunun kararlılığını sağlar. Aynı zamanda sunucunun dünya üzerindeki kaynaklarının tüketilmesi nedeniyle bu tür bir paylaşım, başka birinin bulut hesabının kaynaklarını yok edebilir. Standart terminal sunucusu parametreleriyle uygulanır.

Bir bağlantıda birden fazla veya iki 1C istemci programının aynı anda çalışmasına izin veremezsiniz

Bir önceki paragrafta belirtilen nedenlerle belirlenir, ancak uygulanması teknik olarak daha zordur. Sorun, terminal sunucusunu kullanarak 1C'yi yeniden başlatmaktan kaçınmanın neredeyse imkansız olmasıdır (neden aşağıda açıklanacaktır), bu nedenle bu olasılığı bir uygulama çözümü düzeyinde uygulamanız gerekir (ki bu da iyi bir çözüm değildir, dolayısıyla kaybedebilirsiniz) tam bir saat ii, ne "askıda" ) program yanlış tamamlanırsa, uygulama çözümünün eklenti modülünde daha fazla işlenmesine ve 1C'deki sonraki güncellemeyi karmaşıklaştırmak için ek eklentilere ihtiyaç vardır) . Arka planda eylemleri yürütme (örneğin çağrı oluşturma) yeteneği için istemciyi 2 eklenti çalıştırma yeteneğinden mahrum bırakmak kesinlikle gereklidir - istemci programı ne yazık ki aslında tek iş parçacıklıdır.

1C'de kaynak yoğun bilgi işlem görevlerini başlatma hakkına sahip olabilecek arka ofis çalışanlarına terminal sunucusuna erişim hakları verilmesi veya diğer arka ofis çalışanlarının aktif çalışma saatleri sırasında böyle bir başlatmanın engellenmesi önerilmez. .

Elbette, terminal sunucusuna erişim büyük olasılıkla yalnızca veri madenciliği, coğrafi modeller, içe/dışa aktarma gibi görevlerde ve müşteri tarafını ciddi şekilde etkileyen diğer görevlerde uzmanlaşmayan serbest çalışanlara reddedilecektir. Peki, programlayın. Bu tür sorunların çözülmesine hâlâ ihtiyaç duyulduğundan, şunları yapmak gerekir: hesap yöneticisine bu öğelerin diğer hesap sağlayıcıların hız koduna dahil edilebileceği konusunda bilgi vermek, bunları kayıt günlüğüne kaydetmek. Böyle bir sürecin Vikonanny'nin düzenleyici çerçeve içerisinde devam etmesine izin verilmesi mümkün olacak.

Her istemcinin yalnızca terminal sunucusunun şarkı dizinlerine yazma hakkına sahip olduğunu ve diğer istemcilerin bunlara erişimi olmadığını unutmamak gerekir.

Her şeyden önce, gizli dizinlere (1C'nin kurulu olduğu dizin gibi) yazma yeteneğini sınırlamazsanız, o zaman bir saldırganın programların davranışını tüm kullanıcılar için değiştirme yeteneği kaydedilir. Başka bir deyişle, bir kullanıcının verileri (zaman-saat dosyaları, aramaları ayarlamak için dosyaların kaydedilmesi, vb.) başka bir müşterinin terminal sunucusu tarafından erişilebilir olmasından hiçbir şekilde sorumlu değildir - kural, kullanıcı başlangıçta ayarlandığında aynıdır. yukarı. Üçüncüsü, saldırgan, sabit diskte yer kalmaması için bölümü "tespit etme" yeteneğinden mahrum bırakılır. Biliyorum, söylemeliyim ki, Windows 2000'den başlayarak Windows'ta bir kota mekanizması var ama bir maliyet mekanizması yok ve pratikte gerçek bir maliyet fark etmedim.

Dosyalara erişimin önceden düzenlenmesinin uygulanması genellikle kolay olduğundan, aynı zamanda (aslında) basit bir iştir; çünkü istemcilerin dosyalara erişimini düzenlemek, uygulanması önemsiz bir iş değildir. Öncelikle kota mekanizması kullanılmazsa büyük dosyalar kaydedilebilir. Başka bir deyişle, sistem, dosyayı diğer kullanıcıların kullanımına sunabilmek için kaydetme yeteneğinizi sonsuza kadar kaybedebileceğiniz şekilde tasarlanmıştır.

İşleri hâlâ önemli olan doktorlar için çoğu dosya dosyasının denetlenmesi önerilir.

Disk aygıtlarının, yazıcıların ve istemci iş istasyonunun panosunun bağlantılarının (eşlemesinin) güvenli hale getirilmesi gerekir.

RDP ve ICA, bir terminal bilgisayarın disklerinin, yazıcılarının, panolarının, com portlarının sunucuya otomatik bağlantısını düzenleme yeteneğine sahiptir. Bu mümkün olsa da, terminal sunucusunda üçüncü taraf kodunun başlatılmasını ve 1C verilerinin terminal erişim istemcisine kaydedilmesini önlemek neredeyse imkansızdır. İdari haklara sahip olabilecek kişilere mümkün olduğunca izin verin.

Bir terminal sunucusundan kenarlı dosya erişimi sınırlar içerebilir.

Sakıncası yoksa koristuvach yine de yanlış kodu çalıştırabilir veya verileri kaydedebilir. Düzenli kayıt defteri günlüğü dosya adlarını izlemediğinden (konuşmadan önce, bu, platform satıcıları tarafından uygulama için iyi bir fikirdir) ve her düzeyde bir sistem denetimi ayarlamak neredeyse imkansızdır (bunun için kaynak elde etmek mümkün değildir). bakım), kısacası, müşterinin veriyi bir arkadaşına veya elektronik posta yoluyla göndermekten çekinmemesi için. Terminal sunucusunun koristuvach'ların asil burunlarıyla dolaylı olarak hareket etmemesi için bunlara özellikle dikkat etmek istiyorum.

Güvenliği ihlal edilmiş bir sistem her oluşturulduğunda, sunucuyu terminal sunucusundaki eklentilerden mahrum bırakmak mümkün değildir.

Sunucu programı istemci eklentileri ile tek bir bilgisayarda başlatıldığından, normal çalışmasının kesintiye uğraması olasılığı yüksektir. Herhangi bir nedenle terminal sunucusunun ve program sunucusunun işlevlerini ayırmak mümkün değilse, kullanıcıların program sunucusu tarafından kullanılan dosyalara erişimine özel önem verilmelidir.

Terminal sunucusunda 1C:Enterprise dışındaki tüm programları başlatma özelliğini devre dışı bırakmak gerekir.

Bu hatırlanması en zor noktalardan biridir. Bu nedenle etki alanında grup güvenlik ilkesinin doğru şekilde yapılandırılması gerekir. Tüm “Yönetim Şablonlarını” ve “İnternet Program Politikalarını” doğru şekilde yapılandırmak gerekir. Kendi kendinize kontrol etmek için bu tür seçeneklerin engellenmesini isteyip istemediğinizi kontrol edin:

Bunun uygulanmasının karmaşıklığı genellikle terminal sunucusunda "özel" bir 1C oturumu başlatma olasılığına yol açabilir (diğer ara bağlantı programlarında olduğu gibi, Windows yöntemlerini kullanarak 1C'nin başlatılmasını önlemek temelde imkansızdır).

Düzenli kayıt günlüğünün değişimini sağlayın (her kullanıcı programı bir bilgisayardan kullanabilir)

Açıkçası, kullanıcılar 1C'yi terminal modunda açtığında, terminal sunucusunun kendisi kayıt defteri günlüğüne kaydedilecektir. Kayıt günlüğü kullanıcının hangi bilgisayara bağlandığını göstermez.

Terminal sunucusu – koruma mı yoksa sızıntı mı?

Ayrıca gece terminallerinin temel özelliklerine baktıktan sonra gece terminallerinin potansiyelinin hesaplama kısmında otomasyona yardımcı olabileceğini ve aynı zamanda güvenli sistemin sorunsuz çalışmasını sağlayabileceğini söyleyebiliriz. Bir terminal sunucusu kurarken en etkili seçeneklerden biri, birleşik işlevselliğe ve özel bir arayüze sahip kullanıcılar için Windows Gezgini olmadan 1C'yi tam ekran modunda başlatmaktır.

Müşteri kısmının çalışması

Wikoristanny Internet Explorer (IE)

1C'nin istemci kısmının normal çalışmasının ana bileşenlerinden biri, Internet Explorer'ın ikincil bileşenleridir. Bu bileşenlere daha da dikkat edin.

Saygı! Her şeyden önce, casus yazılım veya reklam yazılımı modülü IE'ye "ekli" olduğundan, 1C'deki herhangi bir HTML dosyasına bakma eğiliminde olmalısınız. Şimdiye kadar bu olasılığın bariz zaferini yakalayamadım, ancak 1C'yi çalıştırırken organizasyonun pornografik önlemlerden birinin "spygunsky" modülünü satın almasından birini yakaladım (anti-virüs programı güncellenmedi, semptom ve ortaya çıkan şey: Güvenlik duvarı yapılandırıldığında, 1C'nin bir porno sitesine bağlanan 80 numaralı bağlantı noktasında çalıştığı açıktı). Vlasna, işte savunmanın karmaşık olabileceğine dair başka bir argüman.

Saygı! Başka bir şekilde, 1C sistemi, flash filmlerin, ActiveX nesnelerinin, VBScript'in oluşturulmuş HTML belgelerinde kullanılmasına, internete veri gönderilmesine, PDF dosyalarının (!) açılmasına izin verir, ancak sonunda "aç veya kaydet" diye sorar. zagalom, ruhu eğlendiren her şey. HTML'yi inceleme ve düzenleme konusunda ilham veren yeteneğin tamamen makul olmayan bir vikoristana örneği:

  • Yeni bir HTML belgesi oluşturun (Dosya -> Yeni -> HTML belgesi).
  • Boş bir belgenin "Metin" sekmesine gidin.
  • Metni silin (tamamen).
  • Bu belgenin "İnceleme" sekmesine gidin
  • Sürükle ve bırak yöntemini kullanarak, bir dosyayı açık bir gezginden genişletilmiş SWF dosyalarından (Flash film dosyaları değil) belge penceresine, örneğin tarayıcı önbelleğinden taşıyabilirsiniz, ancak eğlence için bir FLASH oyunu da kullanabilirsiniz.
  • Bu ne güzellik! 1C'de oyun oynayabilirsiniz!

Sistem güvenliği açısından bu tamamen yanlıştır. Şu ana kadar bu yayılma yoluyla 1C'ye yönelik herhangi bir özel saldırı fark etmedim, aksine her şey beslenme saatine ve bilgilerinizin değerine göre ortaya çıkacak.

Bir HTML belgesinin alanıyla çalışırken ortaya çıkan birkaç küçük nokta da vardır, ancak asıl olanlar iki aşırı düzeltmedir. Bu özelliklere yaratıcı bir şekilde yaklaşmak istiyorsanız robotun gerçekten mucizevi arayüz yeteneklerini 1C ile düzenleyebilirsiniz.

Dış seslerin Vikoristana'sı ve işlenmesi.

Saygı! Harici bilgi ve işleme - bir yandan ek ek formlar, düzenleyici bilgiler, özel bilgiler uygulamanın basit bir yolu, diğer yandan - çok çeşitli sistem güvenliği sorunlarını atlamanın potansiyel bir yolu. sunucuda (“Parametrelerin aktarımı”ndaki olağanüstü örnek). 1C sistemi, "Harici işlemleri etkileşimli olarak görüntüleme" rol hakları kümesi için özel bir parametreye sahiptir, ancak sorun tamamen bilinmemektedir - sürekli başarı için, harici işlemlere müdahale edebilecek meslektaşlarınıza güçlü bir çağrı yapmanız gerekir. Standart uygulama çözümleri için diğer formlar, düzenlemeler ve diğer standart olanaklar Seçilen harici işlemlerden. Örneğin, UPP'deki düşüncenin arkasında, muhabirlerin tüm ana rolleri, ek ek formlarla çalışma yeteneğine sahiptir ve bu, özünde, herhangi bir harici işlemin yerini alma yeteneğidir.

Standart çözümler ve platformlar için standart mekanizmaların kullanılması (veri alışverişi)

Bu standart mekanizmalar potansiyel olarak güvensizdir ve rahatsız edici olabilir.

Diğer listeler

Herhangi bir liste (örneğin bir belge veya kayıt listesi) sıkıştırılabilir veya sistemdeki bir dosyaya kaydedilebilir. Bu amaçla içerik menüsünden ve "Kalıplar" menüsünden erişilebilen standart işlevselliği kullanmak yeterlidir:

Listelerde listelenen her şeyin harici dosyalarda bulunabildiğinden emin olun. Yapabileceğiniz tek şey birbirinizin sunucularında diğer belgelerin kaydını tutmaktır. Özellikle kritik formlar için, korunan tablo alanıyla ilişkili eylem panelini, bu panelde listeyi görüntüleme olanağı bulunmayacak şekilde özelleştirmek ve içerik menüsünü etkinleştirmek gerekir (böl. Şekil 6).

Alt bölümler arasında veri alışverişi

Veri alışverişi formatı belgelerde açıklandığı kadar basittir. Bir kullanıcı çok sayıda dosyayı değiştirebiliyorsa, sistemde yetkisiz değişiklikler yapabilir (kullanıcının işini zorlaştırmak amacıyla). Dağıtılmış bir veritabanı için değişim planlarını değiştirirken çevresel bir veritabanı oluşturma yeteneği, ikincil operatörlere sunulabilir.

Standart XML veri alışverişi

Standart konfigürasyonlar (örneğin, "Ticaret Yönetimi" ve "İşletme Muhasebesi") arasındaki alışveriş için kullanılan standart veri alışverişi, alışveriş kurallarında ilgi konusu olan verileri ve hiçbir nesnenin önemini belirtme yeteneğine sahiptir. Bu, dosyadan bir dosyanın çıkartılması ve dosya edinme ve geri almanın standart işlemi olan "Vicont()" prosedürünün kullanılmasıyla gerçekleştirilir ("Vicont()" prosedürü istemci tarafında başlatılır). Açıkçası, para israfı olabilecek bu kadar sahte bir değişim dosyası oluşturmak zordur. Tipik emanetçilerin rollerinin çoğu için para alışverişine izin verilir.

Öneri:çoğu istemci için XML alışverişine erişimi kısıtlayın (yalnızca IB yöneticilerini kısıtlayın). İşleme sürecinin başlatılması için protokolleri koruyun; örneğin indirmeden önce IB yöneticisine bir e-posta göndererek değişim dosyasını kaydedin.

Evrensel seslerin Vikoristana'sı, özellikle ses konsolları

Diğer bir sorun ise promosyonlar için müşterilerin evrensel çağrılara, özellikle de “Çağrı Konsolu” bağlantısına erişimidir. Bu, kullanıcıların pratik olarak IB'ye yazmalarına olanak sağlamasının karakteristik özelliğidir ve 1C haklar sistemi (RLS dahil) çok katı olacak şekilde ayarlandığından, kullanıcıların birçok "kayıp" bilgiyi kaldırmasına ve şehri değiştirmesine olanak tanır. sunucu sizden her şeyi sistem kaynaklarından almanızı isteyecektir.

Vikoristannya tam ekran modu (masaüstü modu)

Program işlevselliğine birbirine bağlı erişime sahip özel arayüzleri düzenlemenin etkili yollarından biri, arayüz tarafından kullanılan ana (ve muhtemelen tek) formun tam ekran modudur. Bu durumda, yiyeceğin mevcudiyeti önemli değildir, örneğin “Dosya” menüsü ve kullanıcının tüm işlevleri, değiştirilmiş bir formun olanaklarıyla değiştirilir. Div'in Raporu. ITS diskinde "Masaüstü modunun uygulama özellikleri".

Yedek kopya

1C'nin istemci-sunucu sürümünün yedek kopyası iki şekilde kaydedilebilir: genişletilmiş dt'li bir dosyadan veri çıkarmak ve SQL yöntemlerini kullanarak yedek kopyalar oluşturmak. İlk yöntemin birçok dezavantajı vardır: özel erişim gereklidir, bir kopyanın oluşturulması çok daha uzun sürer, bazı durumlarda (IB yapısı hasar görmüşse) arşiv oluşturmak imkansızdır, ancak yalnızca bir avantajı vardır: minimum boyut arşivden woo. Bir SQL yedeklemesi için tüm ayrıntılar: Yedek kopya, basit yapısı ve kompaktlığı nedeniyle arka planda SQL sunucusu tarafından yedeklenir - bu çok basit bir işlemdir ve SQL veritabanının fiziksel bütünlüğü sağlandığı sürece hasar görmemişse, yedek kopya Boyut orijinal boyuta dönüştürülür ve kopya boyutu genişletilmiş gövdedeki gerçek IB boyutuyla eşleştirilir (sıkmayın). MS SQL yedekleme sisteminin ek avantajları için, onu kullanmak daha önemlidir (3 tür yedeklemeye izin verilir: tam, diferansiyel, işlem günlüğünün kopyası; düzenli olarak yedeklenen bir yedeği yok etme olasılığı vardır) ; yedekleme kopyası ve yedekleme sistemi başlatılır; aktarma yeteneği uygulanır, gerekli disk alanı boyutu vb.). Sistem güvenliği açısından bir yedekleme düzenlemenin ana noktaları şunlardır:

  • Yedek kopyaların saklanacağı yerin kullanıcılar tarafından erişilemeyecek şekilde seçilmesi gerekmektedir.
  • Yedek kopyaların fiziksel uzak MS SQL sunucusuna kaydedilmesi ihtiyacı (doğal afet, yangın, saldırı vb. durumlarda)
  • Yedek kopyalara erişime izin vermeyen bir bilgisayarın yedek kopyasını başlatma hakkını verme olasılığı.

Daha ayrıntılı bilgi için MS SQL belgelerine gidin.

Veri şifreleme

Verileri yetkisiz erişime karşı korumak için sıklıkla çeşitli şifreleme özellikleri (hem yazılım hem de donanım) kullanılır, ancak bunların önemi formatın doğruluğunda ve gizli koruma.osti sisteminde yatmaktadır. Verilerin iletilmesinin çeşitli aşamalarında şifrelenmesine ve çeşitli gelişmiş özellikler kullanılarak verilerin korunmasına ve çeşitli şifreleme özellikleri kullanılarak sistem tasarımının temel özelliklerine bakacağız.

Çalınabilecek bilgi işlemenin bir dizi ana aşamasını görebilirsiniz:

  • Sistemin istemci kısmı ile eklenti sunucusu arasında veri aktarımı
  • Eklenti sunucusu ile MS SQL Server arasında veri aktarımı
  • MS SQL Server'a kaydedilen veriler (fiziksel diskteki veri dosyaları)
  • IB'de depolanan verilerin şifrelenmesi
  • Dış veriler (yüzde yüz IB)

İstemci tarafında ve eklenti sunucusunda kaydedilen veriler için (sunucu kurulumuna ilişkin tasarruflar, IB listesi vb.), şifreleme yalnızca birkaç durumda doğrudur ve bu burada tartışılmamıştır. Kriptografik özelliklerin kullanımıyla birlikte bunların kullanımının sistemin verimliliğini önemli ölçüde azaltabileceği unutulmamalıdır.

TCP/IP protokolü kapsamında çevresel bağlantıların kriptografik koruması hakkında gizli bilgi.

Koruma olmadan, yetkisiz erişimi önlemek için tüm dökülmeler dikkatlice bağlanır. Koruma için, verileri güvenlik protokolüyle aynı protokolü kullanarak şifreleyebilirsiniz. Yerel bir ağda iletilen verileri şifrelemek için çoğunlukla işletim sistemi tarafından sağlanan IPSec kullanılır.

IPSec özellikleri, ek DES ve 3DES algoritmaları kullanılarak iletilen verilerin şifrelenmesini ve ayrıca ek MD5 veya SHA1 karma işlevlerini kullanarak bütünlüğün doğrulanmasını sağlar. IPSec iki modda çalışabilir: aktarım modu ve tünel modu. Taşıma modu, yerel sınırlarda bağlantıların güvenliğinin sağlanması için en uygun olanıdır. Tünel modu, bir ağın bitişik bölümleri arasında bir VPN bağlantısı düzenlemek veya özel veri kanalları aracılığıyla bir yerel ağa uzak bağlantıyı korumak için kullanılabilir.

Bu yaklaşımın başlıca avantajları şunlardır:

  • Active Directory'nin ek özellikleri için güvenliği merkezileştirme yeteneği.
  • Eklenti sunucusuna ve MS SQL sunucusuna yetkisiz bağlantıları devre dışı bırakma yeteneği (örneğin, eklenti sunucusunda yetkisiz IB erişimine karşı koruma sağlamak mümkündür).
  • Trafiğin "dinlenmesini" suçlayın.
  • Uygulama programlarının davranışını değiştirmeye gerek yoktur (1C için).
  • Böyle bir çözümün standart doğası.

Ancak bu yaklaşımın sınırlamaları ve eksiklikleri vardır:

  • IPSec, verilerin doğrudan verileri alan bilgisayara gönderilmesini veya bu bilgisayarda duyulmasını engellemez.
  • Ağ üzerinden iletilen veri miktarı, IPSec'e ihtiyaç olmasa bile daha da fazladır.
  • IPSec kurulduğunda merkezi işlemciye daha fazla önem verilir.

Çeşitli IPSec ağlarının ayrıntılı bir açıklaması bu makalenin kapsamı dışındadır ve IP protokolünün temel çalışma prensiplerinin anlaşılmasını sağlar. Bağlantı korumasını doğru şekilde yapılandırmak için lütfen birlikte gelen belgeleri okuyun.

Bir VPN bağlantısı düzenlerken lisanslı alanın çeşitli yönlerini 1C'den hatırlamak önemlidir. Sağda, teknik bağlantıların sayısına bakılmaksızın, yerel ağın birkaç bölümü birbirine bağlandığında veya yakındaki bir bilgisayarın yerel ağa uzaktan erişimi durumunda, birkaç temel kaynağın bulunması gerekir.

Sistemin istemci kısmı ile eklenti sunucusu arasındaki iletim sırasında verilerin şifrelenmesi.

Edge protokolü düzeyinde şifrelemenin yanı sıra, “İstemci-sunucu sürümünde istemcilerin bilgi tabanına erişiminin düzenlenmesi” makalesinde anlatılan COM+ protokolü düzeyinde de veri şifrelemek mümkündür. ONUN. Bunu uygulamak için, "Bileşen Hizmetleri"nde 1CV8 programı için çağrılara yönelik Kimlik Doğrulama düzeyini "Paket Gizliliği" olarak ayarlamanız gerekir. Bu mod ayarlandığında, paketin kimlik doğrulaması ve veriler de dahil olmak üzere şifrelenmesinin yanı sıra dizinin kimlik doğrulaması ve imzası da tamamlanır.

Eklenti sunucusu ile MS SQL Server arasında aktarıldığında verilerin şifrelenmesi

MS SQL Server, veri şifreleme için aşağıdaki özellikleri sağlar:

  • Uygulama sunucusu ile MS SQL Server arasında veri aktarımı yapılırken Güvenli Yuva Katmanı (SSL) kullanılması mümkündür.
  • Çoklu Protokol proxy kitaplığını kullanırken veriler RPC kullanılarak şifrelenir. Bu, SSL ile karşılaştırıldığında potansiyel olarak şifrelemeden daha zayıftır.
  • Paylaşılan Bellek değişim protokolü korunduğu için (bu, eklenti sunucusunun ve MS SQL Server'ın tek bir bilgisayara kurulduğu anlamına gelir), şifreleme her ne pahasına olursa olsun korunmaz.

MS SQL sunucusuna iletilen tüm verilerin şifrelenmesi ihtiyacını belirlemek için "Sunucu Ağı Yardımcı Programı" yardımcı programını hızlı bir şekilde kullanmanız gerekir. Çalıştırın ve “Genel” sekmesinde “Protokol şifrelemesini zorla” seçeneğini ayarlayın. Şifreleme yöntemi, seçilen istemci uygulamasından (1C program sunucusu) dikkatlice seçilir. SSL kullanmak için ağın sertifika hizmetini doğru şekilde yapılandırmanız gerekir.

Uygulama sunucusuna iletilen tüm verilerin şifrelenmesi ihtiyacını ayarlamak için, "İstemci Ağı Yardımcı Programı" yardımcı programını ("C:WINNTsystem32cliconfg.exe" konumunda bulunur) hızlı bir şekilde kullanmanız gerekir. İlk adım olarak, “Genel” sekmesinde “Protokol şifrelemesini zorla” seçeneğini ayarlayın.

Bu durumda yüksek hızlı şifrelemenin, özellikle büyük miktarlarda bilgi aktaran yüksek hızlı isteklerde sistem üretkenliği üzerinde önemli bir etkiye sahip olabileceğini unutmayın.

Eklenti sunucusu ile MS SQL Server arasındaki bağlantıyı TCP/IP protokolü kapsamında daha iyi korumak için, prosedürden sonra kaydedilen bir dizi ayar değişikliği önerebiliriz.

Öncelikle standart porttan farklı bir port kurabilirsiniz (port 1433 kullanılır). Veri alışverişi için standart olmayan bir TCP bağlantı noktası kullanmayı seçerseniz lütfen şunu unutmayın:

  • MS SQL sunucusu ve eklenti sunucusu aynı bağlantı noktasını ihlal etmekten suçludur.
  • Güvenlik duvarları kuruluysa bu bağlantı noktası izin darboğazlarına maruz kalır.
  • MS SQL sunucusuna başka programların kullanabileceği bir port kurmak mümkün değildir. Bunu tamamlamak için hızlı bir şekilde http://www.ise.edu/in-notes/iana/questments/port-numbers adresini ziyaret edebilirsiniz (adresler SQL Server Books Online'dan alınmıştır).
  • MS SQL Server hizmetinin birden fazla örneğine sahipseniz, yapılandırmak için MS SQL belgelerini (“Ağ Bağlantılarını Yapılandırma” bölümü) okumalısınız.

Alternatif olarak, MS SQL sunucusu üzerinde TCP/IP protokolü ile yapılandırıldığında, bu örnek MS SQL Server hizmetinin geniş alan isteklerindeki görünümleri engelleyen “Sunucuyu gizle” komutunu yükleyebilirsiniz.

Diske kaydedilen MS SQL verilerinin şifrelenmesi

Yerel diskte depolanan verileri şifrelemek için çok çeşitli yazılım ve donanım seçenekleri mevcuttur (buna Windows'un standart EFS şifreleme yeteneği, eToken anahtar kurtarma ve Jetico Bestcrypt veya PGPDisk gibi üçüncü taraf şifreleme programları dahildir). Bu yöntemlerde dikkate alınması gereken temel görevlerden biri, verilerin kaybolması durumunda (örneğin sunucunun çalınması durumunda) korunmasıdır. Microsoft'un MS SQL veritabanlarının şifrelenmiş ortama kaydedilmesini önermediği açıktır ve her şey şifrelenmiştir. Bununla ilgili temel sorun, üretkenlikteki düşüş ve arıza durumunda güvenilirlikle ilgili olası sorunlardır. Sistem yöneticisi için hayatı zorlaştıran bir diğer faktör, MS SQL hizmetinin ilk kez başlatılması sırasında tüm veritabanı dosyalarının kullanılabilirliğini sağlama ihtiyacıdır (şifreli bir cihazı bağlarken etkileşimli i dii önemlidir) .

Sistem üretkenliğinde önemli kayıpları önlemek için, birden fazla dosyadan veritabanları oluşturmak üzere MS SQL'i hızlı bir şekilde kullanabilirsiniz. Elbette bu durumda, bilgi tabanı oluşturulduğunda MS SQL veritabanının 1C sunucusu tarafından oluşturulmasına gerek yoktur, ancak ayrı olarak oluşturulabilir. Açıklamaları olan bir TSQL komut dosyası örneği aşağıda gösterilmiştir:

ana KULLANIM
GİTMEK
-- SomeData veritabanı oluşturun,
VERİTABANI OLUŞTUR
- Tüm veriler PRIMARY dosya grubunda saklanır.
İLKOKULDA
-- Şifrelenmiş bir sürücüdeki (mantıksal E sürücüsü) rötuş verilerinin ana dosyası
-- Başlangıç ​​boyutu 100 MB'tır, otomatik olarak 200 MB'a yükseltilebilir
- Crocom 20 MB
(NAME = BazıVeriler1,
DOSYA ADI = "E:\BazıVeriler1.mdf",
BOYUT = 100MB,
MAKS BOYUT = 200,
DOSYA BÜYÜME = 2),
-- Şifrelenmemiş bir ana bilgisayardaki (mantıksal sürücü) rötuşlardan elde edilen başka bir veri dosyası
-- ve başlangıç ​​boyutu 100 MB'tır, otomatik olarak sınıra kadar artırılabilir
-- akış dosyası başına %5 sınırı olan disk alanı (64 KB'ye yuvarlanır)
(NAME = BazıVeriler2,
DOSYA ADI = "c:\program files\microsoft sql sunucusu\mssql\data\SomeData2.ndf",
BOYUT = 100MB,
MAXBOYUT = SINIRSIZ,
DOSYA BÜYÜMESİ = %5
OTURUM AÇ
- İşlem günlüğünün parçalara bölünmesi de mümkün olsa da bu mümkün olmayacaktır.
- Çünkü Bu dosya daha sık değiştirilir ve düzenli olarak temizlenir (örneğin,
- Veritabanının yedek kopyasının oluşturulması).
(NAME = Bazı Veri Günlüğü,
DOSYA ADI = "c:\program files\microsoft sql sunucusu\mssql\data\SomeData.ldf",
BOYUT = 10MB,
MAXBOYUT = SINIRSIZ,
DOSYA BÜYÜME = 10)
GİTMEK
- Veri tabanını derhal muhabire birisi adına vermek daha iyi olur
- 1C'ye bağlanın. Bunun için akış tabanını seslendirmemiz gerekiyor
- Sıkıca kapatacağım,
Bazı Verileri KULLANIN
GİTMEK
-- sp_changedbowner prosedürünü onayla
EXEC sp_changedbowner @loginame = "SomeData_dbowner"

Veri dosyasının boyutunun otomatik olarak arttırılması hakkında küçük bir bilgi. Veritabanları oluştururken dosya boyutları mevcut dosya boyutunun %10'una kadar artacaktır. Bu, küçük veritabanları için çok iyi bir çözümdür, ancak büyük veritabanları için o kadar da iyi değildir: örneğin 20 GB'lık bir veritabanı boyutuyla, dosya anında 2 GB artabilir. Bu işlem nadiren gerçekleşse de, birkaç on saniye sürebilir (şu anda diğer tüm işlemler aslında boştadır) ve veritabanında bir saatlik aktif çalışma varsa, arızalara veya sorunlara neden olabilir. Çok fazla disk alanı olduğunda kendini gösteren orantısal artışın bir diğer olumsuz sonucu, boş alan eksikliğinden dolayı ani bir arıza olasılığıdır. Örneğin, 40 GB hacimli bir disk bölümü bir veritabanına ait tüm verileri içeriyorsa (daha doğrusu, tüm veritabanının bir dosyası), o zaman veritabanı dosyasının kritik boyutu her durumda gereklidir (hatta terminal olarak, sağda) revizyon normal olana kadar ї robots koristuvach) bilgileri kaydetmeyi yeniden düzenleyin Veri dosyasının boyutu 35 GB'dir. Kurulan boyutla birlikte 10-20 MB artışla 39 GB'a kadar çıkılabiliyor.

Bu nedenle, seçilen listede veritabanı dosyalarından birinin boyutu %5 olarak ayarlanmış olsa da, büyük veritabanı boyutlarında veritabanı dosyalarından birinin boyutunu 10-20 MB olarak ayarlamak daha iyidir. Değer, veritabanı dosyaları için boyut büyüme periyoduna ayarlandığında, bir dosya grubundaki dosyalardan biri maksimum boyuta ulaşana kadar bunları kaydetmek gerekir; kural şudur: bir dosya grubundaki dosyalar aynı anda büyüyecektir, hepsi tamamen doldurulacaksa. Böylece SomeData1.mdf dosyası maksimum 200 MB boyuta ulaşırsa SomeData2.ndf dosyasının boyutu yaklaşık 1,1 GB olacaktır.

Korumasız SomeData2.ndf ve SomeData.ldf dosyalarının saldırganın kullanımına sunulduğu böyle bir veritabanı oluşturulduktan sonra, veritabanı veritabanının (veritabanının orijinal yapısıyla ilgili günlük bilgileri dahil) güncellenmesi son derece önemlidir. birkaç dosya, Ayrıca, anahtar bilgiler (örneğin, veritabanını oluşturan dosyalar hakkında) şifrelenmiş bir dosyada saklanır.

Elbette veritabanı dosyaları çeşitli şifreleme özellikleri kullanılarak saklandığından, (tüm dosyaların) yedeklenmesi şifrelenmemiş cihazlarda gerçekleştirilmemelidir. Birden fazla veritabanı dosyasının arşivlenmesini sağlamak için "BACKUP DATABASE" komutunun temel sözdizimini kullanın. Lütfen, veri tabanının yedek kopyasını bir parolayla koruma yeteneğinden bağımsız olarak ("YEDEKLEME VERİTABANI" komutunun "PASSWORD =" ve "MEDIAPASSWORD =" seçenekleri), bu tür bir yedek kopyanın şifrelenmediğini unutmayın!

Disklerde depolanan uygulama sunucusu ve istemci parçalarından gelen verilerin şifrelenmesi

Çoğu durumda, 1C:Enterprise tarafından vikorize edilen dosyaların (istemci kısmı ve eklenti sunucusu) şifrelenmiş cihazda doğru şekilde saklandığının makul olmayan yüksek maliyetler, koruma vb. yoluyla tanınması mümkün değildir. Gerçek bir ihtiyaç vardır. Programın eklenti sunucu ve istemci tarafının daha da sık kullanıldığını takdir etmek için zaman saati dosyaları oluşturun. Çoğu zaman bu dosyalar program tamamlandıktan sonra kaybolabilir ve 1C yöntemlerini kullanarak bunların silinmesini garanti etmek neredeyse imkansızdır. Bu şekilde, zaman alan dosyalar için işlenen dizini 1C'de şifrelemek veya bir RAM sürücüsü kullanarak diske kaydetmemek gerekir (kalan seçenek, dosyaların boyutundan dolayı her zaman mümkün değildir). oluşturuluyor ve yalnızca 1C eklentisinin kendisi hariç operasyonel bir şekilde kullanılabilir :Enterprises).

1C yöntemlerini kullanarak veri şifreleme.

1C'deki vikoristik şifrelemenin standart yetenekleri, şifreleme parametrelerine sahip Zip dosyalarıyla vikoristik çalışma nesnelerine indirgenmiştir. Aşağıdaki şifreleme modları mevcuttur: 128, 192 veya 256 bit anahtarlı AES algoritması ve orijinal olarak Zip arşivleyicisinde kullanılan eski bir algoritma. Gelişmiş AES ile şifrelenen zip dosyaları birçok arşivleyici (WinRAR, 7zip) tarafından okunamaz. Şifrelenmiş veriler içeren bir dosya oluşturmak için bir parola ve şifreleme algoritması belirtmeniz gerekir. Bu fizibiliteye dayalı şifreleme-şifre çözme fonksiyonunun en basit örneği aşağıda gösterilmektedir:

İşlev EncryptData (Veri, Şifre, Şifreleme Yöntemi = Tanımsız) Dışa Aktarma

// Verileri saate kadar dosyaya yazın. Eğer çok uzağa gittiyseniz, kurtarabileceğiniz haraçlar bu şekilde kurtarılabilir.
ValueVFile(TingingFile'ın Adı, Veri);

// Zaman verilerini arşive yaz
Zip = Yeni EntryZipFile(TimeFileArchive'ın görüntüsü, Şifre, Şifreleme Yöntemi);
Zip.Add (Zamanlama Dosyasının Adı);
Zip.Write();

// Çıkarılan arşivdeki verileri RAM'e okur
EncryptedData = NewValueShort(NewDualData(NameTimeFileArchive));

// Zamanlama dosyaları – silindi

EndFunctions Function DecryptData(EncryptedData, Parola) Dışa Aktarma

// Saygı! Aktarılan parametrelerin doğruluğu doğrulanmadı

// Değerin dosyaya aktarımını kaydedin
NameTimeTimeFileArchive = RemoveTimeTimeFile("zip");
DoubleDataArchive = EncryptedData.Remove();
DualDataArchive.Write(NameTimeFileArchive);

// Özenle kaydedilen arşivin ilk dosyası indiriliyor
NameTimeTimeFile = RejectImTimeTimeFile();
Zip = Yeni ReaderZipFile(TimeTimeFileArchiveImage, Şifre);
Zip.Forcible(Zip.Items, TimeFileName, UpdateModeZipFiles.Do Not Update);

//Dosyadan kayıtların okunması
Veri = ValueFile (TimeFileName + "\" + Zip.Elements.Im);

// Görünür zaman saati dosyaları
VidaliteFile(TimeTimeFile);
Vidalite Dosyası (Im'ya Timchasovogo Dosya Arşivi);

Dani'nin dönüşü;

Son Fonksiyonlar

Elbette bu yöntem ideal olarak adlandırılamaz - veriler açık görünümde bir zaman klasörüne kaydedilir, açıkçası yöntemin verimliliği başka herhangi bir yerden daha kötüdür, bir veritabanına kaydetmek çok büyük miktarda alan gerektirecektir, ancak platformun yerleşik mekanizmalarına dayanan bir yöntemle aynı değildir. Üstelik diğer birçok yöntemden daha üstündür; bu yöntem aynı anda veri paketlemeyi şifreler. Şifrelemeyi bu yöntemin sahip olduğu eksiklikler olmadan uygulamanız gerekiyorsa, bunları harici bir bileşende uygulamanız veya diğer kitaplıklara bir COM nesne dizini (örneğin, Vikorists Microsoft CryptoAPI) aracılığıyla erişmeniz gerekir. Kural olarak, kurtarılan parolaya göre satırın şifreleme/şifre çözme işlevini ayarlayabiliriz.

İşlev EncryptStringDES(ŞifrelenmemişRow, Şifre)

CAPICOM_ENCRYPTION_ALGORITHM_DES = 2; // Bu sabit CryptoAPI'dendir


EncryptionMechanism.Content = UnencryptedRow;
Şifreleme mekanizması.Algorithm.Name = CAPICOM_ENCRYPTION_ALGORITHM_DES;
EncryptedRow = Şifreleme Mekanizması.Encrypt();

TurnEncryptedRow;

EndFunctions // StringDES()'i şifrele

İşlev DecryptStringDES(EncryptRow, Parola)

//Uvaga! Parametreler doğrulanmadı!

Şifreleme mekanizması = Yeni COMObject ("CAPICOM.EncryptedData");
Şifreleme mekanizması.SetSecret(Password);
Denemek
Şifreleme Mekanizması.Decrypt(EncryptionRow);
Suçlamak
// Geçersiz şifre!;
Belirsiz Olarak Döndü;
KinetsProby;

Döndürme Mekanizması Şifrelemesi. İçerik;

EndFunctions // DecryptStringDES()

Bu fonksiyonda boş bir değer satır veya şifre olarak aktarılmadan önce ödeme konusunda bilgilendirilmeyeceğinizi lütfen unutmayın. Böyle bir şifreleme prosedürünü kullandıktan sonra seri orijinalin değerine düşürüldü. Bu şifrelemenin özelliği öyledir ki, iki satırı şifreleseniz bile diğer satırlar aynı OLMAYACAKTIR.

Kriptografik özelliklerin ortadan kaldırılması saatin altındaki ana faydalardır.

Kriptografik özelliklerin kullanılmasıyla aynı tavizlere sıklıkla izin verilir:

Kriptografinin yükselişi nedeniyle üretkenlikteki düşüşün hafife alınması.

Kriptografi çok fazla hesaplama (özellikle DES, 3DES, GOST, PGP gibi algoritmalar) gerektiren bir iştir. Üretken ve optimize edilmiş algoritmaların (RC5, RC6, AES) seçimi, verilerin bellekten aktarılmasına ve hesaplamalı işlemeye hiçbir şekilde katkıda bulunmaz. Ayrıca çok çeşitli sunucu bileşenlerinin (RAID dizileri, kenar adaptörleri) yeteneklerini gün ışığına çıkarmak mümkündür. Donanım şifrelemesi veya şifreleme anahtarının donanım kurtarması kaldırıldığında, üretkenlik üzerinde küçük bir ek etki daha olur: aksesuar aygıt ile bellek arasındaki iletim hızı (ve böyle bir aygıtın üretkenliği rolleri önemli ölçüde etkilemeyebilir) . Küçük veri yükümlülüklerinin (örneğin, posta bildirimleri) şifrelenmeye devam edilmesiyle sistem üzerindeki mali yükteki artış çok önemli değildir, ancak her şeyin tamamen şifrelenmesi durumunda, sistemin verimliliği üzerinde bile bir etkisi olabilir. bir bütün olarak sistem.

Parolaları ve anahtarları seçerken mevcut yeteneklerin küçümsenmesi.

Şu anda teknolojinin imkanları öyle ki, küçük bir kuruluş 40-48 bit değerinde bir anahtarı, büyük bir kuruluş ise 56-64 bit değerinde bir anahtarı seçebiliyor. Tobto. İster 96 ister 128 bit olsun, anahtar oluşturmak için kullanılan algoritmaların hatasıdır. Ancak çoğu anahtar, istemci tarafından girilen parola panelindeki ek karma algoritmalar (SHA-1 vb.) kullanılarak oluşturulur. Bu tipte 1024 bit ile anahtarı çevirmenize gerek yoktur. Öncelikle en sık kullanılan şifre tahmin edilmesi kolay olan şifredir. Seçimi kolaylaştıracak yetkililer, e: vikoristannya birden az kayıt mektubu; Şifrelerdeki Vykoristannya kelimeleri, isimleri ve ifadeleri; bilinen tarihlerin, insanların günlerinin vb. vikoristannya'sı; şifreler oluştururken “örüntülerin” seçimi (örneğin, tüm kuruluş için 3 harf, ardından 2 rakam, ardından 3 harf). İyi bir şifre hem kayıtlardan, hem rakamlardan hem de bölme karakterlerinden oluşan benzersiz bir harf dizisi içermelidir. Klavyeden girilen 7-8 karakter uzunluğundaki şifreler, bu kurallara uyulması halinde, üstelik şifrenin en az 11-13 karakter uzunluğunda olması halinde makul bir saat içerisinde seçilebilmektedir. İdeal çözüm, örneğin farklı akıllı kartlar kullanarak bir şifre kullanarak anahtar oluşturmaktır, ancak bu durumda şifreleme anahtarının israfına karşı koruma yeteneğinin sağlanması gerekir.

Anahtarların ve şifrelerin güvenli olmayan şekilde saklanması.

Bu ürün için tipik uçlar şunlardır:

  • müşterinin monitörüne yapıştırılan çıkartmalara yazılan uzun ve karmaşık şifreler.
  • çalınmamış bir dosya için tüm şifrelerin kaydedilmesi (veya çalınan bir dosya sistemin kendisi için çok daha zayıftır)
  • elektronik anahtarların özel bir yere kaydedilmesi.
  • elektronik anahtarların satıcılar arasında transferinin bir kısmı.

Anahtar kapı kolunun altındayken güvenlik kapıları hala çalışıyor mu?

Şifrelenmiş verilerin iletimi ortada güvenli değildir.

Güvenlik sistemini organize etmeden önce görevinizi tamamladığınızdan emin olun. Örneğin, ilk şifrelenmiş dosyanın, kanıtları güvenli bir şekilde okunabilen, zamana duyarlı bir klasöre açık bir şekilde yerleştirilmesi durumunda durumun (1C ile ilgili olmayan) farkındaydım. Çoğu zaman, şifrelenmiş verilerin yedek kopyaları bu verilerin "yakınlarında" gizlenir ve gizlenir.

Kriptografik özelliklerin kullanımı gerekli değildir

Aktarılan veriler şifrelenmişse erişilemez ve veriler yerel konumlarında kullanılamaz. Örneğin, IPSec hizmetleri rutin olarak programın sunucu tarafındaki trafiği "dinleme" yeteneğini ihmal etmez.

Bu şekilde, kriptografik sistemlerin tehlikeye atılması durumunda herhangi bir uzlaşmayı önlemek için, izleri kazmadan önce (en azından) aşağıdakileri oluşturun.

  • Açıklamak:
    • Çalınmaya ne gerek var?
    • Vikoristatın izini korumanın yöntemi nedir?
    • Sistem hangi parseller için güvenlik gerektiriyor?
    • Keruvatime'a kimler erişebilir?
    • Gerekli tüm hesaplara şifrelemeyi nasıl uygularız?
  • Bilgiyi saklayacak bir yer, onu bilgisayara göndermek için bir yöntem ve bu bilgiye erişebilecek bir bilgisayar bulun. Sistem geri yüklenmeden önce hız, kapasite ve kısa süreli ölçümler hakkında bilgi almak mümkündür; bu, hız kodunu optimize etmek için faydalıdır.
  • Sistemin farklı saldırı türleri üzerindeki etkisini değerlendirin.
  • Sistem güvenlik planınızı hazırlayın ve belgeleyin.
  • Sistemin ekonomik verimliliğini (geçerliliğini) değerlendirin.

Visnovok

Elbette 1C'de güvenlikle ilgili tüm yönleri bir bakışta göstermek mümkün değil ancak ön adımları kendiniz yapabilirsiniz. Elbette bu platformun ideal olduğu söylenemez - diğerleri gibi onun da çalıntı bir sistemi organize etme konusunda kendi sorunları var. Bu, bu sorunların mutlaka aşılamayacağı anlamına gelmez, ancak belki de sistemin doğru şekilde geliştirilmesi, tanıtılması ve onarılmasıyla tüm eksiklikler ortadan kaldırılabilir. Sorunların çoğu, belirli bir uygulama çözümünün yetersiz işlenmesinden ve geliştirme sürecinin ortasından kaynaklanmaktadır. Örneğin, önemli değişiklikler yapılmadan tipik çözümler dünya çapında korunan sisteme aktarılmaz.

Bu makale, herhangi bir karmaşık güvenlik yaklaşımının, gelişimin tüm aşamalarını kapsaması gerektiğini bir kez daha göstermektedir: geliştirme, gırtlak, sistem yönetimi, zorunlu, organizasyonel yaklaşımlar. Bilgi sistemlerinde güvenliğe yönelik temel tehdidi “insan faktörü” oluşturmaktadır. Bu yaklaşımlar dizisi makul ve dengeli olabilir: hiçbir anlamı yoktur ve savunmayı organize etmek için yeterli paranın görülmesi de pek olası değildir, bu da verilerin kendisinden daha ağır basmaktadır.

Şirket - Bu, alıcılar, perakendeciler, bayiler ve bağlı ortaklar için benzersiz bir hizmettir. Buna ek olarak, müşterilere geniş bir ürün yelpazesi, sınırsız ödeme yöntemleri, satın alma işlemlerinin hızlı (genellikle toplantı) işlenmesi, satın alma işlemlerini kişisel olarak tamamlama sürecini hızlandıran Rusya, Ukrayna ve Kazakistan'daki en büyük çevrimiçi mağazalardan biridir.

Bu bağlamın yığını, programınızı bitirdiğinizde ayırdığınız ilk arabellekle aynıdır. Önce kalan (LIFO), kalanın koyduğunuz şey olduğu anlamına gelir, önce onu çevirdiğinizde, yığının iki elemanına bastığınızda, “A” ve sonra “B”, sonra ilk olarak, yığından başladığınızda “B” olun ve bir sonraki adım “A” olacaktır.

Kodunuza bir işlevi kaydettiğinizde, işlevi çağırdıktan sonraki komut, yığına ve işlevin çağrılmasıyla üzerine yazılabilecek herhangi bir bellek alanına kaydedilir. Seçilen işlev, yerel değişiklikleri için daha fazla yığın alanı kullanabilir. Bir kez bozulduktan sonra, vikoristler gibi yerel geniş kapsamlı değişiklikleri değiştirmek ve ardından önceki işleve geri dönmek gerekli olacaktır.

Yeniden istifle

Yığın yenileme - yığın için daha fazla bellek ayırdıysanız, programa tahsis edilmeyecektir. Standart sistemlerde, yığın için yalnızca 256 baytınız olabilir ve dış görünüm işlevi 32 bayt kapladığından, işlev 4'ü tıklayan işlev 3'ü tıklattığınızda yalnızca derin işlev 1 ile işlev 8'i, işlev 2'yi çağırabilirsiniz... birisi İşlev 9'u çağıran işlev 8'i çağırır ve işlev 9, yığın arasındaki belleğin üzerine yazar. Belleğin, kodun vb. üzerine yazabilirsiniz.

Bunu A fonksiyonuna tıklayarak yapabilen çok sayıda programcı vardır, o da B fonksiyonuna tıklar, sonra C fonksiyonuna tıklar, sonra da A fonksiyonuna tıklar. name її її scho geçen gün hakkında, siz bilgisayardayken Bilgisayar, yığının yeniden yazıldığını bilmiyor.

Özyinelemeli işlevler aynı zamanda özyinelemeli olarak yazarsanız (böylece işleviniz kendini çağırırsa), işlerin özyinelemeyle devam etmesini sağlamak için bu statik/global değişiklikleri bilmenizin nedenidir.

Kural olarak, işletim sistemi kullandığınız, bir yığın oluşturduğunuz ve sizin elinizde olmayan bir tür programlamadır. İşlevinizin ne kadar derinlemesine tıkladığını görmek ve tanınmayan döngüleri ve özyinelemeyi belirlemek için tıklama grafiğinize (ana noktanızda her işlevin çağırdığını gösteren ağaç benzeri yapı) bakmanız gerekir. Günlük döngüler ve özyinelemeler ufukta beliriyor ancak defalarca dedikleri gibi parça parça ölüme gidiyorlar.

İyi programlama uygulamaları, statik ve dinamik testlerin yanı sıra bu üst düzey sistemlerden pek bir şey kazanamazsınız.

Uygulanan sistemler

Yeni dünyada, özellikle güvenilirliği yüksek kodlarda (otomotiv, havacılık, uzay), kodun birçok revizyonu ve yeniden doğrulanmasıyla karşılaşıyorsunuz ve ayrıca aşağıdaki eylemlerle karşılaşıyorsunuz:

  • Özyinelemeyi ve döngüleri savunun - ön düzeltme politikaları ve testler
  • Kodu kırp ve yığın birbirinden uzak (kod flash bellekte, yığın RAM'de ve birbirleriyle karşılaştırılamaz)
  • Kuru lekeyi yığının üzerine yerleştirin - sihirli bir sayıyla dolduracağınız boş bir hafıza alanı (taşma programını kurun, ancak burada birçok seçenek var) ve saniyede yüzlerce ve binlerce kez hayrete düşeceksiniz kuru lekenin üzerine yuvarlanmak, böylece kokunun üzerine yazılmamış olur.
  • Vikoristovvati zakhist mem'yati (yığın üzerinde vikonovat yapmayın, doğrudan yığına okumayın veya yazmayın)
  • Yeniden işleme ikinci işlevleri çağırmaz; komutları yükler, verileri kopyalar ve işleminiz hakkında ek verilere izin verir (aksi takdirde iklimsel işlevler ağacınızın derinliğinden 8'i çıkarabilir, yeniden oluşturup sonra devam edebilirsiniz) Yalnızca kesintinin ortasındaki işleve geri dönün, bu nedenle Wikid'e tıklayın). Bir grup döngüsel ağacınız var; biri ana süreçler için, diğeri de cilt tahrişi için. Sizin kesintileriniz nasıl tek bir şey tarafından kesintiye uğratılabilir... yani, ejderhalar...

Movi ve yüksek seviyeli sistemler

İşletim sistemlerinde çalışan yüksek dereceli alüminyumlar:

  • Derleyicilerin bu konuda daha makul olmasını ve tıklama ağacınız vb. gibi birçok şeyi arka arkaya yerleştirmesini istiyorsanız, yerel değişiklik kümesini değiştirin (yerel değişiklikler yığına kaydedilir). İbnim.
  • Benzersiz veya kesin olarak belirlenmiş özyineleme
  • Programınızı daha küçük işlevlere göre çeşitlendirmeyin - yerel değiştirilebilir kaplamalar düzenlemeden, işlevler yığında 64 bayta kadar tasarruf sağlar (32 bit işlemci, işlemci kayıtlarının yarısını kaydeder, hepsi).
  • Ahşabın ahşabını sığ bir şekilde kesin (yukarıda anlatılana benzer)

Web sunucuları

Bu, bildiğiniz gibi, yığını kontrol edip boşaltabilmeniz için "korumalı alanda" tutulmalıdır. Her şeyden önemlisi, elinizden önemli miktarda parayla web sunucularının yanı sıra diğer üst düzey dilleri ve işletim sistemlerini de satın alabilirsiniz, aynı zamanda sunucu yığınını da satın alabilirsiniz. Örneğin SQL sunucunuzdaki yığını kırabilirsiniz.

Program yığını, LIFO (Son giren ilk çıkar) prensibi kullanılarak düzenlenen özel bir hafıza alanıdır. "Yığın" adı, plakaları istifleme ilkesine benzer - plakaları üst üste koyabilirsiniz (yığına ekleme yöntemi, "dikiş", "itme") ve ardından bunları yerden başlayarak kaldırabilirsiniz. üst (Yöntem otrimannya zі yığını, "vishtovhuvannya", "pop"). Program yığınına aynı zamanda metin yığını, bilgisayar yığını da denir ("yığın" ile karıştırılmamalıdır - verilerin soyut yapısı).

Ne tür bir yığına ihtiyacınız var? Bir alt programa çağrıyı manuel olarak düzenlemenizi sağlar. İşlev çağrıldığında belirli bağımsız değişkenleri kaldırır; Yerel değişikliklerinizi de buraya kaydedebilirsiniz. Ayrıca, bir fonksiyonun, parametreleri iletmesi ve değişikliklerini kaydetmesi gereken başka bir fonksiyonu çağırabileceğini anlamalısınız. Yığını kullanarak, parametreleri iletirken, onları yalnızca yığının üzerine itmeniz gerekir, böylece çağrılan işlev onları çıkarabilir ve açabilir. Yerel değişiklikler de buraya kaydedilebilir; kodun başlangıcında, işlev yığın belleğinin bir kısmını görür ve kontrol döndürüldüğünde temizler ve kaydeder. Yüksek kaliteli dil programları bu tür konuşmalar konusunda endişelenmez - gerekli tüm rutin kodlar derleyici tarafından onlar için oluşturulur.

Yemeğin mirası

Artık soruna yaklaştık. Soyut bir ifadeyle yığın, yeni öğelerin sonsuza kadar eklenebileceği sonsuz bir yapıdır. Ne yazık ki, dünyamızda her şey açık ve bunun sorumlusu hafıza değil. İşlev argümanları yığına aktarılırsa ne olur? Hangi fonksiyon hafızadaki değişiklikleri görür?

Stack dolumu adı verilen bir değişiklik olacak. İstemcinin işlevlerine (ve nesne yönelimli olanlar da dahil olmak üzere mevcut dilleri temel alan ve aksi takdirde işlevlere dayalı olacak pratik olarak tüm programlara) yapılan çağrıları düzenlemek için gerekli olan yığının parçaları artık çağrılmayacak. Bu nedenle işletim sistemi çekirdeği alır, yığını temizler ve programı sonlandırır. Burada yığının yeniden doldurulması arasındaki farkı vurgulayabilirsiniz - ilk aşamada, ceza, hafıza alanı yanlış alana aktarıldığında oluşturulur ve bu aşamadaki koruma günlük olduğundan, bu noktada kendini göstermiyor - gelecekte Program hala normal şekilde çalışabilir. Katliamın anısı yaşanır yaşanmaz çalındı ​​ve kurtarılmaya çalışılıyor. Stack'ı kullanırsanız program sorunsuz bir şekilde sona erecektir.

Daha kesin olmak gerekirse, böyle bir açıklamanın yalnızca “yerel” kodu derleyen derleyiciler için doğru olduğunu belirtmek gerekir. Sanal makinenin, takip edilmesi çok daha kolay olan programlama programları için kendi yığını vardır ve suçluluk durumunda hataları programa aktarmanıza izin verebilirsiniz. Sі ve Sі++ dillerinin bu tür “lüksler” için sigorta sağlama olanağı yoktur.

Merhamet et

Böyle kabul edilemez bir duruma ne sebep olabilir? Açıklanan mekanizmadan gelen seçeneklerden biri, tıklamaların çok sayıda giriş işlevidir. Yaklaşımı vikoriskal özyinelemeyle geliştirmeye yönelik bu seçenek özellikle makuldür. Sürekli yineleme ("hesaplamalar" için bir mekanizmanın yokluğunda), çıktının değiştirilmesine yol açacak şekilde kesintiye uğrar ve bu da durgunluğa neden olabilir. Bununla birlikte, yığına ayrılan az miktarda bellekle (bu, örneğin mikro denetleyiciler için tipiktir), basit bir tıklama dizisi yeterli olabilir.

Diğer bir seçenek ise büyük miktarda bellek gerektiren yerel değişikliklerdir. Bir milyon öğe ve bir milyon yerel değişkenle (çok nadiren olur) yerel bir dizi başlatmak en iyi fikir değildir. Böyle bir "açgözlü" işlevin tek bir tıklaması, yığının yeniden doldurulmasına neden olabilir. Büyük miktarda veriyi geri getirmek için, yanlışlıkların işlenmesine olanak tanıyan dinamik bellek mekanizmalarını kullanmak daha hızlıdır.

Bununla birlikte, dinamik belleğe yalnızca manuel olarak erişilebilir ve saklanabilir (işletim sistemi tarafından kullanıldığı için) ve doğrudan erişimde, onu manuel olarak görüntülemek ve silmek gerekir. Yığındaki bellek hızlı bir şekilde görünür (aslında yalnızca bir kaydın değerlerini değiştirmeniz gerekir), ayrıca yığında görünen nesneler, işlev açıldığında ve yığın temizlendiğinde otomatik olarak çağrılan yıkıcılara sahiptir. Tabii ki, hafızayı yığından hemen çıkarmak gerekiyor. Bu nedenle yeniden uygulamaya giden üçüncü yol, programcı tarafından bellek yığınında bağımsız görünürlüktür. Özellikle bu amaç için dil kütüphanesi alloca fonksiyonunu sağlamaktadır. Malloc dinamik hafıza fonksiyonunun serbest ayarında bir "ikizi" olmasına rağmen, alloca fonksiyonunun bir ikizine sahip olmadığını lütfen unutmayın; bu fonksiyon kontrolü çevrildikten sonra hafıza otomatik olarak serbest bırakılır. Muhtemelen bu daha karmaşık bir durum yaratır; işlevden çıkmadan önce bile bellek kullanılamayacaktır. "Alloca işlevi makinede ve derleyicide depolanır; zengin sistemlerde uygulanması sorunludur ve birçok tuzağa sahiptir; kötülüğü artık ciddi değildir ve işe yaramaz" adam hikayesini anlayanları umursamayın. Valyuetsya" - hala bir vikorizm var.

Uygula

Örnek olarak, MSDN'de dosyaları yinelemeli olarak aramak için kullanılan koda bir göz atalım:

Void DirSearch(String* sDir) ( try ( // Aktarılan klasördeki alt klasörleri bulun. String* d = Directory::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->Metin); int numFiles = f->get_Length(); for (int j = 0; j< numFiles; j++) { listBox1->Öğeler->Ekle(f[j]); ) DiziArama(d[i]); ) ) catch (System::Exception* e) ( MesajKutusu::Göster(e->Mesaj); ) )

Bu işlev, belirtilen dizindeki dosyaların listesini alır ve ardından dizin gibi görünen liste öğelerini döndürür. Görünüşe göre derin bir dosya sistemi ağacına erişirsek doğal bir sonuç elde ederiz.

Beslenmeden alınan farklı bir yaklaşım örneği "Yığın neden yeniden dolduruluyor?" Stack Overflow adlı bir siteden (site, yalnızca yapılabilecek yığının yenilenmesi değil, her türlü programlama konusu hakkında bir yayın ve inceleme koleksiyonu içerir):

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

Görünüşe göre, ana işlevin, bir milyon dış görünüm öğesi için int ve float türlerinden oluşan bir dizi altındaki yığında belleği var; bu, toplamda 8 megabayttan biraz daha az bir miktara tekabül ediyor. Visual C++'ın yığın için 1 megabayttan fazla yer ayırdığını fark ederseniz, sonuç açıkça ortaya çıkar.

Eksen, Lightspark Flash oynatıcı projesi için GitHub deposundan alınmıştır:

DefineSoundTag::DefineSoundTag(/* ... */) ( // ... unsigned int soundDataLength = h.getLength()-7; unsigned char *tmp = (unsigned char *)alloca(soundDataLength); // .. .

h.getLength()-7'nin o kadar büyük bir sayı olmayacağından emin olabilirsiniz, böylece sonraki satır taşmaz. Ale chi varto zashchadzheny na vidіlenі saat "potansiyel" villotu programı mı?

Kese

Yığın taşması ölümcül bir sorundur, çünkü özyinelemeli işlevleri kullanan programlar çoğunlukla sorun yaşar. Ancak program bu tür işlevleri barındırmadığından, çok sayıda yerel değişiklik veya yığındaki görünür bellekteki değişiklikler yoluyla yeniden uygulama hala mümkündür. Tüm klasik kurallar artık yürürlükte değil: seçim yapmak mümkün olduğundan, özyineleme yerine yineleme avantajına ulaşmak daha kolaydır ve ayrıca derleyiciyi değiştirmek için manuel çalışma yapmak zorunda kalmazsınız.

bibliyografik liste

  • E. Tanenbaum. Bilgisayar Mimarisi.
  • Vikipedi. Yığın taşması.
  • Yığın Taşması. Yığın taşması C++.

14.04.2016 Versiyon 3.22 Arayüz değiştirildi, kayıtların aktarılmasındaki hatalar düzeltildi, organizasyon ve bulut politikasının aktarılması prosedürü değiştirildi. Platform 8.3.7.2027 BP 3.0.43.174
17.03.2016 Versiyon 3.24 Düzeltmeler yapıldı. Platform 8.3.8.1747 BP 3.0.43.241
16.06.2016 Versiyon 3.26 İşaretlerde düzeltmeler. Platform 8.3.8.2088 BP 3.0.44.123
16.10.2016 Versiyon 4.0.1.2 Değer klasörünün aktarımı düzeltildi, 3.44.* sürümleri için bulut politikasının aktarımı değiştirildi. Platform 8.3.9.1818 BP 3.0.44.164.
19.04.2017 Versiyon 4.0.2.7 Sağlayıcılarla ilişkili kayıtların aktarılmasına yönelik algoritma değiştirildi, işaretler düzeltildi ve mesajların yeniden yazılmasıyla aktarım düzeltildi.
29.05.2017 Versiyon 4.0.4.5 Arşivlerin aktarımı değiştirildi, artık aktarılan belgelerin arşivlerinin incelenmesi eklendi.
30.05.2017 Versiyon 4.0.4.6 Gerekli çalışanların listesi tamamlandığında oluşan erteleme düzeltildi (shoy sayesinde)
17.06.2017 Versiyon 4.0.5.1 Arşiv aktarma algoritması değiştirildi.
19.07.2017 Versiyon 4.0.5.4 KI'nin BP 2.0'dan aktarımı değiştirildi. Maalesef Smilegm'de UT 10.3'ten taşıma vardı, bu versiyonda böyle bir durum için taşıma biraz düzeltildi)))
08/10/2017 Versiyon 4.0.5.5 BP 2.0'dan aktarıldığında yapılan düzeltmeler
19/09/2017 Versiyon 4.4.5.7 3.0.52.* için sabit bağlantı doğrulaması
28.11.2017 Versiyon 4.4.5.9 İşaretlerde düzeltmeler
12/06/2017 Versiyon 5.2.0.4 Olasılığa göre arama algoritması yeniden düzenlendi. BP 1.6'dan aktarım prosedürünü ekledikten sonra, artık BP ile katı bir bağlantı yoktur - verileri yeni yapılandırmalarla "aynı ölçüde" güvenli bir şekilde aktarabilirsiniz. Tüm saygılar derhal düzeltilecektir.
12/08/2017 Sürüm 5.2.1.3 Maaş ödemelerine ilişkin ekstrelerin BP.2.0'dan BP 3.0'a aktarılmasına yönelik algoritma eklendi. Yeni yapılandırmalar arasındaki değişim değişiklikleri devre dışı bırakıldı.
19.12.2017 Versiyon 5.2.2.2 Tanıklara ait bağımsız hesap kayıtlarının devri, diğer kayıtlarda olduğu gibi ayarlandı.

12/06/2017 Yeni sürüm 5.2.0.4. Tek önemli değişiklik BP 1.6'dan BP 3.0'a geçiş olasılığıdır. Ana değişiklik danışmanların mesajlarının aranmasını yönetmektir - önceki sürümlerde aramalar GUID içindir ve bu sürümde "Ayrıntılar için" aramasını etkinleştirebilirsiniz:

17.01.2018 Versiyon 5.2.2.3 Küçük yüklenicilerin işaretlemeleri ve periyodik hesap kayıtları düzeltildi.

19.07.2018 Versiyon 5.2.2.8 Takdir işaretleri düzeltildi.

Herhangi bir araştırmacı için aramanın ayrıntılarını girebileceğiniz yer. Bu modun kendisi, örneğin, halihazırda veri bulunan mevcut bir tabandan bir değişim gerekiyorsa (örneğin, iki organizasyonun yapısını tek bir tabanda birleştirmek için) işçi sayısından "etkilenir".

21.12.2015 r. Platform 8.3.7.1805 ve BP 3.0.43.29 piyasaya sürüldü ve yazılımın 3.1 :-) yeni bir sürümü (aşağıda açıklanmıştır) açıkça yayınlandı. Yeni işlevsellik - iki güç kaynağı tabanı arasındaki fazlalıkları ve ciroyu eşitleme yeteneği (sektörlerin planlarının takip edildiği tüm sektörler için ve takip edilen muhasebe alanının diğer bölümleri için, yu veya analizler için).
01/03/2016 r. Sürüm 3.5 - cihazın tabanına bağlantı mekanizması değiştirildi - BSP 2.3.2.43'e güncellendi. Bazı küçük kusurlar düzeltildi. Platform 8.3.7.1845, BP 3.0.43.50
16.02.2016 r. Sürüm 3.6 - Manuel olarak aktarılan belgeler için "Manuel düzenlemeyi yükle" seçeneği eklendi. Belgelerin aktarımı düzeltildi; tarihi ve süresi daha kısa olan belgeler aktarım yapılmadan aktarılabilecek. Platform 8.3.7.1917, BP 3.0.43.116
22.03.2016 r. Versiyon 3.10 - Sipariş edilen nesnelerin zorunlu olarak yeniden kaydedilmesi için "Siparişi önceden yeniden yazın" talimatı eklendi (gerekirse aktarım hızı azaltılır). Cihazın rafları ve uygulama için plan türlerini (raf kodlarıyla birlikte) ve sabitlerin aktarımını özelleştirebileceğiniz “Hazırlık” sekmesi eklendi. Platform 8.3.7.1970, BP 3.0.43.148

04/03/2016 Versiyon 3.11 Dzherelya'nın doldurduğu belgelerin listesi: Hesap planı kurallarının arkasında, tıpkı //site/public/509628/'de olduğu gibi sadece dönem için gönderilerek tamamlanan bir yeniden doldurma vardı.

İşleme, herhangi bir süre için verileri "Vivantation MXL"e benzer şekilde yalnızca XML, JSON vb. kullanmadan ITS ile aktarmayı amaçlamaktadır. ara dosyalar - COM aracılığıyla veritabanından veritabanına alışveriş. 3.10'dan daha eski sürümler, comcntr.dll kaydının aktarıldığı (işletim sistemine "izin vermek" için) BSP'den gelen algoritmaya bağlantı gerektirir; ayrıca bağlantıyı kurmak imkansızsa da farklıdır, örneğin - "Bilgi" Bu veritabanı güncellenme sürecindedir” vb. P . Seçimin bir sonucu olarak seçimin yeniden doğrulanması eklendi - programın ilerisinde görünüyor.

Can buti vikoristan için:

1. Düzenleyici ve yasal bilgilerin (NSI) IB Dzherelo'dan IB Primach'a aktarılması (tüm NCI'lerin aktarımı muhabirin görevine tabidir, herhangi bir aktarım durumunda gerekli belgeler de talimatlara göre aktarılır).

2. Seçilen herhangi bir dönem için belgelerin aktarılması.

3. 1C:Enterprise modunda başlatıldığı için "bozuk" IB'den tüm bilgilerin aktarılması ve verilerin içe aktarılması veya Yapılandırıcının başlatılması imkansızdır.

İşlemenin özelliği - hem yöntemler hem de cihazlar 2.0'dan 3.0'a aktarılabilir - sürümler 2.0'dan 3.0'a aktarılabilir! Aktarım algoritmalarını ayarlamaları gerekiyorsa ayrıntılar göz ardı edilemez.

Not: Veri dönüşümü ZAFER'e tabi DEĞİLDİR! Ve koma yemeyin! Özellikle hassas olanlar için - BP 3.0 yavaş yavaş değişiyor, transfer kurallarını mevcut durumda tutmak çok çaba gerektiriyor - burada her şey daha basit :-).

İşlemenin bir başka özelliği de alıcının IB'sinde başlatılmasıdır (işlevselliğe en yakın analoglar, cihazdan alıcıya paralel olarak çalışır).

İşin başlangıcı - işlem süresinin belirtilmesi, organizasyonun cihazdan belirtilmesi ve kabule aktarılması gerekir.

Bir kuruluş devredildiğinde, bölgesel politika ve "beraberindeki" kayıt kayıtları da devredilir. Bu nedenle Dzherel'de bir organizasyonu ilk seçtiğinizde, resepsiyon salonunda görünmeden önce bir yalan olacaktır.

Suçluların konuşlandırılması ve kabulüne ilişkin planlar aynı kalacak, ancak ayrılan bölümler 2.* sürümündeki kabule aktarılmayacak; bölümlerin ve analitiklerin tutarlılığının ayarlanmasının gelecekte dahil edilmesi planlanıyor. Kutu içerisinde bulunmayan kodlar için kutular aktarılacak ve OLUŞTURULMAYACAKTIR!!!

Diğer nesneler dahili tanımlayıcıların (GUID) arkasına aktarılır, bu nedenle Para Birimi gibi anahtar tanımlayıcılarda bunlara saygı gösterilir.

"Temiz" bir veritabanıyla alışveriş yapmayı planlıyorsanız, değişimden önce ilk başlattığınızda tamamlanan verileri hızlı bir şekilde silebilirsiniz. Örnekte neden tarayıcıların öğelerini seçip silebileceğiniz bir sayfa var? En azından "ovmak" para birimini seçmeniz gerekir. - Çünkü İki katına çıkma pratik olarak kaçınılmazdır (prensip olarak, aramayı değiştirdikten ve BP 3.0'da tanıtılan kopyaları değiştirdikten sonra kolayca düzeltilebilir).

Koçanı doldurma formu açıldığında seçilen verinin sayfaya tıklanmasının aktarılması örneğinde:

İşlemeyi açtığınızda, verilerin ilk tamamlanması için silinen girişlere ilişkin sayfa görüntülenecektir:

Sürüm 3.22 ile arayüz değiştirildi, artık tüm hazırlık işlemleri yer imlerine eklendi ve gelecekte de kullanılabilir


Planın yapı tipini mutlaka kontrol etmeniz ve yapı tipini dikkatlice belirtmeniz önemlidir.

Yardımcılardan herhangi bir ek öğenin kaldırılmasına gerek yoktur; bunlar yapılandırma tanımlayıcıları (GUID'ler değil) tarafından taşınır.

Belgelerden ve belgelerden ek bir seçim formu kullanarak aktarım için nesneleri seçebilirsiniz. (Bu nesneyle ilişkili kayıtlar otomatik olarak aktarılacağından bunların seçilmesine gerek yoktur).Kayıtların aktarımı şu anda devre dışı - aktarım için bir kayıt listesi talep etmeniz gerekiyor - şimdi bunları buraya aktarabiliriz, bu aşamada bunları tarayıcıya aktarmak yeterlidir, aktarım için kayıtların listesi şablonda olacaktır , gelecek sürümlerde .

2.0'dan geçiş yaparken bazı ayrıntılar (örneğin iletişim bilgileri) algoritmaya aktarılır, çünkü 2.0 ve 3.0 için koku farklı şekillerde kaydedilir. Düşük kaliteli belgelerde de durum benzerdir (örneğin Coryguvannya Borg).

Nesne türlerinin listesi 3.22 sürümünde farklı şekilde doldurulabilir ancak resimdeki açıklamayı değiştirerek alt menüye dahil edilmiştir:

Ve basitleştirilmiş işlem - değişim için danışman seçemezsiniz, ancak tür listesini yalnızca bir giriş yapmak istediğiniz danışman türleriyle doldurabilirsiniz.

Düzenin uygulanması işlenirken, cihazdan hedefe aktarılan belgelerin (“Aktarımdan hariç tut” düzeni) değiştirilmesi gerekli değildir. Bu düzen kanıt olarak eklenebilir (görüntülenebilir). Tüm bilgileri aktarmanıza gerek yoktur - belgeleri aktarmanız yeterlidir, türlerini seçmeden listesini seçebilirsiniz, tüm belgeleri, gönderilerin bulunduğu belgelerle doldurmanız yeterlidir.

Harabeli belgelerin aktarımı aktarılmıştır, 3.0'dan 3.0'a geçiş için ve klasör planlarına göre birebir yapılacaktır, 2.0'ı 3.0'dan değiştirirken olası bir aktarım vardır, belgelerin aktarılması önerilir harabe olmadan ve sonra bunları resepsiyon görevlisine geri göstermeleri gerekiyor. Belgeleri manuel olarak aktarırken “Manuel düzeltme” bayrağı kurulur.

“Geçildi” şartı, kabul belgelerine Dzherelya'dakiyle aynı şekilde yüklenir, ancak hatalar (aktarılmadıkları için) yalnızca belgeler işlendikten sonra, örneğin BP 3.0'da tanıtılan belgelerin Grup tarafından işlenmesi kullanılarak ortaya çıkar. (önerilen seçenek) veya bu işlemle (Burada "Belgeleri Gönder" düğmesi є).

İşlemin kalıcı değişim yoluyla yapılması planlanıyorsa, alıcının IB'sine kaydedilebilir ("Kaydol" düğmesi). "Tek seferlik" aktarımlar için Dosya - Aç yoluyla bir kopya oluşturmanız yeterlidir.

21.12.2015 - Sürüm 3.1 platform 8.3.7.1805 ve güç kaynağı ünitesi 3.0.43.29 (3.0.43.* için sürüm 2.15 çalışmıyor - yapılandırma büyük ölçüde değiştirildi).

Değiştirildi:

Bir bağlantı seçeneği seçmek için iletişim kutusu, İstemci-sunucu seçeneği her zaman mevcuttur, kuruluma bağlı olarak, dosya veritabanı klasörü seçilerek veya sunucudaki veritabanı klasörünü seçerek ve sunucunun kendi adına göre kullanılabilir ( diyalog 2.15 sürümünde düzeltildi)

- YENİ FONKSİYONEL: Üsler arasındaki fazlalıkları ve ciroları hesaplama mekanizması gerçekleştirildi ve çeşitli ayrıntılara dahil edildi:


Bebekten hayvan bakımına yönelik seçenekleri seçin:


Ve ince ve kalın istemcide tarayıcının görünürlüğü - ince istemcide dosya hizalama penceresi görüntülenir:


İnce istemcide, programın düğmelere basmasıyla uğraşmadan, hizalama penceresini görüntülemek için basit bir seçeneği deniyorum:


İnce istemci IMHO'da güncelleme yapmak daha zordur çünkü Etkinlikler arasında gezinmek için düğmeler vardır, böylece daha büyük görevler için fare ile kaydırılarak tablonun kaydırılması daha kolay olur:

22.03.2016 r. Versiyon 3.10 - Sipariş edilen nesnelerin zorunlu olarak yeniden kaydedilmesi için "Siparişi önceden yeniden yazın" talimatı eklendi (gerekirse aktarım hızı azaltılır). Cihazın rafları ve uygulama için plan türlerini (raf kodlarıyla birlikte) ve sabitlerin aktarımını özelleştirebileceğiniz “Hazırlık” sekmesi eklendi. Platform 8.3.7.1970, BP 3.0.43.148

- YENİ FONKSİYONEL: Belgeleri aktarmadan önce, cihazın ve cihazın tutarlılığının yanı sıra ayarlanan sabitlerin tutarlılığı açısından depolama planının kontrol edilmesi önerilir.

Aşağıdaki türleri ayarlayabileceğiniz “Hazırlık” sekmesinin eklendiği:


Basit segment tipi tablosunu doldurma algoritması - rotasyondaki ana olanlar analiz edilir ve orada bulunan her biri için, kodun arkasındaki model, benzer olan alıcı uçtaki türe göre belirlenir bulunamadı - tabloda raf kodunu içeren bir satır görüntülenecektir, ardından alıcı rafı seçmeniz gerekir ve aktarıldığında galip gelirsiniz. Tür aynı kod düzeyinde kurulur.

Ayarlanan sabitlerin tipini kontrol etmek ve aktarmak için aşağıdaki tablo görüntülenir:

Gerekirse taşınabilir olduğunu unutmayın. İstikrar nişanı tarafından belirlenenlerin ötesine taşınacak.

© 2024 androidas.ru - Android hakkında her şey