Z punktu widzenia bezpieczeństwa zależy to od tego, co jest rejestrowane. Jeśli NSLog
(lub inne rejestratory) zapisują poufne informacje, należy usunąć rejestrator w kodzie produkcyjnym.
Z punktu widzenia audytu audytor nie chce patrzeć na każde użycie, NSLog
aby upewnić się, że nie rejestruje poufnych informacji. On / ona po prostu powie ci, żebyś usunął rejestrator.
Pracuję z obiema grupami. Audytujemy kod, piszemy przewodniki po kodowaniu, itp. Nasz przewodnik wymaga wyłączenia logowania w kodzie produkcyjnym. Więc wewnętrzne zespoły wiedzą, żeby tego nie próbować;)
Odrzucimy również zewnętrzną aplikację, która loguje się w środowisku produkcyjnym, ponieważ nie chcemy zaakceptować ryzyka związanego z przypadkowym wyciekiem poufnych informacji. Nie obchodzi nas, co powie nam programista. Po prostu nie warto poświęcać nam czasu na badanie.
I pamiętaj, że definiujemy „wrażliwy”, a nie dewelopera;)
Postrzegam również aplikację, która wykonuje wiele operacji logowania, jako aplikację gotową do implodowania. Jest powód, dla którego rejestrowanie jest wykonywane / potrzebne, a zwykle nie jest to stabilne. Jest tam z wątkami „watchdog”, które ponownie uruchamiają zawieszone usługi.
Jeśli nigdy nie przeszedłeś przez przegląd architektury bezpieczeństwa (SecArch), to są rodzaje rzeczy, którym się przyglądamy.