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ż
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla