Udostępnij przez


Zagadnienia dotyczące zabezpieczeń SQLXML podstawowe

Poniżej przedstawiono wskazówki dotyczące zabezpieczeń, używanie SQLXML dla dostępu do danych.

  • Umożliwia uzyskanie dostępu do dostawca SQLXMLOLEDB StreamFlags Właściwość, która zezwala na ustawienie flagi wskazujące, jakie funkcje SQLXML powinna być włączona lub wyłączona dla każdego określonego wystąpienie. Ta właściwość służy do dostosowywania korzystania z SQLXML i upewnić się, czy włączone są tylko te składniki, które mają.Aby uzyskać więcej informacji zobaczDostawca SQLXMLOLEDB (SQLXML 4.0).

  • Gdy SQLXML błędy występują i są zwracane, mogą to być informacje dotyczące schemat bazy danych, takie jak nazwy tabela, nazwy kolumn lub informacje o typie.Należy zachować ostrożność podczas obsługi tych błędów, tak że informacje o sieci SQL Server Instalacja nie jest łatwo wykrywalne przez użytkowników, gdy go nie jest przeznaczony lub potrzebne.

  • Do wysłania aktualizacji albo kwerendy SQL ServerSQLXML ustawia nieograniczona ilość danych, które można wymieniać i nie działa wszelkie sprawdzania rozmiaru danych w ładunku SQLXML przed podjęciem próby przetworzenia go. Podczas opracowywania aplikacji za pomocą SQLXML jest obowiązek zapewnienia jest za mało pamięci w systemie do przetwarzania danych.Na przykład podczas badania danych z serwera, należy sprawdzić ma wystarczająco dużo miejsca w pamięci na klient je odbierać.Podobnie jeśli ładowania danych do serwera, należy sprawdzić, jest za mało dostępnej pamięci na serwerze, aby przetworzyć je i wystarczająca ilość wolnego miejsca przechowywania na serwerze w celu przechowywania danych.

  • SQLXML dynamicznie generuje. Transact-SQL kwerendy i aktualizacja poleceń i wysyła je do SQL Server do wykonania. Jest to jedyny sposób, w którym SQLXML wykonuje kwerendę i zaktualizowanie danych na serwerze.Wyniki będą odbierane jako strumień (XML) lub jako zestawu zestaw wierszy.

  • Podczas odbierania wyniki kwerendy, SQLXML Trwa żadne akcje na podstawie zawartości danych, które otrzymuje.Nie dodatkowe przetwarzanie odbywa się w zależności od typu lub zawartości danych.Dane nigdy nie jest traktowany jako kod umożliwiające wykonać akcji.

  • Podczas wykonywania szablony XML, SQLXML tłumaczy kwerendy XPath i DBObject zawartych w przesłanych szablonu do Transact-SQL polecenia, które następnie są wykonywane przed SQL Server. Te polecenia wpływają tylko kiedykolwiek istniejących danych.Polecenia wygenerowane przez SQLXML nigdy nie zmieni struktury bazy danych.Użytkownicy wydaje jawne poleceń, aby zmienić struktura bazy danych.Na przykład, umieszczając je w sql:query Blok szablonu.

  • Podczas wykonywania kwerendy DBObject i instrukcji wyrażenie XPath w plikach mapowania, SQLXML nie wpływa na dane w bazie danych w żaden sposób.

  • SQLXML może dokonywać zmian formatowania w danym dane, w zależności od różnic między XML i SQL Server modele danych. Na przykład format do określania czas różni się.SQLXML zostanie podjęta próba usunięcia rozbieżności.W rezultacie niektóre informacje precyzji mogą zostać utracone.

  • SQLXML ustawia limit nie czas potrzebny do przetwarzania danych.Przetwarzanie będzie kontynuowane, aż do chwili, kiedy wystąpi błąd lub przetwarzanie zostanie zakończone.

  • SQLXML nie zapisuje się do systemu plików.Jeśli użytkownicy chcesz zapisać dane są pobierane z bazy danych, ich tę należy wykonać przy ich kodu.

  • SQLXML zezwala użytkownikom na wykonać wszelkich kwerendy SQL, takie jak ich w bazie danych.Tę funkcję nigdy nie powinny się narażone na niezabezpieczonych lub niekontrolowanej urządzenie źródłowe, jak to zasadniczo jest otwieranie baza danych SQL bez świadczenia dla użytkowników.

  • Podczas wykonywania Updategrams, tłumaczy SQLXML updg:sync bloki na polecenia DELETE, UPDATE i INSERT przed SQL Server wystąpienie. Te polecenia wpływają tylko kiedykolwiek istniejących danych.Polecenia wygenerowane przez SQLXML nigdy nie wpływa na bazie danych.Użytkownicy wydaje jawne poleceń, aby zmienić struktura bazy danych.Na przykład, umieszczając je w sql:query Blok szablonu.

  • Podczas wykonywania DiffGrams, SQLXML tłumaczy w formacie DiffGram na polecenia DELETE, UPDATE i INSERT przed SQL Server wystąpienie. Te polecenia wpływają tylko kiedykolwiek istniejących danych.Polecenia wygenerowane przez SQLXML nigdy nie wpływa na bazie danych.Użytkownicy wydaje jawne poleceń, aby zmienić struktura bazy danych.Na przykład, umieszczając je w sql:query Blok szablonu.