LoginSignup
2
1

More than 1 year has passed since last update.

農家の生活が楽になるアプリ[個人開発]

Last updated at Posted at 2022-02-27

【サービスの概要】
農家の生活を楽にするために、主に以下のサービスを受けられる
✔ 農家の業務を委託できる
✔ 農機具を農家同士でシェアする
✔ 農機具を購入する前に、無料で一度体験をすることができる

URL:サービス内容
URL:操作手順書
URL:アプリ
URL:github

トップ1

トップ2

【農家のメリット】
✔ サービスの口コミ評価を参考にできる
✔ 農機具のレンタルをすることで費用を抑えることができる
✔ 高額な農機具購入する前に「無料サービス」を使うことで自分に合った物か確認できる

【サービス提供者のメリット】
✔ 使っていない農機具を他の農家に貸すことで利益を得られる(CtoC)
✔ 口コミや評価によって業務改善につながる
✔ 「無料サービス」の利用から高額な農機具の販売に繋げられる(DtoC)


  ログインをしなくても閲覧は可能です。
  会員登録を省略したい場合は以下の業者リストからログインしてください。

  1)農機具レンタル業者: 狩生 岳志
  ・メールアドレス: rrrr@gmail.com
  ・パスワード: rrrr

  2)専門の経理・会計:小林 陽介
  ・メールアドレス:2222@gmail.com 
  ・パスワード: 2222

  3)無料サービス:横山 豊
  ・メールアドレス:6666@gmail.com
  ・パスワード: 6666


1. 目次



2. 主な利用シーン

「農機具を購入したいが高額で手が出せない・・・」
→  他の農家からレンタルすることで、購入コスト保管場所のコストを抑えることができる

農機具
   例)田植機を1日レンタルする



「最新の農機具を使ってみたいが高額で種類も多くてわからない・・・」
→  無料サービスで実際に体験ができ、気に入ればそのまま購入もできる

ドローン
   例)ドローンを無料体験してみる



「農業法人の設立したいがわからない・・・」
→  農業専門の行政書士が代行してくれる

行政書士
   例)めんどくさい農業に関する起業の手続きを代行してもらえる



「売上と書類管理に手間がかかり農業に専念できない・・・」
→  月額費を払えばデータ管理をクラウドで管理し、業務の手間を大幅に削減できる

インフラ
   例)生産や販売管理をデータ化して可視化することで常に状況を簡単に確認できる



「農業を始めたいが初期費用として栽培システムの設置が高額すぎて手が出せない・・・」
→  月額制のレンタルから始めて、一定期間利用して頂ければそのままもらえる

インフラ
   例)ビニールハウスと水耕栽培装置セットで月額16,9800円でレンタルできる(12ヶ月利用でそのまま引き取れる)




3. 機能一蘭

データを可視化して売上の表示(管理者側)


  ・手数料売上

  ・取引金額累計

  ・平均取引金額

  ・取引履歴



サービス利用関連

  ・サービスの登録・修正

  ・サービスの依頼

  ・サービスの口コミと評価



ユーザー登録関連

  ・ユーザーの登録・修正

  ・ログイン・ログアウト




4. セキュリティーや負荷分散について

4.1. PHP

エラー

✔ ファイルアップロード時のファイル名をランダム化


✔ 画像ファイルは予め画像ファイルしか選択できないようにする


✔ 画像ファイルアップロード時には予め指定した拡張子以外はエラー表示にする


✔ 画像ファイルには実行権限を与えないように変更する


ログインに3回以上失敗するとエラー表示させログインできないようにします


CSRF対策としてデータ登録のページにはワンタイムトークンを使用してエラー表示する


XSS対策としてすべて入力したものはhtmlspecialchars関数を使いサニタイジング化


入力フィルタでは正規表現でデータ(電話番号、メールアドレスなど)を確認


✔ 入力データ(サービス登録時)に「http」を含めるとエラー表示


✔ パスワードは暗号化して登録


4.2. AWS

AWS

ER図

テーブル名 説明
dat_member ユーザー情報
mst_product サービス情報
iraityu_sales 依頼の内容
iraityu_sales_product 依頼内容の詳細
ok_sales 依頼完了の内容
ok_sales_product 依頼完了の詳細

✔ パブリックサブネットへSSH接続する際の設定はマイIPのみでアクセスするようにする


✔ パスワードログインでは危険なのでルートアカウントのMFAを有効化


✔ 外部から直接アクセスできないようにRDSはプライベートサブネットに設置する


✔ DNSサーバーのドメイン登録の際は、プライバシーの保護を有効化


✔ 可用性と耐障害性を持たせるため複数のAZにサブネットを設置


✔ 可用性と負荷分散を持たせるためにサブネットグループを三層に分けます


✔ SSL証明書を作成しHTTPSを有効化(ドメイン認証型)


✔ EC2のEBSKMSで暗号化


✔ RDSをKMSで暗号化


5. 苦労した点

✔ EC2インスタンスにEBSをアタッチして再起動してもデバイス同士でパスが通っている状態を維持すること


2ホップSSHトンネルを使ってローカル環境から直接RDSにアクセスすること(キーペアのコピーを一時的にパブリックサブネットに置く方法)


✔ Dockerを構築すること



6. 今後の課題

インフラをコード化する。

今はterraformでEC2やS3などを1つずつ構築するような簡単なことしかできないため、実践レベルまで技術を上げていきます。


セキュリティやインフラについてもっと勉強する。

システム設計をする際はセキュリティについての知識が必須なため、まずはAWS認定セキュリティの取得を目指します。


7. 使用言語

  • フロントエンド
    • Bootstrapーvue
    • javascript
    • HTML/CSS

  • バックエンド
    • PHP

  • インフラ
    • AWS(EC2,EBS,KMS,S3,snapshot,SSM,ACM,RDS DB,VPC,ALB,)
    • Docker
    • nginx
    • mysql


8. 資料

8.1. 画像資料

8.2. 参考教材

8.3. セキュリティ教材


2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1