Udostępnij za pośrednictwem


CA2103: Przejrzyj zabezpieczenia imperatywne

Pozycja Wartość
Ruleid CA2103
Kategoria Microsoft.Security
Zmiana powodująca niezgodność Kluczowa

Przyczyna

Metoda używa imperatywnych zabezpieczeń i może konstruować uprawnienia za pomocą informacji o stanie lub wartości zwrotnych, które można zmienić, dopóki żądanie jest aktywne.

Uwaga

Ta reguła została przestarzała. Aby uzyskać więcej informacji, zobacz Przestarzałe reguły.

Opis reguły

Zabezpieczenia imperatywne używają obiektów zarządzanych do określania uprawnień i akcji zabezpieczeń podczas wykonywania kodu w porównaniu z zabezpieczeniami deklaratywnymi, które używają atrybutów do przechowywania uprawnień i akcji w metadanych. Zabezpieczenia imperatywne są elastyczne, ponieważ można ustawić stan obiektu uprawnień i wybrać akcje zabezpieczeń przy użyciu informacji, które nie są dostępne do czasu wykonywania. Wraz z tym elastycznością wiąże się ryzyko, że informacje w czasie wykonywania używane do określenia stanu uprawnienia nie pozostają niezmienione, o ile akcja jest w mocy.

Należy używać zabezpieczeń deklaracyjnych wszędzie, gdzie to możliwe. Wymagania deklaratywne są łatwiejsze do zrozumienia.

Jak naprawić naruszenia

Przejrzyj wymagania dotyczące zabezpieczeń imperatywnych, aby upewnić się, że stan uprawnienia nie zależy od informacji, które mogą ulec zmianie, o ile uprawnienia są używane.

Kiedy pomijać ostrzeżenia

Można bezpiecznie pominąć ostrzeżenie z tej reguły, jeśli uprawnienie nie polega na zmianie danych. Lepiej jednak zmienić zapotrzebowanie imperatywne na jego odpowiednik deklaratywny.

Zobacz też