უსაფრთხოება5 წუთის საკითხავი
სად შევინახოთ საიდუმლოები აპლიკაციის სერვერზე
API გასაღებები, ბაზის პაროლები და token-ები შენს რეპოზიტორიაში არ უნდა იყოს. სად უნდა იყოს სამაგიეროდ და რატომ არაა ეს განსხვავება პედანტიზმი.
კრედენშალის გაჟონვის ყველაზე გავრცელებული გზა შეტევა არაა. ეს არის რეპოზიტორია, რომელიც პრივატული იყო გასაღების ჩადებისას და საჯარო გახდა, როცა ვინმემ დაფორკა — და მაშინ გასაღები უკვე ისტორიაშია და არა ფაილში.
გარემოს ცვლადები და არა ფაილები რეპოში
Startup ჩანართი გარემოს ცვლადებს ატარებს, რომლებიც კონტეინერზე ეწერება და შენს კოდში არასდროს იწერება. შენი აპლიკაცია მათ ისე კითხულობს, როგორც უკვე კითხულობს — process.env, os.environ, getenv — და მნიშვნელობა სერვერზე არსებობს და არა იმაში, რასაც აგზავნი.
- ბაზის პაროლები, რომლებსაც პანელი ისედაც თითო ბაზაზე გენერირებს.
- API გასაღებები და webhook-ის URL-ები. Webhook-ის URL კრედენშალია: ვისაც ის უჭირავს, შენი სახელით პოსტავს.
- ბოტების token-ები, რომლებიც ამ ინდუსტრიაში ყველაზე ხშირად გაჟონილი საიდუმლოა.
- ყველაფერი, რასაც ბილბორდზე არ დაწერდი.
თუ უკვე დაკომიტულია
შეცვალე. ხაზის წაშლა და ხელახლა გაგზავნა არ შველის — ძველ კომიტს ის ისევ აქვს, და ვინც რეპოზიტორია დაიკლონა, მასაც აქვს. როტაცია ერთადერთი გამოსავალია და ის იაფია იმასთან შედარებით, რომ ეს რთული გზით გაიგო.
საიდუმლო, რომელიც საჯარო რეპოზიტორიაში ხუთი წუთი იყო, საჯარო საიდუმლოა. სკრეიპერები შენზე სწრაფები არიან.