Skip to content

Go(Gin)とJSON Web Tokenを利用した認証認可

Notifications You must be signed in to change notification settings

chalmeal/go-gin-auth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go-gin-auth

Golang + Gin + Auth(JWT)

はじめに

当プロジェクトはGolangとGinを利用したログイン認証及びアクセス認可です。JWTを利用したシンプルな実装で構成しています。

構成

├── main.go
├── common
|    ├── connect
|    |    └── db.go
|    ├── sessions
|      └── sessions.go
|    └── response
|      └── response.go
├── config
|    ├── app.ini
|    └── config.go
└── routers
   ├── routers.go
   └── api
      ├── api.go
      ├── auths
      |   ├── routes.go
      |   ├── app_auth_controllers.go 
      |   ├── model.go
      |   ├── middleware.go
      |   ├── utils.go
      |   └── validators.go
       └── books
                  ├── routes.go
                  ├── book_controllers.go 
                  ├── model.go
                  ├── middleware.go
                  └── validators.go

ドキュメント

データ定義

テーブル名 概要
users ユーザーテーブル、認証情報の管理を含む
books 書籍マスタテーブル

仕様

書名 概要
認証認可 ユーザー認証をする機能について

セットアップ

DB

  • DBの環境は以下を想定します。
    • MySQL
    • GORM
  • create schemaのみ行う必要があります。DDL
  • app.iniに対してDB接続情報を定義してください。
  • テーブルはGORMが提供するAutoMigrateを利用します。
    • 各テーブルは初回API実行時に生成されます。
    • テストレコードを追加したい場合はdml-insert-into_users.sql及びdml-insert-into_books.sqlを参考に実行してください。
    • 本プロジェクトで定義されている詳細なデータ定義に関しては、各ドメインのdocを参照してください。

アプリケーションスタート

アプリケーションのスタートはデバッガを推奨しています。

Run and DebugのRun go-gin-authから実行してください。

その他

Qiita