上传git时,如何防止数据库密码等隐私信息泄露?

背景:

在写后端时,如果直接在代码中写数据库连接需要的用户名和密码,那么当我们使用git上传到公开仓库时,会导致这些隐私信息的泄露。

解决办法:

将隐私信息写到一个单独的文件里,并添加到.gitignore中。

例子:

(1)在.secrect文件夹中新建database.ts文件。

// .secret/database.ts
import { TypeOrmModuleOptions } from '@nestjs/typeorm';

const MYSQL_CONFIG : TypeOrmModuleOptions = {
  type: "mysql",
  host: *,
  port: *,
  username: *,
  password: *,
  database: *,
  synchronize: true,
  retryDelay: 500,
  retryAttempts: 10,
  autoLoadEntities: true,
}

export { MYSQL_CONFIG }

(2)添加到.gitignore文件。

// .gitignore
.secret

(3)在使用时导入。

import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { TypeOrmModule } from '@nestjs/typeorm';
import { MYSQL_CONFIG } from '../.config/database';

@Module({
  imports: [TypeOrmModule.forRoot(MYSQL_CONFIG)],
  controllers: [AppController],
  providers: [AppService],
})
export class AppModule { }

缺点:

在部署应用到服务器时,需要额外使用SCP将隐私信息文件传到服务器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值