rspec/rules/S106/csharp/rule.adoc

77 lines
1.3 KiB
Plaintext
Raw Normal View History

:language_std_outputs: Console
== Why is this an issue?
2020-06-30 10:16:44 +02:00
include::../description.adoc[]
=== Exceptions
The rule doesn't raise an issue for:
* Console Applications
* Calls in methods decorated with `[Conditional ("DEBUG")]`
* Calls included in DEBUG preprocessor branches (``++#if DEBUG++``)
=== Code examples
The following noncompliant code:
2020-06-30 10:16:44 +02:00
[source,csharp,diff-id=1,diff-type=noncompliant]
2020-06-30 10:16:44 +02:00
----
public class MyClass
2020-06-30 10:16:44 +02:00
{
private void DoSomething()
{
// ...
Console.WriteLine("My Message"); // Noncompliant
// ...
}
2020-06-30 10:16:44 +02:00
}
----
Could be replaced by:
2020-06-30 10:16:44 +02:00
[source,csharp,diff-id=1,diff-type=compliant]
----
public class MyClass
{
private readonly ILogger _logger;
// ...
private void DoSomething()
{
// ...
_logger.LogInformation("My Message");
// ...
}
}
----
2020-06-30 10:16:44 +02:00
== Resources
* https://owasp.org/Top10/A09_2021-Security_Logging_and_Monitoring_Failures/[OWASP Top 10 2021 Category A9] - Security Logging and Monitoring Failures
ifdef::env-github,rspecator-view[]
'''
== Implementation Specification
(visible only on this page)
include::../message.adoc[]
'''
== Comments And Links
(visible only on this page)
=== on 30 Aug 2018, 15:48:10 Nicolas Harraudeau wrote:
Previously RSPEC-2556
See Gendarme DisableDebuggingCodeRule
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]