From c900022697b79137a789c3f44784bf657337e20e Mon Sep 17 00:00:00 2001 From: jon4hz Date: Fri, 10 Mar 2023 21:19:56 +0100 Subject: [PATCH 01/18] feat: truncate secret value if terminal is too small --- cli/go.mod | 4 +- cli/go.sum | 7 +++- cli/packages/cmd/secrets.go | 6 +-- cli/packages/visualize/secrets.go | 6 +-- cli/packages/visualize/visualize.go | 64 ++++++++++++++++++++++++++++- 5 files changed, 77 insertions(+), 10 deletions(-) diff --git a/cli/go.mod b/cli/go.mod index cfa1ede11..d1aadd208 100644 --- a/cli/go.mod +++ b/cli/go.mod @@ -4,7 +4,10 @@ go 1.19 require ( github.com/99designs/keyring v1.2.2 + github.com/mattn/go-isatty v0.0.14 + github.com/muesli/ansi v0.0.0-20221106050444-61f0cd9a192a github.com/muesli/mango-cobra v1.2.0 + github.com/muesli/reflow v0.3.0 github.com/muesli/roff v0.1.0 github.com/spf13/cobra v1.6.1 golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d @@ -22,7 +25,6 @@ require ( github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c // indirect github.com/mattn/go-colorable v0.1.9 // indirect - github.com/mattn/go-isatty v0.0.14 // indirect github.com/mattn/go-runewidth v0.0.14 // indirect github.com/mitchellh/mapstructure v1.3.3 // indirect github.com/mtibben/percent v0.2.1 // indirect diff --git a/cli/go.sum b/cli/go.sum index dc97287db..2b514ea6e 100644 --- a/cli/go.sum +++ b/cli/go.sum @@ -56,6 +56,7 @@ github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= +github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU= github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mitchellh/mapstructure v1.3.3 h1:SzB1nHZ2Xi+17FP0zVQBHIZqvwRN9408fJO8h+eeNA8= @@ -63,12 +64,16 @@ github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RR github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= github.com/mtibben/percent v0.2.1 h1:5gssi8Nqo8QU/r2pynCm+hBQHpkB/uNK7BJCFogWdzs= github.com/mtibben/percent v0.2.1/go.mod h1:KG9uO+SZkUp+VkRHsCdYQV3XSZrrSpR3O9ibNBTZrns= +github.com/muesli/ansi v0.0.0-20221106050444-61f0cd9a192a h1:jlDOeO5TU0pYlbc/y6PFguab5IjANI0Knrpg3u/ton4= +github.com/muesli/ansi v0.0.0-20221106050444-61f0cd9a192a/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= github.com/muesli/mango v0.1.0 h1:DZQK45d2gGbql1arsYA4vfg4d7I9Hfx5rX/GCmzsAvI= github.com/muesli/mango v0.1.0/go.mod h1:5XFpbC8jY5UUv89YQciiXNlbi+iJgt29VDC5xbzrLL4= github.com/muesli/mango-cobra v1.2.0 h1:DQvjzAM0PMZr85Iv9LIMaYISpTOliMEg+uMFtNbYvWg= github.com/muesli/mango-cobra v1.2.0/go.mod h1:vMJL54QytZAJhCT13LPVDfkvCUJ5/4jNUKF/8NC2UjA= github.com/muesli/mango-pflag v0.1.0 h1:UADqbYgpUyRoBja3g6LUL+3LErjpsOwaC9ywvBWe7Sg= github.com/muesli/mango-pflag v0.1.0/go.mod h1:YEQomTxaCUp8PrbhFh10UfbhbQrM/xJ4i2PB8VTLLW0= +github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= +github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= github.com/muesli/roff v0.1.0 h1:YD0lalCotmYuF5HhZliKWlIx7IEhiXeSfq7hNjFqGF8= github.com/muesli/roff v0.1.0/go.mod h1:pjAHQM9hdUUwm/krAfrLGgJkXJ+YuhtsfZ42kieB2Ig= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= @@ -78,6 +83,7 @@ github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -106,7 +112,6 @@ go.mongodb.org/mongo-driver v1.10.0/go.mod h1:wsihk0Kdgv8Kqu1Anit4sfK+22vSFbUrAV golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d h1:sK3txAijHtOK88l68nt020reeT1ZdKLIYetKl95FzVY= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/net v0.0.0-20211029224645-99673261e6eb/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= diff --git a/cli/packages/cmd/secrets.go b/cli/packages/cmd/secrets.go index 95224b24e..69a4539a6 100644 --- a/cli/packages/cmd/secrets.go +++ b/cli/packages/cmd/secrets.go @@ -263,10 +263,10 @@ var secretsSetCmd = &cobra.Command{ } // Print secret operations - headers := []string{"SECRET NAME", "SECRET VALUE", "STATUS"} - rows := [][]string{} + headers := [...]string{"SECRET NAME", "SECRET VALUE", "STATUS"} + rows := [][3]string{} for _, secretOperation := range secretOperations { - rows = append(rows, []string{secretOperation.SecretKey, secretOperation.SecretValue, secretOperation.SecretOperation}) + rows = append(rows, [...]string{secretOperation.SecretKey, secretOperation.SecretValue, secretOperation.SecretOperation}) } visualize.Table(headers, rows) diff --git a/cli/packages/visualize/secrets.go b/cli/packages/visualize/secrets.go index e9ac5d297..7be41020d 100644 --- a/cli/packages/visualize/secrets.go +++ b/cli/packages/visualize/secrets.go @@ -3,12 +3,12 @@ package visualize import "github.com/Infisical/infisical-merge/packages/models" func PrintAllSecretDetails(secrets []models.SingleEnvironmentVariable) { - rows := [][]string{} + rows := [][3]string{} for _, secret := range secrets { - rows = append(rows, []string{secret.Key, secret.Value, secret.Type}) + rows = append(rows, [...]string{secret.Key, secret.Value, secret.Type}) } - headers := []string{"SECRET NAME", "SECRET VALUE", "SECRET TYPE"} + headers := [...]string{"SECRET NAME", "SECRET VALUE", "SECRET TYPE"} Table(headers, rows) } diff --git a/cli/packages/visualize/visualize.go b/cli/packages/visualize/visualize.go index 5658197ee..6ec762c9b 100644 --- a/cli/packages/visualize/visualize.go +++ b/cli/packages/visualize/visualize.go @@ -2,8 +2,14 @@ package visualize import ( "os" + "strings" "github.com/jedib0t/go-pretty/table" + "github.com/mattn/go-isatty" + "github.com/muesli/ansi" + "github.com/muesli/reflow/truncate" + log "github.com/sirupsen/logrus" + "golang.org/x/term" ) type TableOptions struct { @@ -16,8 +22,33 @@ type TableOptions struct { // } // } +const ( + // combined width of the table borders and padding + borderWidths = 10 + // char to indicate that a string has been truncated + ellipsis = "…" +) + // Given headers and rows, this function will print out a table -func Table(headers []string, rows [][]string) { +func Table(headers [3]string, rows [][3]string) { + // if we're not in a terminal, don't truncate the secret value + shouldTruncate := isatty.IsTerminal(os.Stdout.Fd()) || isatty.IsCygwinTerminal(os.Stdout.Fd()) + + width, _, err := term.GetSize(int(os.Stdout.Fd())) + if err != nil { + if shouldTruncate { + log.Errorf("error getting terminal size: %s", err) + } else { + log.Debug(err) + } + } + + longestSecretName, longestSecretType := getLongestValues(append(rows, headers)) + availableWidth := width - longestSecretName - longestSecretType - borderWidths + if availableWidth < 0 { + availableWidth = 0 + } + t := table.NewWriter() t.SetOutputMirror(os.Stdout) t.SetStyle(table.StyleLight) @@ -35,7 +66,11 @@ func Table(headers []string, rows [][]string) { t.AppendHeader(tableHeaders) for _, row := range rows { tableRow := table.Row{} - for _, val := range row { + for i, val := range row { + // only truncate the first column (secret value) + if i == 1 && stringWidth(val) > availableWidth && shouldTruncate { + val = truncate.StringWithTail(val, uint(availableWidth), ellipsis) + } tableRow = append(tableRow, val) } t.AppendRow(tableRow) @@ -43,3 +78,28 @@ func Table(headers []string, rows [][]string) { t.Render() } + +// getLongestValues returns the length of the longest secret name and type from all rows (including the header). +func getLongestValues(rows [][3]string) (longestSecretName, longestSecretType int) { + for _, row := range rows { + if len(row[0]) > longestSecretName { + longestSecretName = stringWidth(row[0]) + } + if len(row[2]) > longestSecretType { + longestSecretType = stringWidth(row[2]) + } + } + return +} + +// stringWidth returns the width of a string. +// ANSI escape sequences are ignored and double-width characters are handled correctly. +func stringWidth(str string) (width int) { + for _, l := range strings.Split(str, "\n") { + w := ansi.PrintableRuneWidth(l) + if w > width { + width = w + } + } + return width +} From fc8023b9418629c31b3e83b72f33816b5f9219cb Mon Sep 17 00:00:00 2001 From: jon4hz Date: Tue, 14 Mar 2023 17:02:12 +0100 Subject: [PATCH 02/18] fix: dont get size of cygwin terminals --- cli/packages/visualize/visualize.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cli/packages/visualize/visualize.go b/cli/packages/visualize/visualize.go index 6ec762c9b..8599f2405 100644 --- a/cli/packages/visualize/visualize.go +++ b/cli/packages/visualize/visualize.go @@ -31,9 +31,11 @@ const ( // Given headers and rows, this function will print out a table func Table(headers [3]string, rows [][3]string) { - // if we're not in a terminal, don't truncate the secret value - shouldTruncate := isatty.IsTerminal(os.Stdout.Fd()) || isatty.IsCygwinTerminal(os.Stdout.Fd()) + // if we're not in a terminal or cygwin terminal, don't truncate the secret value + shouldTruncate := isatty.IsTerminal(os.Stdout.Fd()) + // This will return an error if we're not in a terminal or + // if the terminal is a cygwin terminal like Git Bash. width, _, err := term.GetSize(int(os.Stdout.Fd())) if err != nil { if shouldTruncate { From 30472505ce5cc25fbe9d33e3b9835a46a023b232 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Mon, 20 Mar 2023 19:12:42 +0000 Subject: [PATCH 03/18] fix: upgrade @sentry/tracing from 7.38.0 to 7.39.0 Snyk has created this PR to upgrade @sentry/tracing from 7.38.0 to 7.39.0. See this package in npm: https://www.npmjs.com/package/@sentry/tracing See this project in Snyk: https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr --- backend/package-lock.json | 83 +++++++++++++++++++++++++++++++++------ backend/package.json | 2 +- 2 files changed, 71 insertions(+), 14 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index 1eb1dbc66..e44ca459d 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -13,7 +13,7 @@ "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", "@sentry/node": "^7.14.0", - "@sentry/tracing": "^7.19.0", + "@sentry/tracing": "^7.39.0", "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", "await-to-js": "^3.0.0", @@ -2822,13 +2822,46 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@sentry/tracing": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.38.0.tgz", - "integrity": "sha512-ejXJp8oOT64MVtBzqdECUUaNzKbpu25St8Klub1i4Sm7xO+ZjDQDI4TIHvWojZvtkwQ3F4jcsCclc8KuyJunyQ==", + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.39.0.tgz", + "integrity": "sha512-bSRdUMzp/n54J+Qf4hHC4WVvdv4vZEv3NEbNNsnIZNAhnVAq6QB9VzsGRJZ12PqxJU3StDuqLiZFVOmGxETCkQ==", "dependencies": { - "@sentry/core": "7.38.0", - "@sentry/types": "7.38.0", - "@sentry/utils": "7.38.0", + "@sentry/core": "7.39.0", + "@sentry/types": "7.39.0", + "@sentry/utils": "7.39.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@sentry/tracing/node_modules/@sentry/core": { + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.39.0.tgz", + "integrity": "sha512-45WJIcWWCQnZ8zhHtcrkJjQ4YydmzMWY4pmRuBG7Qp+zrCT6ISoyODcjY+SCHFdvXkiYFi8+bFZa1qG3YQnnYw==", + "dependencies": { + "@sentry/types": "7.39.0", + "@sentry/utils": "7.39.0", + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@sentry/tracing/node_modules/@sentry/types": { + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.39.0.tgz", + "integrity": "sha512-5Y83Y8O3dT5zT2jTKEIPMcpn5lUm05KRMaCXuw0sRsv4r9TbBUKeqiSU1LjowT8rB/XNy8m7DHav8+NmogPaJw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@sentry/tracing/node_modules/@sentry/utils": { + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.39.0.tgz", + "integrity": "sha512-/ZxlPgm1mGgmuMckCTc9iyqDuFTEYNEoMB53IjVFz8ann+37OiWB7Py/QV1rEEsv3xKrGbA8thhRhV9E1sjTlQ==", + "dependencies": { + "@sentry/types": "7.39.0", "tslib": "^1.9.3" }, "engines": { @@ -14382,16 +14415,40 @@ } }, "@sentry/tracing": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.38.0.tgz", - "integrity": "sha512-ejXJp8oOT64MVtBzqdECUUaNzKbpu25St8Klub1i4Sm7xO+ZjDQDI4TIHvWojZvtkwQ3F4jcsCclc8KuyJunyQ==", + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-7.39.0.tgz", + "integrity": "sha512-bSRdUMzp/n54J+Qf4hHC4WVvdv4vZEv3NEbNNsnIZNAhnVAq6QB9VzsGRJZ12PqxJU3StDuqLiZFVOmGxETCkQ==", "requires": { - "@sentry/core": "7.38.0", - "@sentry/types": "7.38.0", - "@sentry/utils": "7.38.0", + "@sentry/core": "7.39.0", + "@sentry/types": "7.39.0", + "@sentry/utils": "7.39.0", "tslib": "^1.9.3" }, "dependencies": { + "@sentry/core": { + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.39.0.tgz", + "integrity": "sha512-45WJIcWWCQnZ8zhHtcrkJjQ4YydmzMWY4pmRuBG7Qp+zrCT6ISoyODcjY+SCHFdvXkiYFi8+bFZa1qG3YQnnYw==", + "requires": { + "@sentry/types": "7.39.0", + "@sentry/utils": "7.39.0", + "tslib": "^1.9.3" + } + }, + "@sentry/types": { + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.39.0.tgz", + "integrity": "sha512-5Y83Y8O3dT5zT2jTKEIPMcpn5lUm05KRMaCXuw0sRsv4r9TbBUKeqiSU1LjowT8rB/XNy8m7DHav8+NmogPaJw==" + }, + "@sentry/utils": { + "version": "7.39.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.39.0.tgz", + "integrity": "sha512-/ZxlPgm1mGgmuMckCTc9iyqDuFTEYNEoMB53IjVFz8ann+37OiWB7Py/QV1rEEsv3xKrGbA8thhRhV9E1sjTlQ==", + "requires": { + "@sentry/types": "7.39.0", + "tslib": "^1.9.3" + } + }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", diff --git a/backend/package.json b/backend/package.json index f24ef80fa..f94c3a5e8 100644 --- a/backend/package.json +++ b/backend/package.json @@ -4,7 +4,7 @@ "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", "@sentry/node": "^7.14.0", - "@sentry/tracing": "^7.19.0", + "@sentry/tracing": "^7.39.0", "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", "await-to-js": "^3.0.0", From 5ec1a1eedf80b55f86e726afbd9da276862361c6 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Tue, 21 Mar 2023 18:17:28 +0000 Subject: [PATCH 04/18] fix: upgrade aws-sdk from 2.1323.0 to 2.1324.0 Snyk has created this PR to upgrade aws-sdk from 2.1323.0 to 2.1324.0. See this package in npm: https://www.npmjs.com/package/aws-sdk See this project in Snyk: https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr --- backend/package-lock.json | 14 +++++++------- backend/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index b575c65c8..8ef80b976 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -17,7 +17,7 @@ "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", "await-to-js": "^3.0.0", - "aws-sdk": "^2.1311.0", + "aws-sdk": "^2.1324.0", "axios": "^1.1.3", "axios-retry": "^3.4.0", "bcrypt": "^5.1.0", @@ -3874,9 +3874,9 @@ } }, "node_modules/aws-sdk": { - "version": "2.1323.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1323.0.tgz", - "integrity": "sha512-GoLwk2SuG9A6eWgc1mGmm548dklheDmkeptHRw2RhCvq2GZqlc4AzStFUjUURy4O4NQmd2ZiQIoeseue4RwurA==", + "version": "2.1324.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1324.0.tgz", + "integrity": "sha512-7T9Jn6qtzCANdqRcdhxZ9Fx31/U+h/VPFxEU3+sFEnC7WtGtRlgmsJOY2lIdFKRXkHYT3Jw5MqDyjnb/i1QqbA==", "dependencies": { "buffer": "4.9.2", "events": "1.1.1", @@ -15226,9 +15226,9 @@ "integrity": "sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g==" }, "aws-sdk": { - "version": "2.1323.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1323.0.tgz", - "integrity": "sha512-GoLwk2SuG9A6eWgc1mGmm548dklheDmkeptHRw2RhCvq2GZqlc4AzStFUjUURy4O4NQmd2ZiQIoeseue4RwurA==", + "version": "2.1324.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1324.0.tgz", + "integrity": "sha512-7T9Jn6qtzCANdqRcdhxZ9Fx31/U+h/VPFxEU3+sFEnC7WtGtRlgmsJOY2lIdFKRXkHYT3Jw5MqDyjnb/i1QqbA==", "requires": { "buffer": "4.9.2", "events": "1.1.1", diff --git a/backend/package.json b/backend/package.json index 3d36797a5..cb97bf9bc 100644 --- a/backend/package.json +++ b/backend/package.json @@ -8,7 +8,7 @@ "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", "await-to-js": "^3.0.0", - "aws-sdk": "^2.1311.0", + "aws-sdk": "^2.1324.0", "axios": "^1.1.3", "axios-retry": "^3.4.0", "bcrypt": "^5.1.0", From 3a858e7cd63b3129f9e5ca916d1a3a042a206e82 Mon Sep 17 00:00:00 2001 From: Daeyeol Ryu Date: Wed, 22 Mar 2023 11:51:18 +0900 Subject: [PATCH 05/18] Fixed broken docs link environment variables link are broken in self-hosting overview doc. --- docs/self-hosting/overview.mdx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/self-hosting/overview.mdx b/docs/self-hosting/overview.mdx index 216b02d0e..f149f9663 100644 --- a/docs/self-hosting/overview.mdx +++ b/docs/self-hosting/overview.mdx @@ -38,7 +38,7 @@ Self-hosted Infisical allows you to maintain your sensitive information within y #### 1. Fill our environment variables Before you can deploy the Helm chart, you must fill out the required environment variables. To do so, please copy the below file to a `.yaml` file. - Refer to the available [environment variables](../../self-hosting/configuration/envars) to learn more + Refer to the available [environment variables](/self-hosting/configuration/envars) to learn more [View all available Helm chart values parameters](https://github.com/Infisical/infisical/tree/main/helm-charts/infisical) @@ -178,7 +178,7 @@ Self-hosted Infisical allows you to maintain your sensitive information within y mkdir nginx && wget -O ./nginx/default.conf https://raw.githubusercontent.com/Infisical/infisical/main/nginx/default.dev.conf ``` - 3. Tweak the `.env` according to your preferences. Refer to the available [environment variables](../../self-hosting/configuration/envars) + 3. Tweak the `.env` according to your preferences. Refer to the available [environment variables](/self-hosting/configuration/envars) ```bash # update environment variables like mongo login @@ -195,4 +195,4 @@ Self-hosted Infisical allows you to maintain your sensitive information within y 5. Your Infisical installation is complete and should be running on [http://localhost:80](http://localhost:80). Please note that the containers are not exposed to the internet and only bind to the localhost. It's up to you to configure a firewall, SSL certificates, and implement any additional security measures. - \ No newline at end of file + From 94b18e6fc4f0f7c01533a4ba311e045825491853 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Wed, 22 Mar 2023 18:02:16 +0000 Subject: [PATCH 06/18] fix: upgrade @aws-sdk/client-secrets-manager from 3.279.0 to 3.281.0 Snyk has created this PR to upgrade @aws-sdk/client-secrets-manager from 3.279.0 to 3.281.0. See this package in npm: https://www.npmjs.com/package/@aws-sdk/client-secrets-manager See this project in Snyk: https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr --- backend/package-lock.json | 417 +++++++++++++++++++++++++++++++++++++- backend/package.json | 2 +- 2 files changed, 407 insertions(+), 12 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index b575c65c8..4cfd07eda 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -9,7 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { - "@aws-sdk/client-secrets-manager": "^3.267.0", + "@aws-sdk/client-secrets-manager": "^3.281.0", "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", "@sentry/node": "^7.39.0", @@ -232,15 +232,15 @@ } }, "node_modules/@aws-sdk/client-secrets-manager": { - "version": "3.279.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.279.0.tgz", - "integrity": "sha512-1cEXfqDUiS44DSXueb4QhHKa1K9WVWP/FqxYUB11xV0p5jElX88JVHyNPK/XsVbh9S6nS/MGPBIDbVA2y/mt5g==", + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.281.0.tgz", + "integrity": "sha512-vL+LygNDoCja/47pFwSnI3tCWfy5SGHlz6C1whcszmfl81gXyuHNlAK8RXVRiKhnD11zmCsHJhZyYSfTz5RErQ==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.279.0", + "@aws-sdk/client-sts": "3.281.0", "@aws-sdk/config-resolver": "3.272.0", - "@aws-sdk/credential-provider-node": "3.279.0", + "@aws-sdk/credential-provider-node": "3.281.0", "@aws-sdk/fetch-http-handler": "3.272.0", "@aws-sdk/hash-node": "3.272.0", "@aws-sdk/invalid-dependency": "3.272.0", @@ -277,10 +277,211 @@ "node": ">=14.0.0" } }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.281.0.tgz", + "integrity": "sha512-3RvO5zClQhu37w9VMLoHPGk58S3y8Spb7XX8rW51bm5TUglYQskQ0X2VLEUW/7ZGx/peokHws9Z9+w5yGq5sdA==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.278.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.279.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.279.0", + "@aws-sdk/util-defaults-mode-node": "3.279.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.281.0.tgz", + "integrity": "sha512-P6zf9pDuxApVoCYStAg7L8BU9AcWI8PxfLSX4r2WnmcQropxzPJ3op1j9nvbwwBDMFWephijVY4AVp8MqPcPyg==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.278.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.279.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.279.0", + "@aws-sdk/util-defaults-mode-node": "3.279.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/client-sts": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.281.0.tgz", + "integrity": "sha512-w8QomyhCVEArRcXgOkjbofiS/PLEKWRAyYBovjMS1cGhns2ZYJXFgHNgr3VGE54TghUc5dR1CqKuBKKM4ThrgA==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.281.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.278.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-sts": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.279.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.279.0", + "@aws-sdk/util-defaults-mode-node": "3.279.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "fast-xml-parser": "4.1.2", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.281.0.tgz", + "integrity": "sha512-H99nhMhHImQKgNhHKYc6usTS6UK8KzCcVGpILLVTuP97YlrYAMFAVstA3Xk6mZ28JAbHVXvI6vJjkMNOzCSKCA==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.281.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.281.0.tgz", + "integrity": "sha512-jhddd+lJp8G8hBJ+6glmXjfWJT3nxiE1aliH3fBC4RR3D+1kRXc99Xg6mbUb8bm+GrVZ4gzfiqSgg+ByKjd7xA==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.281.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.281.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.281.0.tgz", + "integrity": "sha512-IqJnpXuLpJYoSCf/Rt66/CPVTjfkam3z9+ZvlQJV+VbK+vGj276qEtTmSN3XPZZgF1XbWptvkzIWDszLhHiZmg==", + "dependencies": { + "@aws-sdk/client-sso": "3.281.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/token-providers": "3.281.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-secrets-manager/node_modules/@aws-sdk/token-providers": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.281.0.tgz", + "integrity": "sha512-36Vg/F6Edm7qdjcTeNVON+sK2edgHhmhTtAEjWcuUk5AX/Et+Ate/A2N8HD3nxwlAcgidfnBC9SHYJatbhcEnQ==", + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.281.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@aws-sdk/client-sso": { "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.279.0.tgz", "integrity": "sha512-599Y5wOrkpjD6p0BTs0X4+Ge9O7jlAPJ2ttI9lfhT2/UEZyqoJHajJs1pMJV75oeZklPOBi8G9jnZcMVJgRpvQ==", + "optional": true, "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", @@ -323,6 +524,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.279.0.tgz", "integrity": "sha512-tC9xKGo3z/HQbJDMvaUrnBSSRX7sOX2YUA2OpJ3T1TTfylLTO70OKjg1G4OMFNiPpJsHonwD7Iud+rnMnUKI0g==", + "optional": true, "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", @@ -365,6 +567,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.279.0.tgz", "integrity": "sha512-y/cI5Gg5WWqmSSDQftCT26wOLu0HSuPY1u6Q4Q97FBIfRC3hYztjYdUDHuTu6qPPT+tdsnWOUy2tr3qamVSQ4g==", + "optional": true, "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", @@ -469,6 +672,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.279.0.tgz", "integrity": "sha512-FCpr3/khMTb2pWLMC138wU7HzcpkrjejrBNfCJSUu7Emxm039UMLjT2JObnRKxidKlz58oYBRayVIbBYRWREcg==", + "optional": true, "dependencies": { "@aws-sdk/credential-provider-env": "3.272.0", "@aws-sdk/credential-provider-imds": "3.272.0", @@ -488,6 +692,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.279.0.tgz", "integrity": "sha512-7D8ETopCt3H+x2BEPMEhzc4dcNtSK7umnRdgfiTGRjcQSVPh5Whq/tDIAtNj2D+PmLgu3e+Hk7jrXkaMCDlxMw==", + "optional": true, "dependencies": { "@aws-sdk/credential-provider-env": "3.272.0", "@aws-sdk/credential-provider-imds": "3.272.0", @@ -522,6 +727,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.279.0.tgz", "integrity": "sha512-u8ZHz9Sv7sAv2vllyzcdgcO1pC5pa2UuoYKfz9J8hqLHc8VJYtYQ6WJvi4GoA55VDPk87pyVYz9t6ATntsukaw==", + "optional": true, "dependencies": { "@aws-sdk/client-sso": "3.279.0", "@aws-sdk/property-provider": "3.272.0", @@ -905,6 +1111,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.279.0.tgz", "integrity": "sha512-bsUlZSizTXZ8Pehdatcioi8VphxYn7fRjo5L083peOvBjoL+9WSGyP74PLrFLNwA35QxddwOqgnpQZoE1heuPQ==", + "optional": true, "dependencies": { "@aws-sdk/client-sso-oidc": "3.279.0", "@aws-sdk/property-provider": "3.272.0", @@ -12423,15 +12630,15 @@ } }, "@aws-sdk/client-secrets-manager": { - "version": "3.279.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.279.0.tgz", - "integrity": "sha512-1cEXfqDUiS44DSXueb4QhHKa1K9WVWP/FqxYUB11xV0p5jElX88JVHyNPK/XsVbh9S6nS/MGPBIDbVA2y/mt5g==", + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.281.0.tgz", + "integrity": "sha512-vL+LygNDoCja/47pFwSnI3tCWfy5SGHlz6C1whcszmfl81gXyuHNlAK8RXVRiKhnD11zmCsHJhZyYSfTz5RErQ==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.279.0", + "@aws-sdk/client-sts": "3.281.0", "@aws-sdk/config-resolver": "3.272.0", - "@aws-sdk/credential-provider-node": "3.279.0", + "@aws-sdk/credential-provider-node": "3.281.0", "@aws-sdk/fetch-http-handler": "3.272.0", "@aws-sdk/hash-node": "3.272.0", "@aws-sdk/invalid-dependency": "3.272.0", @@ -12463,12 +12670,194 @@ "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1", "uuid": "^8.3.2" + }, + "dependencies": { + "@aws-sdk/client-sso": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.281.0.tgz", + "integrity": "sha512-3RvO5zClQhu37w9VMLoHPGk58S3y8Spb7XX8rW51bm5TUglYQskQ0X2VLEUW/7ZGx/peokHws9Z9+w5yGq5sdA==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.278.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.279.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.279.0", + "@aws-sdk/util-defaults-mode-node": "3.279.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.281.0.tgz", + "integrity": "sha512-P6zf9pDuxApVoCYStAg7L8BU9AcWI8PxfLSX4r2WnmcQropxzPJ3op1j9nvbwwBDMFWephijVY4AVp8MqPcPyg==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.278.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.279.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.279.0", + "@aws-sdk/util-defaults-mode-node": "3.279.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.281.0.tgz", + "integrity": "sha512-w8QomyhCVEArRcXgOkjbofiS/PLEKWRAyYBovjMS1cGhns2ZYJXFgHNgr3VGE54TghUc5dR1CqKuBKKM4ThrgA==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.281.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.278.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-sts": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.279.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.279.0", + "@aws-sdk/util-defaults-mode-node": "3.279.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "fast-xml-parser": "4.1.2", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.281.0.tgz", + "integrity": "sha512-H99nhMhHImQKgNhHKYc6usTS6UK8KzCcVGpILLVTuP97YlrYAMFAVstA3Xk6mZ28JAbHVXvI6vJjkMNOzCSKCA==", + "requires": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.281.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.281.0.tgz", + "integrity": "sha512-jhddd+lJp8G8hBJ+6glmXjfWJT3nxiE1aliH3fBC4RR3D+1kRXc99Xg6mbUb8bm+GrVZ4gzfiqSgg+ByKjd7xA==", + "requires": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.281.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.281.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.281.0.tgz", + "integrity": "sha512-IqJnpXuLpJYoSCf/Rt66/CPVTjfkam3z9+ZvlQJV+VbK+vGj276qEtTmSN3XPZZgF1XbWptvkzIWDszLhHiZmg==", + "requires": { + "@aws-sdk/client-sso": "3.281.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/token-providers": "3.281.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.281.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.281.0.tgz", + "integrity": "sha512-36Vg/F6Edm7qdjcTeNVON+sK2edgHhmhTtAEjWcuUk5AX/Et+Ate/A2N8HD3nxwlAcgidfnBC9SHYJatbhcEnQ==", + "requires": { + "@aws-sdk/client-sso-oidc": "3.281.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + } } }, "@aws-sdk/client-sso": { "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.279.0.tgz", "integrity": "sha512-599Y5wOrkpjD6p0BTs0X4+Ge9O7jlAPJ2ttI9lfhT2/UEZyqoJHajJs1pMJV75oeZklPOBi8G9jnZcMVJgRpvQ==", + "optional": true, "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", @@ -12508,6 +12897,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.279.0.tgz", "integrity": "sha512-tC9xKGo3z/HQbJDMvaUrnBSSRX7sOX2YUA2OpJ3T1TTfylLTO70OKjg1G4OMFNiPpJsHonwD7Iud+rnMnUKI0g==", + "optional": true, "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", @@ -12547,6 +12937,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.279.0.tgz", "integrity": "sha512-y/cI5Gg5WWqmSSDQftCT26wOLu0HSuPY1u6Q4Q97FBIfRC3hYztjYdUDHuTu6qPPT+tdsnWOUy2tr3qamVSQ4g==", + "optional": true, "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", @@ -12636,6 +13027,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.279.0.tgz", "integrity": "sha512-FCpr3/khMTb2pWLMC138wU7HzcpkrjejrBNfCJSUu7Emxm039UMLjT2JObnRKxidKlz58oYBRayVIbBYRWREcg==", + "optional": true, "requires": { "@aws-sdk/credential-provider-env": "3.272.0", "@aws-sdk/credential-provider-imds": "3.272.0", @@ -12652,6 +13044,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.279.0.tgz", "integrity": "sha512-7D8ETopCt3H+x2BEPMEhzc4dcNtSK7umnRdgfiTGRjcQSVPh5Whq/tDIAtNj2D+PmLgu3e+Hk7jrXkaMCDlxMw==", + "optional": true, "requires": { "@aws-sdk/credential-provider-env": "3.272.0", "@aws-sdk/credential-provider-imds": "3.272.0", @@ -12680,6 +13073,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.279.0.tgz", "integrity": "sha512-u8ZHz9Sv7sAv2vllyzcdgcO1pC5pa2UuoYKfz9J8hqLHc8VJYtYQ6WJvi4GoA55VDPk87pyVYz9t6ATntsukaw==", + "optional": true, "requires": { "@aws-sdk/client-sso": "3.279.0", "@aws-sdk/property-provider": "3.272.0", @@ -12985,6 +13379,7 @@ "version": "3.279.0", "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.279.0.tgz", "integrity": "sha512-bsUlZSizTXZ8Pehdatcioi8VphxYn7fRjo5L083peOvBjoL+9WSGyP74PLrFLNwA35QxddwOqgnpQZoE1heuPQ==", + "optional": true, "requires": { "@aws-sdk/client-sso-oidc": "3.279.0", "@aws-sdk/property-provider": "3.272.0", diff --git a/backend/package.json b/backend/package.json index 3d36797a5..fa8ad5b69 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "dependencies": { - "@aws-sdk/client-secrets-manager": "^3.267.0", + "@aws-sdk/client-secrets-manager": "^3.281.0", "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", "@sentry/node": "^7.39.0", From e7e2a869d2fad3d0b9a94781c3fadbd99bb4d596 Mon Sep 17 00:00:00 2001 From: Maidul Islam Date: Wed, 22 Mar 2023 13:10:13 -0700 Subject: [PATCH 07/18] Update overview.mdx --- docs/self-hosting/overview.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/self-hosting/overview.mdx b/docs/self-hosting/overview.mdx index f149f9663..e2c013acb 100644 --- a/docs/self-hosting/overview.mdx +++ b/docs/self-hosting/overview.mdx @@ -8,6 +8,7 @@ Self-hosted Infisical allows you to maintain your sensitive information within y + This deployment option is not highly available because it only deploys a single instance of Infisical This deployment option will use AWS Cloudformation to auto deploy an instance of Infisical on a single EC2 via Docker Compose. From 3b37a03249e479fd2e9d565ccac4842b5964874c Mon Sep 17 00:00:00 2001 From: Maidul Islam Date: Wed, 22 Mar 2023 13:11:15 -0700 Subject: [PATCH 08/18] Update overview.mdx --- docs/self-hosting/overview.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/self-hosting/overview.mdx b/docs/self-hosting/overview.mdx index e2c013acb..f149f9663 100644 --- a/docs/self-hosting/overview.mdx +++ b/docs/self-hosting/overview.mdx @@ -8,7 +8,6 @@ Self-hosted Infisical allows you to maintain your sensitive information within y - This deployment option is not highly available because it only deploys a single instance of Infisical This deployment option will use AWS Cloudformation to auto deploy an instance of Infisical on a single EC2 via Docker Compose. From 49f26d591bafb3a5c6d4eb3b9adab9f6372be4d7 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Thu, 23 Mar 2023 18:26:14 +0000 Subject: [PATCH 09/18] fix: upgrade @sentry/node from 7.39.0 to 7.40.0 Snyk has created this PR to upgrade @sentry/node from 7.39.0 to 7.40.0. See this package in npm: https://www.npmjs.com/package/@sentry/node See this project in Snyk: https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr --- backend/package-lock.json | 74 +++++++++++++++++++-------------------- backend/package.json | 2 +- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index b575c65c8..1e34ad6ae 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -12,7 +12,7 @@ "@aws-sdk/client-secrets-manager": "^3.267.0", "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", - "@sentry/node": "^7.39.0", + "@sentry/node": "^7.40.0", "@sentry/tracing": "^7.19.0", "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", @@ -2800,13 +2800,13 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@sentry/node": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.39.0.tgz", - "integrity": "sha512-oe1OBxgs6t/FizjxkSPtuvJv5wJMO+mLENZkiE0PpBD56JyZrWK48kYIt2ccWAfk6Vh235/oIpmqET150xB4lQ==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.40.0.tgz", + "integrity": "sha512-S2pcLBUsCg3+WYlyQbXKPey3H1yaZPt9fpJTPAoabbidYXweBAbtFjSCRwPFwCQMzWusWxlYEwWRT77C07pHVg==", "dependencies": { - "@sentry/core": "7.39.0", - "@sentry/types": "7.39.0", - "@sentry/utils": "7.39.0", + "@sentry/core": "7.40.0", + "@sentry/types": "7.40.0", + "@sentry/utils": "7.40.0", "cookie": "^0.4.1", "https-proxy-agent": "^5.0.0", "lru_map": "^0.3.3", @@ -2817,12 +2817,12 @@ } }, "node_modules/@sentry/node/node_modules/@sentry/core": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.39.0.tgz", - "integrity": "sha512-45WJIcWWCQnZ8zhHtcrkJjQ4YydmzMWY4pmRuBG7Qp+zrCT6ISoyODcjY+SCHFdvXkiYFi8+bFZa1qG3YQnnYw==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.40.0.tgz", + "integrity": "sha512-OPAobQG0GTY++r5LWUcOA1lS+2TY2Lmw/i5s4kL9WbY+f08dbLNEGNBObY7/V98OL4f7OG+nWaPFybgM7kqUTQ==", "dependencies": { - "@sentry/types": "7.39.0", - "@sentry/utils": "7.39.0", + "@sentry/types": "7.40.0", + "@sentry/utils": "7.40.0", "tslib": "^1.9.3" }, "engines": { @@ -2830,19 +2830,19 @@ } }, "node_modules/@sentry/node/node_modules/@sentry/types": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.39.0.tgz", - "integrity": "sha512-5Y83Y8O3dT5zT2jTKEIPMcpn5lUm05KRMaCXuw0sRsv4r9TbBUKeqiSU1LjowT8rB/XNy8m7DHav8+NmogPaJw==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.40.0.tgz", + "integrity": "sha512-dIbqBenbmDx1F8pvfC11C88J83ecwumUhV+YOIxcmVd1fmlPF2hXWZ01+NTkTDkCu341sJx4wPQogByFy8FwGA==", "engines": { "node": ">=8" } }, "node_modules/@sentry/node/node_modules/@sentry/utils": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.39.0.tgz", - "integrity": "sha512-/ZxlPgm1mGgmuMckCTc9iyqDuFTEYNEoMB53IjVFz8ann+37OiWB7Py/QV1rEEsv3xKrGbA8thhRhV9E1sjTlQ==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.40.0.tgz", + "integrity": "sha512-ZdCbTpAXPiVVfvNJVftnDhsctOui71MDUhVIdLkgg4Cuic+WHGPRmmZ+H6uZdp7vRaeB+Uvnn5+t2iSAVo/mAA==", "dependencies": { - "@sentry/types": "7.39.0", + "@sentry/types": "7.40.0", "tslib": "^1.9.3" }, "engines": { @@ -14394,13 +14394,13 @@ } }, "@sentry/node": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.39.0.tgz", - "integrity": "sha512-oe1OBxgs6t/FizjxkSPtuvJv5wJMO+mLENZkiE0PpBD56JyZrWK48kYIt2ccWAfk6Vh235/oIpmqET150xB4lQ==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.40.0.tgz", + "integrity": "sha512-S2pcLBUsCg3+WYlyQbXKPey3H1yaZPt9fpJTPAoabbidYXweBAbtFjSCRwPFwCQMzWusWxlYEwWRT77C07pHVg==", "requires": { - "@sentry/core": "7.39.0", - "@sentry/types": "7.39.0", - "@sentry/utils": "7.39.0", + "@sentry/core": "7.40.0", + "@sentry/types": "7.40.0", + "@sentry/utils": "7.40.0", "cookie": "^0.4.1", "https-proxy-agent": "^5.0.0", "lru_map": "^0.3.3", @@ -14408,26 +14408,26 @@ }, "dependencies": { "@sentry/core": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.39.0.tgz", - "integrity": "sha512-45WJIcWWCQnZ8zhHtcrkJjQ4YydmzMWY4pmRuBG7Qp+zrCT6ISoyODcjY+SCHFdvXkiYFi8+bFZa1qG3YQnnYw==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.40.0.tgz", + "integrity": "sha512-OPAobQG0GTY++r5LWUcOA1lS+2TY2Lmw/i5s4kL9WbY+f08dbLNEGNBObY7/V98OL4f7OG+nWaPFybgM7kqUTQ==", "requires": { - "@sentry/types": "7.39.0", - "@sentry/utils": "7.39.0", + "@sentry/types": "7.40.0", + "@sentry/utils": "7.40.0", "tslib": "^1.9.3" } }, "@sentry/types": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.39.0.tgz", - "integrity": "sha512-5Y83Y8O3dT5zT2jTKEIPMcpn5lUm05KRMaCXuw0sRsv4r9TbBUKeqiSU1LjowT8rB/XNy8m7DHav8+NmogPaJw==" + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.40.0.tgz", + "integrity": "sha512-dIbqBenbmDx1F8pvfC11C88J83ecwumUhV+YOIxcmVd1fmlPF2hXWZ01+NTkTDkCu341sJx4wPQogByFy8FwGA==" }, "@sentry/utils": { - "version": "7.39.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.39.0.tgz", - "integrity": "sha512-/ZxlPgm1mGgmuMckCTc9iyqDuFTEYNEoMB53IjVFz8ann+37OiWB7Py/QV1rEEsv3xKrGbA8thhRhV9E1sjTlQ==", + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.40.0.tgz", + "integrity": "sha512-ZdCbTpAXPiVVfvNJVftnDhsctOui71MDUhVIdLkgg4Cuic+WHGPRmmZ+H6uZdp7vRaeB+Uvnn5+t2iSAVo/mAA==", "requires": { - "@sentry/types": "7.39.0", + "@sentry/types": "7.40.0", "tslib": "^1.9.3" } }, diff --git a/backend/package.json b/backend/package.json index 3d36797a5..01052c5c1 100644 --- a/backend/package.json +++ b/backend/package.json @@ -3,7 +3,7 @@ "@aws-sdk/client-secrets-manager": "^3.267.0", "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", - "@sentry/node": "^7.39.0", + "@sentry/node": "^7.40.0", "@sentry/tracing": "^7.19.0", "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", From 935db128d31296acc06a7914537486d7d7231fee Mon Sep 17 00:00:00 2001 From: mv-turtle <78047717+mv-turtle@users.noreply.github.com> Date: Thu, 23 Mar 2023 13:38:03 -0700 Subject: [PATCH 10/18] Update faq.mdx --- docs/cli/faq.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/cli/faq.mdx b/docs/cli/faq.mdx index daeeb6458..80229de01 100644 --- a/docs/cli/faq.mdx +++ b/docs/cli/faq.mdx @@ -4,7 +4,7 @@ description: "Frequently Asked Questions about Infisical" --- Frequently asked questions about the CLI can be found on this page. -If you can't find the answer you're looking for, please create an issue on our GitHub repository or join our Slack channel for additional support. +If you can't find the answer you are looking for, please create an issue on our GitHub repository or join our Slack channel for additional support. By default, the CLI will choose the most suitable store available on your system. @@ -22,4 +22,4 @@ Yes. If you have previously retrieved secrets for a specific project and environ Yes. This is simply a configuration file and contains no sensitive data. - \ No newline at end of file + From 77e537c35dbeacde88900f27169b88ab93d1a5c6 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Fri, 24 Mar 2023 19:36:50 +0000 Subject: [PATCH 11/18] fix: upgrade mongoose from 6.10.0 to 6.10.1 Snyk has created this PR to upgrade mongoose from 6.10.0 to 6.10.1. See this package in npm: https://www.npmjs.com/package/mongoose See this project in Snyk: https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr --- backend/package-lock.json | 16 ++++++++-------- backend/package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index b575c65c8..925c11dcb 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -38,7 +38,7 @@ "jsrp": "^0.2.4", "libsodium-wrappers": "^0.7.10", "lodash": "^4.17.21", - "mongoose": "^6.7.2", + "mongoose": "^6.10.1", "nodemailer": "^6.8.0", "posthog-node": "^2.5.4", "query-string": "^7.1.3", @@ -7427,9 +7427,9 @@ } }, "node_modules/mongoose": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.0.tgz", - "integrity": "sha512-0zrKDEnmNscYyAyN94smo2LlJ63gaezKHpHM+KQ+6EiAgAnah5Kt3hQSYzOTQX/63YNdT1oJXiLlB5LqTdcjUw==", + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.1.tgz", + "integrity": "sha512-QBXX27XXCEIi1zqimTBjlZsFFg2YzK9uQfuAIqG1AyIEeyKiiCaobD0Tst2ULwiX4PRB53VLRQvAqyu5TwvOZg==", "dependencies": { "bson": "^4.7.0", "kareem": "2.5.1", @@ -7440,7 +7440,7 @@ "sift": "16.0.1" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.0.0" }, "funding": { "type": "opencollective", @@ -17914,9 +17914,9 @@ } }, "mongoose": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.0.tgz", - "integrity": "sha512-0zrKDEnmNscYyAyN94smo2LlJ63gaezKHpHM+KQ+6EiAgAnah5Kt3hQSYzOTQX/63YNdT1oJXiLlB5LqTdcjUw==", + "version": "6.10.1", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.1.tgz", + "integrity": "sha512-QBXX27XXCEIi1zqimTBjlZsFFg2YzK9uQfuAIqG1AyIEeyKiiCaobD0Tst2ULwiX4PRB53VLRQvAqyu5TwvOZg==", "requires": { "bson": "^4.7.0", "kareem": "2.5.1", diff --git a/backend/package.json b/backend/package.json index 3d36797a5..781350510 100644 --- a/backend/package.json +++ b/backend/package.json @@ -29,7 +29,7 @@ "jsrp": "^0.2.4", "libsodium-wrappers": "^0.7.10", "lodash": "^4.17.21", - "mongoose": "^6.7.2", + "mongoose": "^6.10.1", "nodemailer": "^6.8.0", "posthog-node": "^2.5.4", "query-string": "^7.1.3", From 1c4649cc9e9f5bb3b45f91bc221dd4d3e898db38 Mon Sep 17 00:00:00 2001 From: Aashish-Upadhyay-101 Date: Sun, 26 Mar 2023 17:51:08 +0545 Subject: [PATCH 12/18] unit tests for utils/posthog and utils/crypto --- backend/package.json | 2 +- backend/tests/example.test.ts | 5 -- backend/tests/utils/crypto.test.ts | 92 +++++++++++++++++++++++++++++ backend/tests/utils/posthog.test.ts | 29 +++++++++ 4 files changed, 122 insertions(+), 6 deletions(-) delete mode 100644 backend/tests/example.test.ts create mode 100644 backend/tests/utils/crypto.test.ts create mode 100644 backend/tests/utils/posthog.test.ts diff --git a/backend/package.json b/backend/package.json index 3d36797a5..44abffbe1 100644 --- a/backend/package.json +++ b/backend/package.json @@ -57,7 +57,7 @@ "lint-and-fix": "eslint . --ext .ts --fix", "lint-staged": "lint-staged", "pretest": "docker compose -f test-resources/docker-compose.test.yml up -d", - "test": "cross-env NODE_ENV=test jest --testTimeout=10000 --detectOpenHandles", + "test": "cross-env NODE_ENV=test jest --verbose --testTimeout=10000 --detectOpenHandles", "test:ci": "npm test -- --watchAll=false --ci --reporters=default --reporters=jest-junit --reporters=github-actions --coverage --testLocationInResults --json --outputFile=coverage/report.json", "posttest": "docker compose -f test-resources/docker-compose.test.yml down" }, diff --git a/backend/tests/example.test.ts b/backend/tests/example.test.ts deleted file mode 100644 index 6d38025a5..000000000 --- a/backend/tests/example.test.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { it, expect } from '@jest/globals'; - -it('should return true', () => { - expect(true).toBeTruthy(); -}); diff --git a/backend/tests/utils/crypto.test.ts b/backend/tests/utils/crypto.test.ts new file mode 100644 index 000000000..2cd442b17 --- /dev/null +++ b/backend/tests/utils/crypto.test.ts @@ -0,0 +1,92 @@ +import { describe, test, expect } from '@jest/globals'; +import { + decryptAsymmetric, + decryptSymmetric, + encryptAsymmetric, + encryptSymmetric +} from '../../src/utils/crypto'; + +describe('Crypto', () => { + const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; + const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; + const plaintext = 'secret-message'; + + describe('encryptAsymmetric', () => { + test('should encrypt plain text', () => { + const result = encryptAsymmetric({ plaintext, publicKey, privateKey }); + expect(result.ciphertext).toBeDefined(); + expect(result.nonce).toBeDefined(); + }); + }); + + describe('decryptAsymmetric', () => { + test('should decrypt the encrypted plaintext', () => { + const encryptedResult = encryptAsymmetric({ + plaintext, + publicKey, + privateKey + }); + const ciphertext = encryptedResult.ciphertext; + const nonce = encryptedResult.nonce; + + const decryptedResult = decryptAsymmetric({ + ciphertext, + nonce, + publicKey, + privateKey + }); + + expect(decryptedResult).toBeDefined(); + expect(decryptedResult).toEqual(plaintext); + }); + }); + + describe('encryptSymmetric', () => { + const plaintext = 'secret-message'; + const key = '7e8ee7e5cc667b9c1829783ad31f36f4'; + + test('should encrypt plaintext with the given key', () => { + const { ciphertext, iv, tag } = encryptSymmetric({ plaintext, key }); + expect(ciphertext).toBeDefined(); + expect(iv).toBeDefined(); + expect(tag).toBeDefined(); + }); + + test('should throw an error when encryption fails', () => { + const invalidKey = 'invalid-key'; + + expect(() => { + encryptSymmetric({ plaintext, key: invalidKey }); + }).toThrowError(); + }); + }); + + describe('decryptSymmetric', () => { + const key = '7e8ee7e5cc667b9c1829783ad31f36f4'; + const { ciphertext, iv, tag } = encryptSymmetric({ plaintext, key }); + + test('should decrypt encrypted plaintext', () => { + const result = decryptSymmetric({ + ciphertext, + iv, + tag, + key + }); + + expect(result).toBeDefined(); + expect(result).toEqual(plaintext); + }); + + test('should throw an error when decryption fails', () => { + const invalidKey = 'invalid-key'; + expect(() => { + decryptSymmetric({ + ciphertext, + iv, + tag, + key: invalidKey + }); + }).toThrowError(); + }); + }); +}); diff --git a/backend/tests/utils/posthog.test.ts b/backend/tests/utils/posthog.test.ts new file mode 100644 index 000000000..a380060b0 --- /dev/null +++ b/backend/tests/utils/posthog.test.ts @@ -0,0 +1,29 @@ +import { describe, test, expect } from '@jest/globals'; +import { getChannelFromUserAgent } from '../../src/utils/posthog'; + +describe('posthog getChannelFromUserAgent', () => { + test("should return 'web' when userAgent includes 'mozilla'", () => { + const userAgent = + 'Mozilla/5.0 (Linux; Android 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.5563.115 Mobile Safari/537.36'; + const channel = getChannelFromUserAgent(userAgent); + expect(channel).toBe('web'); + }); + + test("should return 'cli'", () => { + const userAgent = 'cli'; + const channel = getChannelFromUserAgent(userAgent); + expect(channel).toBe('cli'); + }); + + test("should return 'k8-operator'", () => { + const userAgent = 'k8-operator'; + const channel = getChannelFromUserAgent(userAgent); + expect(channel).toBe('k8-operator'); + }); + + test('should return undefined if no userAgent', () => { + const userAgent = undefined; + const channel = getChannelFromUserAgent(userAgent); + expect(channel).toBe('other'); + }); +}); From 49a690b7b23af3d963759cce2787a1c9bd42032b Mon Sep 17 00:00:00 2001 From: Maidul Islam Date: Tue, 28 Mar 2023 20:16:33 -0700 Subject: [PATCH 13/18] Update envars.mdx --- docs/self-hosting/configuration/envars.mdx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/self-hosting/configuration/envars.mdx b/docs/self-hosting/configuration/envars.mdx index 6786eef08..6bcb67d55 100644 --- a/docs/self-hosting/configuration/envars.mdx +++ b/docs/self-hosting/configuration/envars.mdx @@ -11,27 +11,27 @@ Other environment variables are listed below to increase the functionality of yo - Must be a random 32 character length hex string + Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16` - Must be a random 32 character length hex string + Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16` - Must be a random 32 character length hex string + Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16` - Must be a random 32 character length hex string + Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16` - Must be a random 32 character length hex string + Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16` - Must be a random 32 character length hex string + Must be a random 16 byte hex string. Can be generated with `openssl rand -hex 16` From 356f0ac860a807806f06ac236df4b782b92026f5 Mon Sep 17 00:00:00 2001 From: Aashish-Upadhyay-101 Date: Wed, 29 Mar 2023 12:27:13 +0545 Subject: [PATCH 14/18] improvement tests --- backend/tests/utils/crypto.test.ts | 213 +++++++++++++++++++++++++---- 1 file changed, 186 insertions(+), 27 deletions(-) diff --git a/backend/tests/utils/crypto.test.ts b/backend/tests/utils/crypto.test.ts index 2cd442b17..aea5f5f26 100644 --- a/backend/tests/utils/crypto.test.ts +++ b/backend/tests/utils/crypto.test.ts @@ -7,61 +7,184 @@ import { } from '../../src/utils/crypto'; describe('Crypto', () => { - const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; - const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; - const plaintext = 'secret-message'; - describe('encryptAsymmetric', () => { - test('should encrypt plain text', () => { - const result = encryptAsymmetric({ plaintext, publicKey, privateKey }); - expect(result.ciphertext).toBeDefined(); - expect(result.nonce).toBeDefined(); + describe('given all valid publicKey, privateKey and plaintext', () => { + const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; + const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; + const plaintext = 'secret-message'; + + test('should encrypt plain text', () => { + const result = encryptAsymmetric({ plaintext, publicKey, privateKey }); + expect(result.ciphertext).toBeDefined(); + expect(result.nonce).toBeDefined(); + }); + }); + + describe('given empty/undefined publicKey', () => { + let publicKey: string; + const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; + const plaintext = 'secret-message'; + + test('should throw error if publicKey is undefined', () => { + expect(() => { + encryptAsymmetric({ plaintext, publicKey, privateKey }); + }).toThrowError('Failed to perform asymmetric encryption'); + }); + + test('should throw error if publicKey is empty string', () => { + publicKey = ''; + expect(() => { + encryptAsymmetric({ plaintext, publicKey, privateKey }); + }).toThrowError('Failed to perform asymmetric encryption'); + }); + }); + + describe('given empty/undefined privateKey', () => { + const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; + let privateKey: string; + const plaintext = 'secret-message'; + + test('should throw error if privateKey is undefined', () => { + expect(() => { + encryptAsymmetric({ plaintext, publicKey, privateKey }); + }).toThrowError('Failed to perform asymmetric encryption'); + }); + + test('should throw error if privateKey is empty string', () => { + privateKey = ''; + expect(() => { + encryptAsymmetric({ plaintext, publicKey, privateKey }); + }).toThrowError('Failed to perform asymmetric encryption'); + }); + }); + + describe('given undefined/invalid plaint text', () => { + const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; + const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; + let plaintext: string; + + test('should throw error if plaintext is undefined', () => { + expect(() => { + encryptAsymmetric({ plaintext, publicKey, privateKey }); + }).toThrowError('Failed to perform asymmetric encryption'); + }); + + test('should encrypt plaintext containing special characters', () => { + plaintext = '131@#$%235!@#&*(&123sadfkjadjf'; + const result = encryptAsymmetric({ + plaintext, + publicKey, + privateKey + }); + expect(result.ciphertext).toBeDefined(); + expect(result.nonce).toBeDefined(); + }); }); }); describe('decryptAsymmetric', () => { - test('should decrypt the encrypted plaintext', () => { - const encryptedResult = encryptAsymmetric({ - plaintext, - publicKey, - privateKey - }); - const ciphertext = encryptedResult.ciphertext; - const nonce = encryptedResult.nonce; + describe('given all valid publicKey, privateKey and plaintext', () => { + const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; + const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; + const plaintext = 'secret-message'; - const decryptedResult = decryptAsymmetric({ - ciphertext, - nonce, - publicKey, - privateKey + test('should decrypt the encrypted plaintext', () => { + const encryptedResult = encryptAsymmetric({ + plaintext, + publicKey, + privateKey + }); + const ciphertext = encryptedResult.ciphertext; + const nonce = encryptedResult.nonce; + + const decryptedResult = decryptAsymmetric({ + ciphertext, + nonce, + publicKey, + privateKey + }); + + expect(decryptedResult).toBeDefined(); + expect(decryptedResult).toEqual(plaintext); + }); + }); + + describe('given ciphertext or nonce is modified before decrypt', () => { + const publicKey = '6U5m6S5jlyazJ+R4z7Yf/Ah4th4JwKxDN8Wn7+upvzw='; + const privateKey = 'Z8W53YV+2ddjJCrFwzptjK96y2QsQI9oXuvfcx+qxz0='; + const plaintext = 'secret-message'; + + test('should throw error if ciphertext is modified', () => { + const encryptedResult = encryptAsymmetric({ + plaintext, + publicKey, + privateKey + }); + const ciphertext = '=12adfJ@#52af1231=123'; // modified + const nonce = encryptedResult.nonce; + + expect(() => { + decryptAsymmetric({ + ciphertext, + nonce, + publicKey, + privateKey + }); + }).toThrowError('Failed to perform asymmetric decryption'); }); - expect(decryptedResult).toBeDefined(); - expect(decryptedResult).toEqual(plaintext); + test('should throw error if nonce is modified', () => { + const encryptedResult = encryptAsymmetric({ + plaintext, + publicKey, + privateKey + }); + const ciphertext = encryptedResult.ciphertext; + const nonce = '=12adfJ@#52af1231=123'; // modified + + expect(() => { + decryptAsymmetric({ + ciphertext, + nonce, + publicKey, + privateKey + }); + }).toThrowError('Failed to perform asymmetric decryption'); + }); }); }); describe('encryptSymmetric', () => { - const plaintext = 'secret-message'; + let plaintext: string; const key = '7e8ee7e5cc667b9c1829783ad31f36f4'; test('should encrypt plaintext with the given key', () => { + plaintext = 'secret-message'; const { ciphertext, iv, tag } = encryptSymmetric({ plaintext, key }); expect(ciphertext).toBeDefined(); expect(iv).toBeDefined(); expect(tag).toBeDefined(); }); - test('should throw an error when encryption fails', () => { + test('should throw an error when plaintext is undefined', () => { + const invalidKey = 'invalid-key'; + expect(() => { + encryptSymmetric({ plaintext, key: invalidKey }); + }).toThrowError('Failed to perform symmetric encryption'); + }); + + test('should throw an error when invalid key is provided', () => { + plaintext = 'secret-message'; const invalidKey = 'invalid-key'; expect(() => { encryptSymmetric({ plaintext, key: invalidKey }); - }).toThrowError(); + }).toThrowError('Failed to perform symmetric encryption'); }); }); describe('decryptSymmetric', () => { + const plaintext = 'secret-message'; const key = '7e8ee7e5cc667b9c1829783ad31f36f4'; const { ciphertext, iv, tag } = encryptSymmetric({ plaintext, key }); @@ -77,6 +200,42 @@ describe('Crypto', () => { expect(result).toEqual(plaintext); }); + test('should fail if ciphertext is modified', () => { + const modifieldCiphertext = 'abcdefghijklmnopqrstuvwxyz'; + expect(() => { + decryptSymmetric({ + ciphertext: modifieldCiphertext, + iv, + tag, + key + }); + }).toThrowError('Failed to perform symmetric decryption'); + }); + + test('should fail if iv is modified', () => { + const modifiedIv = 'abcdefghijklmnopqrstuvwxyz'; + expect(() => { + decryptSymmetric({ + ciphertext, + iv: modifiedIv, + tag, + key + }); + }).toThrowError('Failed to perform symmetric decryption'); + }); + + test('should fail if tag is modified', () => { + const modifiedTag = 'abcdefghijklmnopqrstuvwxyz'; + expect(() => { + decryptSymmetric({ + ciphertext, + iv, + tag: modifiedTag, + key + }); + }).toThrowError('Failed to perform symmetric decryption'); + }); + test('should throw an error when decryption fails', () => { const invalidKey = 'invalid-key'; expect(() => { @@ -86,7 +245,7 @@ describe('Crypto', () => { tag, key: invalidKey }); - }).toThrowError(); + }).toThrowError('Failed to perform symmetric decryption'); }); }); }); From 9e2a03244ed54f1a1c83b2343088f8adc2144a04 Mon Sep 17 00:00:00 2001 From: Aashish-Upadhyay-101 Date: Thu, 30 Mar 2023 01:05:15 +0545 Subject: [PATCH 15/18] typo fixed --- .../Settings/OrgSettingsPage/OrgSettingsPage.tsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx b/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx index f73249196..d3f8ba628 100644 --- a/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx +++ b/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx @@ -52,12 +52,12 @@ export const OrgSettingsPage = () => { const addIncidentContact = useAddIncidentContact(); const removeIncidentContact = useDeleteIncidentContact(); - const [completeInviteLink, setcompleteInviteLink] = useState("") + const [completeInviteLink, setcompleteInviteLink] = useState(''); const isMoreUsersNotAllowed = (orgUsers || []).length >= 5 && subscriptionPlan === plans.starter && - host === 'https://app.infisical.com' && + host === 'https://app.infisical.com' && currentWorkspace?._id !== '63ea8121b6e2b0543ba79616'; const onRenameOrg = async (name: string) => { @@ -84,7 +84,7 @@ export const OrgSettingsPage = () => { try { await removeUserOrgMembership.mutateAsync({ orgId: currentOrg?._id, membershipId }); createNotification({ - text: 'Successfully removed used from org', + text: 'Successfully removed user from org', type: 'success' }); } catch (error) { @@ -99,11 +99,14 @@ export const OrgSettingsPage = () => { if (!currentOrg?._id) return; try { - const {data} = await addUserToOrg.mutateAsync({ organizationId: currentOrg?._id, inviteeEmail: email }); - setcompleteInviteLink(data?.completeInviteLink) + const { data } = await addUserToOrg.mutateAsync({ + organizationId: currentOrg?._id, + inviteeEmail: email + }); + setcompleteInviteLink(data?.completeInviteLink); // only show this notification when email is configured. A [completeInviteLink] will not be sent if smtp is configured - if (!data.completeInviteLink){ + if (!data.completeInviteLink) { createNotification({ text: 'Successfully invited user to the organization.', type: 'success' From c9e12d33bd30110a6228ab603e009136e47072c8 Mon Sep 17 00:00:00 2001 From: Aashish-Upadhyay-101 Date: Thu, 30 Mar 2023 01:06:43 +0545 Subject: [PATCH 16/18] Revert "typo fixed" This reverts commit 9e2a03244ed54f1a1c83b2343088f8adc2144a04. --- .../Settings/OrgSettingsPage/OrgSettingsPage.tsx | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx b/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx index d3f8ba628..f73249196 100644 --- a/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx +++ b/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx @@ -52,12 +52,12 @@ export const OrgSettingsPage = () => { const addIncidentContact = useAddIncidentContact(); const removeIncidentContact = useDeleteIncidentContact(); - const [completeInviteLink, setcompleteInviteLink] = useState(''); + const [completeInviteLink, setcompleteInviteLink] = useState("") const isMoreUsersNotAllowed = (orgUsers || []).length >= 5 && subscriptionPlan === plans.starter && - host === 'https://app.infisical.com' && + host === 'https://app.infisical.com' && currentWorkspace?._id !== '63ea8121b6e2b0543ba79616'; const onRenameOrg = async (name: string) => { @@ -84,7 +84,7 @@ export const OrgSettingsPage = () => { try { await removeUserOrgMembership.mutateAsync({ orgId: currentOrg?._id, membershipId }); createNotification({ - text: 'Successfully removed user from org', + text: 'Successfully removed used from org', type: 'success' }); } catch (error) { @@ -99,14 +99,11 @@ export const OrgSettingsPage = () => { if (!currentOrg?._id) return; try { - const { data } = await addUserToOrg.mutateAsync({ - organizationId: currentOrg?._id, - inviteeEmail: email - }); - setcompleteInviteLink(data?.completeInviteLink); + const {data} = await addUserToOrg.mutateAsync({ organizationId: currentOrg?._id, inviteeEmail: email }); + setcompleteInviteLink(data?.completeInviteLink) // only show this notification when email is configured. A [completeInviteLink] will not be sent if smtp is configured - if (!data.completeInviteLink) { + if (!data.completeInviteLink){ createNotification({ text: 'Successfully invited user to the organization.', type: 'success' From 91c83e04be43faeb1be890ff86d2318424ee4632 Mon Sep 17 00:00:00 2001 From: Aashish-Upadhyay-101 Date: Thu, 30 Mar 2023 01:08:30 +0545 Subject: [PATCH 17/18] fix typo notification message --- .../Settings/OrgSettingsPage/OrgSettingsPage.tsx | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx b/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx index f73249196..d3f8ba628 100644 --- a/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx +++ b/frontend/src/views/Settings/OrgSettingsPage/OrgSettingsPage.tsx @@ -52,12 +52,12 @@ export const OrgSettingsPage = () => { const addIncidentContact = useAddIncidentContact(); const removeIncidentContact = useDeleteIncidentContact(); - const [completeInviteLink, setcompleteInviteLink] = useState("") + const [completeInviteLink, setcompleteInviteLink] = useState(''); const isMoreUsersNotAllowed = (orgUsers || []).length >= 5 && subscriptionPlan === plans.starter && - host === 'https://app.infisical.com' && + host === 'https://app.infisical.com' && currentWorkspace?._id !== '63ea8121b6e2b0543ba79616'; const onRenameOrg = async (name: string) => { @@ -84,7 +84,7 @@ export const OrgSettingsPage = () => { try { await removeUserOrgMembership.mutateAsync({ orgId: currentOrg?._id, membershipId }); createNotification({ - text: 'Successfully removed used from org', + text: 'Successfully removed user from org', type: 'success' }); } catch (error) { @@ -99,11 +99,14 @@ export const OrgSettingsPage = () => { if (!currentOrg?._id) return; try { - const {data} = await addUserToOrg.mutateAsync({ organizationId: currentOrg?._id, inviteeEmail: email }); - setcompleteInviteLink(data?.completeInviteLink) + const { data } = await addUserToOrg.mutateAsync({ + organizationId: currentOrg?._id, + inviteeEmail: email + }); + setcompleteInviteLink(data?.completeInviteLink); // only show this notification when email is configured. A [completeInviteLink] will not be sent if smtp is configured - if (!data.completeInviteLink){ + if (!data.completeInviteLink) { createNotification({ text: 'Successfully invited user to the organization.', type: 'success' From 6d7628cdc0f9a362075f1b22419eeffa4b3652e8 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Wed, 29 Mar 2023 21:29:40 +0000 Subject: [PATCH 18/18] fix: upgrade mongoose from 6.10.1 to 6.10.2 Snyk has created this PR to upgrade mongoose from 6.10.1 to 6.10.2. See this package in npm: https://www.npmjs.com/package/mongoose See this project in Snyk: https://app.snyk.io/org/maidul98/project/35057e82-ed7d-4e19-ba4d-719a42135cd6?utm_source=github&utm_medium=referral&page=upgrade-pr --- backend/package-lock.json | 99 ++++----------------------------------- backend/package.json | 2 +- 2 files changed, 10 insertions(+), 91 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index c31a33ac6..80ab4e03b 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -12,8 +12,8 @@ "@aws-sdk/client-secrets-manager": "^3.281.0", "@godaddy/terminus": "^4.11.2", "@octokit/rest": "^19.0.5", - "@sentry/tracing": "^7.39.0", "@sentry/node": "^7.40.0", + "@sentry/tracing": "^7.39.0", "@types/crypto-js": "^4.1.1", "@types/libsodium-wrappers": "^0.7.10", "await-to-js": "^3.0.0", @@ -38,7 +38,7 @@ "jsrp": "^0.2.4", "libsodium-wrappers": "^0.7.10", "lodash": "^4.17.21", - "mongoose": "^6.10.1", + "mongoose": "^6.10.2", "nodemailer": "^6.8.0", "posthog-node": "^2.5.4", "query-string": "^7.1.3", @@ -2988,24 +2988,6 @@ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" }, - "node_modules/@sentry/core": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.38.0.tgz", - "integrity": "sha512-+hXh/SO3Ie6WC2b+wi01xLhyVREdkRXS5QBmCiv3z2ks2HvYXp7PoKSXJvNKiwCP+pBD+enOnM1YEzM2yEy5yw==", - "dependencies": { - "@sentry/types": "7.38.0", - "@sentry/utils": "7.38.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@sentry/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/@sentry/node": { "version": "7.40.0", "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.40.0.tgz", @@ -3113,31 +3095,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@sentry/types": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.38.0.tgz", - "integrity": "sha512-NKOALR6pNUMzUrsk2m+dkPrO8uGNvNh1LD0BCPswKNjC2qHo1h1mDGCgBmF9+EWyii8ZoACTIsxvsda+MBf97Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@sentry/utils": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.38.0.tgz", - "integrity": "sha512-MgbI3YmYuyyhUtvcXkgGBqjOW+nuLLNGUdWCK+C4kObf8VbLt3dSE/7SEMT6TSHLYQmxs2BxFgx5Agn97m68kQ==", - "dependencies": { - "@sentry/types": "7.38.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@sentry/utils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/@sinclair/typebox": { "version": "0.25.24", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", @@ -7667,9 +7624,9 @@ } }, "node_modules/mongoose": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.1.tgz", - "integrity": "sha512-QBXX27XXCEIi1zqimTBjlZsFFg2YzK9uQfuAIqG1AyIEeyKiiCaobD0Tst2ULwiX4PRB53VLRQvAqyu5TwvOZg==", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.2.tgz", + "integrity": "sha512-9/AbheG2PiVVBWLx3S6LgCIEQNdMppjdnp/WH9nLGjFzjJeb9LiHNPEtsOGOm8qXmuICHMdbn5iUFAsLWWvpEw==", "dependencies": { "bson": "^4.7.0", "kareem": "2.5.1", @@ -7680,7 +7637,7 @@ "sift": "16.0.1" }, "engines": { - "node": ">=14.0.0" + "node": ">=12.0.0" }, "funding": { "type": "opencollective", @@ -14804,23 +14761,6 @@ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" }, - "@sentry/core": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.38.0.tgz", - "integrity": "sha512-+hXh/SO3Ie6WC2b+wi01xLhyVREdkRXS5QBmCiv3z2ks2HvYXp7PoKSXJvNKiwCP+pBD+enOnM1YEzM2yEy5yw==", - "requires": { - "@sentry/types": "7.38.0", - "@sentry/utils": "7.38.0", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, "@sentry/node": { "version": "7.40.0", "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.40.0.tgz", @@ -14908,27 +14848,6 @@ } } }, - "@sentry/types": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.38.0.tgz", - "integrity": "sha512-NKOALR6pNUMzUrsk2m+dkPrO8uGNvNh1LD0BCPswKNjC2qHo1h1mDGCgBmF9+EWyii8ZoACTIsxvsda+MBf97Q==" - }, - "@sentry/utils": { - "version": "7.38.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.38.0.tgz", - "integrity": "sha512-MgbI3YmYuyyhUtvcXkgGBqjOW+nuLLNGUdWCK+C4kObf8VbLt3dSE/7SEMT6TSHLYQmxs2BxFgx5Agn97m68kQ==", - "requires": { - "@sentry/types": "7.38.0", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, "@sinclair/typebox": { "version": "0.25.24", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", @@ -18366,9 +18285,9 @@ } }, "mongoose": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.1.tgz", - "integrity": "sha512-QBXX27XXCEIi1zqimTBjlZsFFg2YzK9uQfuAIqG1AyIEeyKiiCaobD0Tst2ULwiX4PRB53VLRQvAqyu5TwvOZg==", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.2.tgz", + "integrity": "sha512-9/AbheG2PiVVBWLx3S6LgCIEQNdMppjdnp/WH9nLGjFzjJeb9LiHNPEtsOGOm8qXmuICHMdbn5iUFAsLWWvpEw==", "requires": { "bson": "^4.7.0", "kareem": "2.5.1", diff --git a/backend/package.json b/backend/package.json index 03b6868a9..af252211b 100644 --- a/backend/package.json +++ b/backend/package.json @@ -29,7 +29,7 @@ "jsrp": "^0.2.4", "libsodium-wrappers": "^0.7.10", "lodash": "^4.17.21", - "mongoose": "^6.10.1", + "mongoose": "^6.10.2", "nodemailer": "^6.8.0", "posthog-node": "^2.5.4", "query-string": "^7.1.3",