fix: address feedback and correct client secret env var to new variable for connection methods

This commit is contained in:
Scott Wilson
2025-09-22 10:26:20 -07:00
parent 2786d49cad
commit d5c39a5c56
3 changed files with 9 additions and 6 deletions
+4 -1
View File
@@ -437,7 +437,10 @@ const envSchema = z
INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_ID: INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_ID:
data.INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_ID || data.INF_APP_CONNECTION_AZURE_CLIENT_ID, data.INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_ID || data.INF_APP_CONNECTION_AZURE_CLIENT_ID,
INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_SECRET: INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_SECRET:
data.INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_SECRET || data.INF_APP_CONNECTION_AZURE_CLIENT_SECRET data.INF_APP_CONNECTION_AZURE_APP_CONFIGURATION_CLIENT_SECRET || data.INF_APP_CONNECTION_AZURE_CLIENT_SECRET,
INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_ID: data.INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_ID || data.CLIENT_ID_HEROKU,
INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET:
data.INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET || data.CLIENT_SECRET_HEROKU
})); }));
export type TEnvConfig = Readonly<z.infer<typeof envSchema>>; export type TEnvConfig = Readonly<z.infer<typeof envSchema>>;
@@ -40,12 +40,12 @@ export const refreshHerokuToken = async (
appConnectionDAL: Pick<TAppConnectionDALFactory, "updateById">, appConnectionDAL: Pick<TAppConnectionDALFactory, "updateById">,
kmsService: Pick<TKmsServiceFactory, "createCipherPairWithDataKey"> kmsService: Pick<TKmsServiceFactory, "createCipherPairWithDataKey">
): Promise<string> => { ): Promise<string> => {
const { CLIENT_SECRET_HEROKU } = getConfig(); const { INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET } = getConfig();
const payload = { const payload = {
grant_type: "refresh_token", grant_type: "refresh_token",
refresh_token: refreshToken, refresh_token: refreshToken,
client_secret: CLIENT_SECRET_HEROKU client_secret: INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET
}; };
const { data } = await request.post<{ access_token: string; expires_in: number }>( const { data } = await request.post<{ access_token: string; expires_in: number }>(
@@ -75,7 +75,7 @@ export const refreshHerokuToken = async (
}; };
export const exchangeHerokuOAuthCode = async (code: string): Promise<HerokuOAuthTokenResponse> => { export const exchangeHerokuOAuthCode = async (code: string): Promise<HerokuOAuthTokenResponse> => {
const { CLIENT_SECRET_HEROKU } = getConfig(); const { INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET } = getConfig();
try { try {
const response = await request.post<HerokuOAuthTokenResponse>( const response = await request.post<HerokuOAuthTokenResponse>(
@@ -83,7 +83,7 @@ export const exchangeHerokuOAuthCode = async (code: string): Promise<HerokuOAuth
{ {
grant_type: "authorization_code", grant_type: "authorization_code",
code, code,
client_secret: CLIENT_SECRET_HEROKU client_secret: INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET
}, },
{ {
headers: { headers: {
+1 -1
View File
@@ -678,7 +678,7 @@ You can configure third-party app connections for re-use across Infisical Projec
</ParamField> </ParamField>
<ParamField query="INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET" type="string" default="none" optional> <ParamField query="INF_APP_CONNECTION_HEROKU_OAUTH_CLIENT_SECRET" type="string" default="none" optional>
The Secret of your GitLab Heroku OAuth application. The Secret of your Heroku OAuth application.
</ParamField> </ParamField>
</Accordion> </Accordion>