Add SensitiveUrl to redact user secrets from endpoints (#2326)

## Issue Addressed

#2276 

## Proposed Changes

Add the `SensitiveUrl` struct which wraps `Url` and implements custom `Display` and `Debug` traits to redact user secrets from being logged in eth1 endpoints, beacon node endpoints and metrics.

## Additional Info

This also includes a small rewrite of the eth1 crate to make requests using `Url` instead of `&str`. 
Some error messages have also been changed to remove `Url` data.
This commit is contained in:
Mac L
2021-05-04 01:59:51 +00:00
parent 2ccb358d87
commit 4cc613d644
38 changed files with 362 additions and 143 deletions

20
Cargo.lock generated
View File

@@ -25,6 +25,7 @@ dependencies = [
"rand 0.7.3",
"rayon",
"safe_arith",
"sensitive_url",
"slashing_protection",
"slog",
"slog-async",
@@ -650,6 +651,7 @@ dependencies = [
"logging",
"node_test_rig",
"rand 0.7.3",
"sensitive_url",
"serde",
"slasher",
"slog",
@@ -1896,6 +1898,7 @@ dependencies = [
"merkle_proof",
"parking_lot",
"reqwest",
"sensitive_url",
"serde",
"serde_json",
"slog",
@@ -1942,6 +1945,7 @@ dependencies = [
"psutil",
"reqwest",
"ring",
"sensitive_url",
"serde",
"serde_json",
"serde_utils",
@@ -2514,6 +2518,7 @@ dependencies = [
"merkle_proof",
"parking_lot",
"rayon",
"sensitive_url",
"serde",
"serde_derive",
"slog",
@@ -2844,6 +2849,7 @@ dependencies = [
"lighthouse_version",
"network",
"parking_lot",
"sensitive_url",
"serde",
"slog",
"slot_clock",
@@ -3347,6 +3353,7 @@ dependencies = [
"log",
"rand 0.7.3",
"regex",
"sensitive_url",
"serde",
"serde_yaml",
"simple_logger",
@@ -4189,6 +4196,7 @@ dependencies = [
"futures 0.3.14",
"genesis",
"reqwest",
"sensitive_url",
"serde",
"tempfile",
"types",
@@ -5155,6 +5163,7 @@ dependencies = [
"rand 0.7.3",
"remote_signer_test",
"reqwest",
"sensitive_url",
"serde",
"tokio 1.5.0",
"types",
@@ -5171,6 +5180,7 @@ dependencies = [
"remote_signer_client",
"remote_signer_consumer",
"reqwest",
"sensitive_url",
"serde",
"serde_json",
"tempfile",
@@ -5499,6 +5509,14 @@ version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "sensitive_url"
version = "0.1.0"
dependencies = [
"serde",
"url",
]
[[package]]
name = "serde"
version = "1.0.125"
@@ -5714,6 +5732,7 @@ dependencies = [
"node_test_rig",
"parking_lot",
"rayon",
"sensitive_url",
"tokio 1.5.0",
"types",
"validator_client",
@@ -7052,6 +7071,7 @@ dependencies = [
"ring",
"safe_arith",
"scrypt",
"sensitive_url",
"serde",
"serde_derive",
"serde_json",