Lepszy poziom obsługi klientów – wdrożony system wms pozwala na dokładne planowanie obsługi dostaw, umożliwia rezerwację doków lub bram załadunkowych, przygotowanie materiałów dokładnie w odpowiednim czasie i miejscu. Proces zarządzania magazynem staje się tym bardziej skomplikowany, gdy zarządzanie dotyczy nie tylko prostego magazynu, ale całego logistycznego systemu magayznowania (magazyny wysokiego składowania wms), a najbardziej w centrach logistycznych, gdzie zarządzanie magazynem dotyczy przechowywania powierzonych towarów. Wysokie zapasy magazynowe u producenta i dystrybutora wynikają z prób utrzymania ciągłości sprzedaży.
Rozwiązania softwarestudio dedykowane są w różnych wariantach w tym o prowadzenia magazynu na zasadzie outsourcingu (usługi magazynowania), magazyn logistyczny w którym przechowywany jest towar innych firm. Erp to skrót angielskiego enterprise resource planning, co znaczy planowanie zasobów przedsiębiorstwa. Jest to informacja wskazanie (polecenie) dla magazyniera, gdzie należy składować daną paletę. Firmy informatyczne często zamiast udostępniać wersje demontracyjne swoich programów, pokazują ich funkcjonalność za pomocą prezentacji multimedialnych, filmów czy animacji. Program magazynowy zintegrowany z urządzeniami wspomagającymi pracę przyczynia się do znacznego przyspieszenia obsługi magazynów przy oczywistym wzroście efektywności prac magazynowych.
Obsługa magazynu wysokiego składowania opiera się na pomocniczych kartotekach miejsc adresowych (miejsca składowania) w których przechowywany jest towar. Zastosowanie takich procedur ma uzasadnienie wszędzie tam, gdzie występują rozbudowane magazyny i znaczeniem kluczowym do sprawnego zarządzania masą towarową staje się wiedza nie ile mamy towaru w zapasie, ale gdzie się on znajduje. Program ewidencjonuje towar w układzie ilościowo wartościowym albo tylko ilościowym. Na bieżąco udostępnia informację o stanach: bieżącym dostępnym ilości zamówień od odbiorców rezerwacji ilościach zamówień do dostawców i wielu innych.
    Metoda fefo
    Domyślnie program używa autentykacji przez formularze, istnieje jednak możliwość wdrożenia rozwiązań w sieci lokalnej opartej o autentykację przez Windows, w takim wypadku zalogowanie do systemu MS Windows pozwala na automatyczną identyfikacją pracownika i nadanie mu określonych uprawnień do aplikacji
    Program magazynowy WMS.net używa autentykacji przez formularze, istnieje jednak możliwość wdrożenia rozwiązań w sieci lokalnej opartej o autentykację przez Windows, w takim wypadku zalogowanie do systemu MS Windows pozwala na automatyczną identyfikacją pracownika i nadanie mu określonych uprawnień do aplikacji. W celu wybrania metody i określenia priorytetów wraz z określoną polityką bezpieczeństwa danych należy przed wdorżeniem wykonać analizę potrzeb i aktualnie posiadanych możliwości technicznych. Żaden z systemów autentykacji Asp.Net nie oferuje szyfrowania danych przesyłanych od klienta do serwera, problem wynika nie z technologii Asp.Net, ale z protokołu HTTP, jeżeli aplikacja ma przesyłać ważne dane i działać w internecie, a nie tylko w sieci lokalnej, wówczas należy zastosować bezpieczny protokół SSL (Secure Socket Layer) lub inny mechanizm szyfrujący.

      System wms może składać się z wielu modułów mających zastosowanie w określonych branżach czy rozwiązaniach. Moduł magazynowy dla kontrahentów dostępny przez internet wdrażany jest w firmach logistycznych, gdzie istnieje potrzeba udostępniania informacji o stanach magazynowych wielu różnym kontrahentom ( właścicielom przechowywanego towaru) wraz z możliwością wystawiania dokumentów poleceń wydań, kontrolą operacji magazynowych (wgląd w dokumenty magazynowe przyjęć, wydań, kompletacji itp. Z poziomu rejestru miejsc składowania dostępna jest funkcja wyświetlająca historię obrotów związaną z danym miejscem składowania.
      Autoryzacja (authorization) jest kolejnym krokiem w którym następuje sprawdzenie do jakich zasobów ma dostęp uwierzytelniony użytkownik. Zasadniczą kwestią bezpieczeństwa w asp jest ograniczenie dostępu do określonych zasobów witryny internetowej, a osiągnąć to można za pomocą: uwierzytelniania - czyli weryfikacji pozwalająca na określenie czy dany użytkownik jest faktycznie osobą, za którą się podaje autoryzacja - określenie czy dany użytkownik jest uprawniony do uzyskania dostępu do określonych zasobów (stron, danych) z których chce skorzystać. Bezpieczeństwo można by opisać w skrócie za pomocą słów: uwierzytelnienie , autoryzacja i bezpieczna komunikacja.
      Zasadniczą kwestią bezpieczeństwa w asp jest ograniczenie dostępu do określonych zasobów witryny internetowej, a osiągnąć to można za pomocą: uwierzytelniania - czyli weryfikacji pozwalająca na określenie czy dany użytkownik jest faktycznie osobą, za którą się podaje autoryzacja - określenie czy dany użytkownik jest uprawniony do uzyskania dostępu do określonych zasobów (stron, danych) z których chce skorzystać. Bezpieczeństwo można by opisać w skrócie za pomocą słów: uwierzytelnienie , autoryzacja i bezpieczna komunikacja. W przypadku zastosowań aplikacji w sieci lokalnej (intranet) lub lokalnie pojedynczego komputera oraz pewności, że że wszyscy użytkownicy w sieci używają windows oraz przeglądarki internet explorer wówczas można zastosować rozwiązania oparte o autentykację przez windows. Rozwiązania pozwalają na łatwe zarządzanie kontami użytkowników i ról, wykorzystywanych podczas uwierzytelniania i autoryzacji.
        Programy do magazynowania
        Bezpieczeństwo można by opisać w skrócie za pomocą słów: uwierzytelnienie , autoryzacja i bezpieczna komunikacja.
        Bezpieczeństwo można by opisać w skrócie za pomocą słów: uwierzytelnienie, autoryzacja i bezpieczna komunikacja. Uwierzytelnienie (authentication) jest procesem, którego celem jest stwierdzenie czy osoba za którą podaje się dany użytkownik, jest rzeczywiście tą osobą. W tym celu podaje on swój identyfikator (w skrócie login ) no i hasło. Autoryzacja (Authorization) jest kolejnym krokiem w którym następuje sprawdzenie do jakich zasobów ma dostęp uwierzytelniony użytkownik. Bezpieczna komunikacja, czyli w tym przypadku, bezpieczny przesył danych przez sieć, to nic innego jak po prostu szyfrowanie przesyłanej zawartości. W środowisku internetowym zazwyczaj odbywa się to za pomocą technologii SSL (Secure Sockets Layer). Autoryzacja z poziomu ASP .NET konfigurowana jest w pliku Web.config. Są to ustawienia domyślne, które stosowane są do wszystkich stron katalogu wirtualnego. Element „allow” definiuje użytkowników , bądź grupy, które mają prawo do zasobów. Element „deny” definiuje użytkowników , bądź też grupy, które nie mają prawa do zasobów. W szczególności ma to znaczenie w uwierzytelnieniu typu „Windows”, gdyż można tu określić zachowanie się aplikacji w odniesieniu do grup systemowych ( blok „roles”), bądź konkretnych kont. W tym wypadku elementy w bloku „roles” przyjmują postać: NazwaDomeny\NazwaGrupySystemowej, a „users”: NazwaDomeny\NazwaKonta W celu określenia użytkowników, często stosowane są również wartości specjalne, oznaczające odpowiednio: „*”, wszystkich użytkowników „?”, użytkowników którzy nie zostali uwierzytelnieni. br/>Możliwe jest również definiowanie autoryzacji w odniesieniu do konkretnego zasobu. W tym celu w głównym bloku pliku Web.config, należy użyć definicji „location”. br/>Element “path” służy do definiowania strony, do której odnoszą się ustawienia. W tym wypadku oznacza to iż do podanej strony, będą mieli dostęp wszyscy użytkownicy, bez względu na domyślne ustawienia. W uwierzytelnieniu typu „Forms”, możliwe jest również definiowanie ról i użytkowników w oparciu o zewnętrzne źródło danych. Mechanizm ten dokładniej omówiony zostanie, w opisie załączonego do artykułu przykładu. Kontrola dostępu do zasobów z poziomu systemu może odbywać się również za pomocą uprawnień NTFS, bądź list ACL (Access Control Lists). br/>br/>b>Uwierzytelnianie/b>br/>br/>W aplikacjach ASP .NET tego co kryje się pod hasłem uwierzytelnienia, strzegą dwie „wierze”. Pierwszą z nich jest serwer WWW ( w tym wypadku jest to IIS), oraz sama aplikacja ASP .NET. Pierwszą „wierzą” strzegącą dostępu do zasobów jest IIS. Zapewnia on zasadniczo cztery typy uwierzytelnienia: Anonymous, Basic, Digest oraz Integrated Windows. W skrócie uwierzytelnienie Anonymous oznacza taką konfigurację serwera, aby otworzył swe bramy i przepuszczała każdego, kto tylko zażyczy sobie przez nie przejść. Do uwierzytelnienia typu Basic, wykorzystywane są dane ( login + hasło), istniejących kąt w systemie Windows. Wymagane jest tu więc już, podania danych uwierzytelniających. Problem w tym iż dane te są przesyłane przez sieć w postaci czystego tekstu. Zalecane jest więc stosowanie szyfrowania transmisji . Z kolei uwierzytelnienie Digest likwiduję tą niedogodność, ale za to nie jest obsługiwane przez większość przeglądarek, nie związanych z firmą Microsoft. Integrated Windows oznacza iż uwierzytelnienie jest ściśle związane z kontem, które jest aktualnie w użyciu. Serwer sprawdza tożsamość użytkownika i sam dokonuje weryfikacji czy ma on prawo do użycia danej aplikacji, bez konieczności podawania danych uwierzytelniających. Możliwe jest również stosowanie mieszanych zabezpieczeń., przez zaznaczenie kilku typów zabezpieczeń np. Anonymous i Basic. W tym wypadku zasoby określone w pliku konfiguracyjnym ASP .NET jako zabezpieczone, będą obsługiwane w serwerze IIS przez tryb „Basic”, a pozostałe przez „Anonymous”.br/>Rodzaj ustawienia można zmienić wybierając „Zarządzaj” z menu kontekstowego znajdującego się pod ikoną „Mój komputer” na pulpicie. Ustawienia aplikacji znajdują się w: Usługi i aplikacje-> Internetowe usługi informacyjne-> Witryny sieci Web-> Domyślna witryna sieci Web-> KatalogWirtualnyAplikacji-> Właściwości. W oknie Właściwości należy wybrać zakładkę „Zabezpieczenia katalogów” a następnie przycisk „Edytuj” z sekcji „Dostęp anonimowy i kontrola uwierzytelnienia”. br/>br/>Druga z wież, jak już wspomniałem to ASP .NET. Umożliwia ona cztery typy uwierzytelnienia: br/>- Windows, oznacza iż za uwierzytelnienie odpowiedzialny jest IIS. W tym wypadku wybrany musi być typ Basic, Digest bądź Windows Integrated. To rozwiązanie jest dobre dla aplikacji intranetowych, gdzie wszyscy użytkownicy posiadają konta systemowe. Nie nadaje się jednak do aplikacji internetowych, ze względu na bardzo utrudniony mechanizm tworzenia nowych kont, dla każdego użytkownika chcącego korzystać z zabezpieczanej aplikacji www. - Forms, oznacza iż uwierzytelnienie odbywa się po stronie ASP .NET.
        Bezpieczeństwo można by opisać w skrócie za pomocą słów: uwierzytelnienie , autoryzacja i bezpieczna komunikacja.
        Bezpieczeństwo Serwera SQL 2008 będzie co najwyżej tak duże jak system Operacyjny, w środowisku którego działa.
        Jeżeli uruchomione na serwerze Wondows będą niepotrzebne usługi czy pochodzące z niezaufanych źródeł programy, a dostęp do komputera nie zostanie ograniczony, zapewnienie bezpiczeństwo na poziomie serwera SQL będą nieskuteczne. Choć serwer SQL 2008 umożliwia skuteczne ;bezpieczeństwo baz danych, to jest ściśle zintegrowany z systemem Windows. Na poziomie systemu Operacyjnego Microsoft Windows dostępne są konta użytkowników i grupyi użytkowników. Serwer SQL 2008 może uwierzytelniać użytkowników lokalnego systemu Windows, został zaprojektowany z myślą o kontach domenowych. Na poziomie instancji serwera SQL mamy do dyspozycji loginy, stałe role serwera i dodatkowe poświadczenia. Pozwalają one uwierzytelniać użytkowników, łączyć ich w role i nadawać uprawnienia do zewnętrznych zasobów. Na poziomie bazy danych dysponujemy kontami użytkowników i rolami baz danych. Służą one do nadawania uprawnień w wybranej bazie danych, a jeden login serwera może być połączony z kontami użytkowników w wielu bazach1. Użytkownik, który uwierzytelnił się na podstawie loginu niepowiązanego w danej bazie z żadnym kontem użytkownika, uzyska do niej dostęp, tylko jeżeli włączone jest w niej konto gościa.

          Bezpieczeństwo jest ważne w każdym typie programu rozproszonego. Różne typy aplikacji wymagają różnych poziomów zabezpieczeń.
          Bezpieczeństwo jest ważne w każdym typie programu rozproszonego. Różne typy aplikacji wymagają różnych poziomów zabezpieczeń. Pierwszym zadaniem systemu zabezpieczeń jest uwierzytelnienie - czyli informacja kim jest osoba która się loguje i skąd program ma wiedzieć, że jest to naprawdę ta osoba. Uwierzytelnienie użytkownika wymaga jakiejś formy formy sprawdzania referencji, którymi legitymuje się użytkownik aplikacji. Jeżeli przedstawione przez użytkownika referencje zostaną przez serwer aplikacji uznane (serwer wie z kim ma do czynienia i jakie zasoby może udostępnić etmu użytkownikowi) wówczas aplikacja może wyświetlić odpowiednią stronę z zakresem uprawnień. Użytkownik, który nie zostanie uwierzytelniony nazywa się ANONIMOWY i kierowany jest on automatycznie do strony logowania lub może być przekierowany na wskazany portal klienta. System uwierzytelnienia jest bardzo trudnym i skomplikowanym procesem, dlatego nasza firma wykorzystuje sprawdzone metody jakie oferuje środowisko VisualStudio oraz ASP.Net. Środowisko to oferuje trzy rózne mechanizmy uwierzytelnienia: Standardowe uwierzytelnianie WIndows z IIS Forms - oparte o formularze - aplikacja wymaga, aby wszytskie moduły obsługujące żadania stron zawierały cookies wydane przez serwer. Jest to domyślne rozwiązanie naszych aplikacji. Próba dostępu użytkowników do zasobów zabezpieczonych bez cookies pwooduje auotmatyczne przekierowanie do strony logowania., która weryfikuje referencje wydające cookies. Passport - rozwiązanie oprte na identyfikatorze użytkownika, ale cookies są wydawane przez serwis uwierzytelnienia Microsoft. Problem z pisaniem aplikacji internetowych nie leży w logice biznesowej, która znana jest od lat 90 tych, kiedy komputery klasy PC zaczęto wykorzystywać do prac biurowych w środowisku DOS. Logika nowych aplikacji biznesowych nie odbiega znacząco od tych z lat 90tych, jednak sam fakt implementowania aplikacji na różnych urządzeniach połączonych do internetu powodują zupełnie nową jakość problemów informatycznych do rozwiązania, a w szczególności bezpieczeństwo aplikacji internetowych. Internet ma charakter publiczny i niekontrolowany. programiści piszący aplikacje w latach 90tych, a w szczególności aplikację DOSowe, generalnie nie stosowali żadnych funkcji zabezpieczających, gdyż o ile komputer znajdował się w pomieszczeniu zamykanym na klucz, ich dane były stosunkowo bezpieczne. Aplikacje w wersjach internetowych wymagają zupełnie innego podejścia do kwestii bezpieczeństwa. Samodzielne pisanie procedur bezpieczeństwa jest wyjątkowo trudne i kosztowne (aplikacje zabezpieczeń wymagają: oprogramowania, debugowania, tetsowania, wdrażania, administrowania itp). Pracownicy w firmie przychodzą i odchodzą, to znów rodzi kolejne problemy bezpieczeństwa oraz wiedzy o tym jak to działa. Chyba nikt, z programistów piszących aplikacje biznesowe dla przedsiębiorstwnie jest ekspertem od algorytmów zabezpieczających, szyfrujących, uwierzytelniających, dlatego warto jest wykorzystać standardy oferowane przez Microsoft dostępne za pomocą platformy .Net (dot net) - zamiast wywarzać otwarte drzwi i samodzielnie próbować tworzyć rozwiązania.

            Uwierzytelnianie jest procesem stwierdzania autentyczności, czyli wiarygodności, weryfikacji tożsamości użytkownika. Użytkownicy mogą być uwierzytelniani na podstawie jednej lub kilku informacji.
            Procedury uwierzytelniania dwustronnego Zakładamy, że użytkownik potrzebuje usług serwera.
            Bezpieczeństwo Uwierzytelnianie
            Baza danych składa się z plików. Plik bazy można podzielić na pliki danych i pliki dziennika transakcji.
            W plikach danych przechowywane są obiekty baz danych, takie jak tabele (wraz z danymi), indeksy czy procedury składowane. W plikach dziennika transakcji system zapisuje strony (w przypadku systemów SQL Server strona to blok 8 KB, ale można go zwiększyć) zawierające modyfikacje danych. Rozmieszczenie plików odgrywa znaczącą rolę w procesie tworzenia i optymalizacji bazy danych. Istnieje szereg zasad przydatnych w planowaniu fizycznej implementacji bazy danych. Zasady te to m.in.: Pliki dziennika transakcji należy umieszczać na innym dysku fizycznym niż pliki danych – w przypadku awarii jednego z dysków tracimy tylko część bazy. Tabele często występujące razem w złączeniach (ang. joins) należy umieszczać w osobnych plikach (grupach plików) na osobnych dyskach fizycznych – dzięki temu możliwe jest równoległe pobieranie danych z tych tabel. • Indeksy nieklastrowane należy umieszczać na innych dyskach fizycznych niż ich bazowe tabele – zyskujesz większą wydajność zapisu danych. Tabele często modyfikowane należy oddzielić fizycznie (umieścić na innym dysku) od tabel rzadko modyfikowanych – w przypadku większych baz danych upraszcza to proces wykonywania kopii zapasowych. W przypadku naprawdę dużych instancji bazy stosowane są dedykowane rozwiązania programowo-sprzętowe typu klastry z wydajnymi macierzami dyskowymi. Jednoczesne spełnienie wszystkich wymienionych punktów jest raczej niemożliwe, ale w idealnym przypadku oddzielenie dziennika transakcji od danych i maksymalne rozczłonkowanie danych pomiędzy tak wiele dysków, jak się da, byłoby rozwiązaniem dającym maksymalne bezpieczeństwo i wydajność bazy.

              Bezpieczeństwo jest ważne w każdym typie programu rozproszonego. Różne typy aplikacji wymagają różnych poziomów zabezpieczeń.
              Bezpieczeństwo jest ważne w każdym typie programu rozproszonego. Różne typy aplikacji wymagają różnych poziomów zabezpieczeń. Pierwszym zadaniem systemu zabezpieczeń jest uwierzytelnienie - czyli informacja kim jest osoba która się loguje i skąd program ma wiedzieć, że jest to naprawdę ta osoba. Uwierzytelnienie użytkownika wymaga jakiejś formy formy sprawdzania referencji, którymi legitymuje się użytkownik aplikacji. Jeżeli przedstawione przez użytkownika referencje zostaną przez serwer aplikacji uznane (serwer wie z kim ma do czynienia i jakie zasoby może udostępnić etmu użytkownikowi) wówczas aplikacja może wyświetlić odpowiednią stronę z zakresem uprawnień. Użytkownik, który nie zostanie uwierzytelniony nazywa się ANONIMOWY i kierowany jest on automatycznie do strony logowania lub może być przekierowany na wskazany portal klienta. System uwierzytelnienia jest bardzo trudnym i skomplikowanym procesem, dlatego nasza firma wykorzystuje sprawdzone metody jakie oferuje środowisko VisualStudio oraz ASP.Net. Środowisko to oferuje trzy rózne mechanizmy uwierzytelnienia: - Standardowe uwierzytelnianie WIndows z IIS - Forms - oparte o formularze - aplikacja wymaga, aby wszytskie moduły obsługujące żadania stron zawierały cookies wydane przez serwer. Jest to domyślne rozwiązanie naszych aplikacji. Próba dostępu użytkowników do zasobów zabezpieczonych bez cookies pwooduje auotmatyczne przekierowanie do strony logowania., która weryfikuje referencje wydające cookies. - Passport - rozwiązanie oprte na identyfikatorze użytkownika, ale cookies są wydawane przez serwis uwierzytelnienia Microsoft. Problem z pisaniem aplikacji internetowych nie leży w logice biznesowej, która znana jest od lat 90 tych, kiedy komputery klasy PC zaczęto wykorzystywać do prac biurowych w środowisku DOS. Logika nowych aplikacji biznesowych nie odbiega znacząco od tych z lat 90tych, jednak sam fakt implementowania aplikacji na różnych urządzeniach połączonych do internetu powodują zupełnie nową jakość problemów informatycznych do rozwiązania, a w szczególności bezpieczeństwo aplikacji internetowych. Internet ma charakter publiczny i niekontrolowany. programiści piszący aplikacje w latach 90tych, a w szczególności aplikację DOSowe, generalnie nie stosowali żadnych funkcji zabezpieczających, gdyż o ile komputer znajdował się w pomieszczeniu zamykanym na klucz, ich dane były stosunkowo bezpieczne. Aplikacje w wersjach internetowych wymagają zupełnie innego podejścia do kwestii bezpieczeństwa. Samodzielne pisanie procedur bezpieczeństwa jest wyjątkowo trudne i kosztowne (aplikacje zabezpieczeń wymagają: oprogramowania, debugowania, tetsowania, wdrażania, administrowania itp). Pracownicy w firmie przychodzą i odchodzą, to znów rodzi kolejne problemy bezpieczeństwa oraz wiedzy o tym jak to działa. Chyba nikt, z programistów piszących aplikacje biznesowe dla przedsiębiorstwnie jest ekspertem od algorytmów zabezpieczających, szyfrujących, uwierzytelniających, dlatego warto jest wykorzystać standardy oferowane przez Microsoft dostępne za pomocą platformy .Net (dot net) - zamiast wywarzać otwarte drzwi i samodzielnie próbować tworzyć rozwiązania.

                Najważniejszymi elementami infrastruktury magazynowej są regały i wózki do ich obsługi. Już na etapie wyposażania magazynu w regały i wózki trzeba myśleć o przyszłym, bezpiecznym ich użytkowaniu.

                Powszechnie uważa się, że podnoszenie poziomu bezpieczeństwa dokonuje się tylko poprzez stosowanie osłon i technicznych środków bezpieczeństwa oraz przestrzeganie przepisów BHP.

                Ze względu na funkcję magazynu, konieczne jest zapewnienie warunków, pozwalających na przechowywanie rozmaitych towarów w sposób bezpieczny, to znaczy z jednej strony pozwalający uniknąć zagrożenia dla osób postronnych lub innych niepożądanych następstw magazynowania (co ma szczególne znaczenie w odniesieniu do magazynów rozmaitych substancji niebezpiecznych), z drugiej strony zaś stanowiący dostateczne zabezpieczenie magazynowanych towarów przed uszkodzeniem lub kradzieżą.



                  Bezpieczeństwo platforma .NET Framework
                  Platforma programistyczna .NET stanowi pierwszą tak dużą zmianę w podejściu do programowania od czasu wprowadzenia w lipcu 1993 roku Win32 API wraz z systemem Windows NT 3.0. W odróżnieniu od Win32 API — które oferowało znacznie więcej niż Win16 API, ale obsługiwane było podobnymi narzędziami programistycznymi — platforma .NET zmienia podstawowe narzędzia i techniki wykorzystywane przez programistów.Wprowadzone zmiany ułatwiają tworzenie stabilnych, niezawodnych i wydajnych aplikacji dla systemu Windows, witryn internetowych pracujących na serwerze internetowych usług informacyjnych (IIS), a także usług internetowych XML Web Services.Jedną z najważniejszych zmian jest sposób wykonywania kodu. Każde z narzędzi zgodnych z platformą .NET kompiluje swój kod źródłowy do standardowego języka pośredniego Microsoft (Microsoft Intermediate Language — w skrócie MSIL). Tak przygotowany kod może być dystrybuowany jako gotowa aplikacja. Podczas pierwszego uruchomienia aplikacji na komputerze użytkownika końcowego, kod pośredni kompilowany jest przez wspólne środowisko uruchomieniowe CLR (Common Language Runtime) na kod maszynowy procesora zainstalowanego w komputerze. Umożliwia to pełne dopasowanie do możliwości maszyny i optymalizację kodu nie dla całej rodziny procesorów, a dla danego modelu procesora.Bezpieczeństwo jest ważne w każdym typie programu rozproszonego. Różne typy aplikacji wymagają różnych poziomów zabezpieczeń. Pierwszym zadaniem systemu zabezpieczeń jest uwierzytelnienie - czyli informacja kim jest osoba która się loguje i skąd program ma wiedzieć, że jest to naprawdę ta osoba. Uwierzytelnienie użytkownika wymaga jakiejś formy formy sprawdzania referencji, którymi legitymuje się użytkownik aplikacji. Jeżeli przedstawione przez użytkownika referencje zostaną przez serwer aplikacji uznane (serwer wie z kim ma do czynienia i jakie zasoby może udostępnić etmu użytkownikowi) wówczas aplikacja może wyświetlić odpowiednią stronę z zakresem uprawnień. Użytkownik, który nie zostanie uwierzytelniony nazywa się ANONIMOWY i kierowany jest on automatycznie do strony logowania lub może być przekierowany na wskazany portal klienta. System uwierzytelnienia jest bardzo trudnym i skomplikowanym procesem, dlatego nasza firma wykorzystuje sprawdzone metody jakie oferuje środowisko VisualStudio oraz ASP.Net. Środowisko to oferuje trzy rózne mechanizmy uwierzytelnienia: Standardowe uwierzytelnianie WIndows z IIS Forms - oparte o formularze - aplikacja wymaga, aby wszytskie moduły obsługujące żadania stron zawierały cookies wydane przez serwer. Jest to domyślne rozwiązanie naszych aplikacji. Próba dostępu użytkowników do zasobów zabezpieczonych bez cookies pwooduje auotmatyczne przekierowanie do strony logowania., która weryfikuje referencje wydające cookies. Passport - rozwiązanie oprte na identyfikatorze użytkownika, ale cookies są wydawane przez serwis uwierzytelnienia Microsoft. Problem z pisaniem aplikacji internetowych nie leży w logice biznesowej, która znana jest od lat 90 tych, kiedy komputery klasy PC zaczęto wykorzystywać do prac biurowych w środowisku DOS. Logika nowych aplikacji biznesowych nie odbiega znacząco od tych z lat 90tych, jednak sam fakt implementowania aplikacji na różnych urządzeniach połączonych do internetu powodują zupełnie nową jakość problemów informatycznych do rozwiązania, a w szczególności bezpieczeństwo aplikacji internetowych. Internet ma charakter publiczny i niekontrolowany. programiści piszący aplikacje w latach 90tych, a w szczególności aplikację DOSowe, generalnie nie stosowali żadnych funkcji zabezpieczających, gdyż o ile komputer znajdował się w pomieszczeniu zamykanym na klucz, ich dane były stosunkowo bezpieczne. Aplikacje w wersjach internetowych wymagają zupełnie innego podejścia do kwestii bezpieczeństwa. Samodzielne pisanie procedur bezpieczeństwa jest wyjątkowo trudne i kosztowne (aplikacje zabezpieczeń wymagają: oprogramowania, debugowania, tetsowania, wdrażania, administrowania itp). Pracownicy w firmie przychodzą i odchodzą, to znów rodzi kolejne problemy bezpieczeństwa oraz wiedzy o tym jak to działa. Chyba nikt, z programistów piszących aplikacje biznesowe dla przedsiębiorstwnie jest ekspertem od algorytmów zabezpieczających, szyfrujących, uwierzytelniających, dlatego warto jest wykorzystać standardy oferowane przez Microsoft dostępne za pomocą platformy .Net (dot net) - zamiast wywarzać otwarte drzwi i samodzielnie próbować tworzyć rozwiązania.

                  DEMO