190610 TIL Ruby on Rails - login(bcrypt) && db

» 1막, TIL (Today I Learned)

login && db

  • 마침내 로그인을 구현해보게됐다.
  • 먼저 세션으로 인증하고, 그 다음은 쿠키로 인증해보았다. 얼마전 쿠키, 세션, 캐시가 뭔가요? 유튜브 강의를 봤었는데, 이번에 활용해봤다.
  • session === a semi-permanent connection b/w two computers
  • Rails 메소드인 session을 사용해 유저가 브라우저를 닫으면 사라지는 임시 세션들을 만들어봤다.
  • 비밀번호를 저장할때는 bcrypt 라이브러리를 사용했다.
    • 참고자료:
      https://d2.naver.com/helloworld/318732
      https://opentutorials.org/course/3411/22097
    • 관리자도 알 수 없는 비밀번호를 생성해주고, 단방향 hash, salt 등을 활용한다.
  • 튜토리얼을 보고 막 따라하다가, 갑자기 db를 눈으로 보고 싶어졌다. 그래서 막~~ 검색해보다가 How do I view a PostgreSQL database on heroku with a GUI? 이 글을 보고 따라할 수 있었다. (처음엔 저 DATABASE_URL을 각자의 서버 url을 써야하는 줄 알았는데, 아니였다.. 그냥 그대로 쓰는 것..)
  • heroku config를 터미널에서 입력하면 db 주소를 볼 수 있다.
  • database.yml에서 production도 바꿔주고..
      production:
      database: example_production
      adapter: postgresql
      host: localhost
      password: <%= ENV['DB_PASSWORD'] %>
    
  • 그 결과.. Screen Shot 2019-06-10 at 6 25 40 PM Screen Shot 2019-06-10 at 6 25 56 PM
  • 요렇게 데이터를 눈으로 볼 수 있었다!!

  • heroku에서도 db를 볼 수 있는 거 같은데, hobby tier는 못쓰는듯… (tier가 있는 것도 오늘 처음 알았다.) Screen Shot 2019-06-10 at 6 25 22 PM

  • 그러다 문득, heroku는 무엇이지? 서버..? 인가? 해서 찾아보았다.
      Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.
    

    image 출처

    라고 한다. 헤로쿠는 클라우드에서 웹을 동작할 수 있도록 지원하는 플랫폼이구나!

  • 로그인 부분은 정말 어려워서 다른데다가 또 해보고 적용해봐야겠다.
  • 오늘 db에 대해 조금 맛본것이 큰 수확!
  • How to Teach People SQL 여기서 이제 db 공부해야지~ 바쁘다 바빠~




완벽한 이해보다는 어제보다 오늘 하나 더 배우고 익혔다는 생각으로 차근차근 수련하다보면 어느 순간 그림이 그려지는 날이 올거예요.