- 1 名前:デフォルトの名無しさん [2020/11/27(金) 10:07:17.73 ID:d9w49I3I.net]
- この板はプログラムを作る人のための板です。
あらゆる質問はまず スレ立てるまでもない質問はここで スレにしてください。 【前スレ】 スレ立てるまでもない質問はここで 154匹目 mevius.5ch.net/test/read.cgi/tech/1599472611/l50
- 930 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 13:39:50.84 ID:FlctPZ3K.net]
- なにもフロントの裏側のCRUDのAPI作るだけがバックエンドじゃないだろ
そういうのはフロントの担当が兼業してる場合も多い 専業のバックエンドエンジニアってもっと後方にある内部的なコアな部分とか、社内の業務プロセスと絡む部分であったりとか、バッチ処理などのデータフローを面倒見たりする
- 931 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 13:46:06.90 ID:VGvFnf+A.net]
- >>927
まじで?どうやって管理してんだろ… 悪い奴がブラウザの開発者ツールでDBにアクセスしようとしてきたら、どうやって対応するのか 前から気にはなってたんだ
- 932 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 13:50:58.88 ID:lKN3rSiF.net]
- >>930
実際にバックエンドはめちゃくちゃ仕事減ったしコード量が圧倒的に少なくなった なぜなら業務ロジックがほぼすべてjsになったからバックエンドは大部分はDBから出し入れするだけ もちろん全てではないけど97%くらい減った印象
- 933 名前:デフォルトの名無しさん [2021/02/19(金) 14:04:36.78 ID:IIFo83yT.net]
- >>928
>>931 firebase auth
- 934 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:04:48.81 ID:RipgTCDE.net]
- フロントとバックエンドをあわせた全体のコードは
逆に膨れ上がってるけどなw
- 935 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:08:03.18 ID:VGvFnf+A.net]
- >>933
認証じゃなくて、読み書き命令のこと 例えばゲームデータをfirestoreで管理してて、 ユーザーが開発者ツールでfirestoreにアクセスし、チートデータを書き込むのを防ぐにはどうする?
- 936 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:09:31.00 ID:ls1Kk0Go.net]
- それも含めてでしょ
- 937 名前:デフォルトの名無しさん [2021/02/19(金) 14:10:29.02 ID:IIFo83yT.net]
- >>935
firebase authパスしないアプリはアクセスできない firebase console入られたら終わるけど
- 938 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:13:09.65 ID:VGvFnf+A.net]
- ユーザーはJavaScriptすら書き換えられる
DB丸出しで不正処理を防げるとはとうてい思えないんだが、不思議だ
- 939 名前:デフォルトの名無しさん [2021/02/19(金) 14:16:03.48 ID:IIFo83yT.net]
- >>938
丸出しなわけないじゃんwクライアントライブラリがワンタイムトークンとかでやりとりしてるんだよ
- 940 名前:デフォルトの名無しさん [2021/02/19(金) 14:22:18.99 ID:IIFo83yT.net]
- ガラパゴスかココはw
- 941 名前:デフォルトの名無しさん [2021/02/19(金) 14:28:16.97 ID:DA4o8x5V.net]
- XML関連の質問ってここでしていい?
- 942 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:40:22.23 ID:VGvFnf+A.net]
- >>939
いやユーザーはそのトークンにアクセスできるだろ
- 943 名前:デフォルトの名無しさん [2021/02/19(金) 14:40:52.75 ID:IIFo83yT.net]
- >>941
いいよ、JSON使ってほしいけど
- 944 名前:デフォルトの名無しさん [2021/02/19(金) 14:41:16.18 ID:IIFo83yT.net]
- >>942
出来ない
- 945 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:43:38.10 ID:nzMk3skW.net]
- XMLは昭和の人間しか使ってないから質問しちゃダメだよ
- 946 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 14:44:26.62 ID:VGvFnf+A.net]
- >>944
なんで? クライアントはユーザーの手の内だから、解析されるんじゃないか?
- 947 名前:デフォルトの名無しさん [2021/02/19(金) 14:44:55.42 ID:DA4o8x5V.net]
- https://i.imgur.com/9SwW3TX.png
XML Schemaで分からないことがあるので教えてください。 この画像の赤く囲った部分を1つにまとめて書く方法ってある? 想定しているXML(で記述されたファイル)はこんな感じ https://i.imgur.com/ro4PbbZ.png
- 948 名前:デフォルトの名無しさん [2021/02/19(金) 14:45:45.75 ID:IIFo83yT.net]
- >>945
んなことはないw 肺が痛いから少し寝るかな
- 949 名前:デフォルトの名無しさん [2021/02/19(金) 14:50:16.91 ID:IIFo83yT.net]
- >>947
親タグ作って並べれば? 配列にMappingするなら1個時に注意しないとだけど。 あと、実名には注意したほうがいいよw
- 950 名前:デフォルトの名無しさん [2021/02/19(金) 14:51:50.31 ID:IIFo83yT.net]
- >>946
解析してる間に使用期限が切れるので
- 951 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 15:00:25.79 ID:VGvFnf+A.net]
- つか、そうじゃなくて
authは本物に乗っかるんだよ で、更新処理のとこだけ改ざんする これどうやって対策してんの?
- 952 名前:デフォルトの名無しさん [2021/02/19(金) 15:08:46.20 ID:IIFo83yT.net]
- >>951
乗っかれないから、更新処理って何?
- 953 名前:デフォルトの名無しさん [2021/02/19(金) 15:12:32.72 ID:7+SCZqmi.net]
- 金額を1円に変更してお買い物できますか?
- 954 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 15:23:48.69 ID:VGvFnf+A.net]
- >>952
アプリ改ざんできても乗っかれない? どうやってんだろ、不思議だ 例えばさ クリックカウントゲームを考えてみて データベースには現在のカウントが保存されてる 沢山カウントを増やした人が勝ち クライアントがこんな処理をするとする DB接続 認証 カウント読み取り→x カウント書き込み←x+1 DB切断 もしクライアントが解析されてx+1の部分をx+100に改ざんされたら、どうなる? そんな感じ これをどうやって防いでるのか? 不思議でならない 本当に防げるなら、仕組みを知りたい
- 955 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 15:48:15.69 ID:lKN3rSiF.net]
- >>954
http通信の暗号化前に改ざんできるツールあるからそれでいくらでも変更できる js関係なく
- 956 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 17:53:03.84 ID:yv2d5Olu.net]
- >>954
そういうのは書き込みはCloud Function経由にするんじゃないかな
- 957 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 18:14:01.23 ID:sFHVuj7V.net]
- >>956
それもうバックエンドだよね
- 958 名前:デフォルトの名無しさん [2021/02/19(金) 18:59:36.62 ID:IIFo83yT.net]
- >>954
単純に、 認証 暗号化通信開始 カウント読み取り→x カウント書き込み←x+1 暗号化通信終了 だから出来ない 出来たら銀行アプリが作れない
- 959 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:02:22.22 ID:VGvFnf+A.net]
- >>958
でもそのx+1って式はクライアントに定義されてるんでしょ? なら改ざんの可能性はあるのでは?
- 960 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:03:51.90 ID:f4jLKR0B.net]
- >>958
メモリの値じゃなくて、コードを改竄する話な 銀行アプリは例外なく、仮にアプリを全部完全に解析されて改竄されたものが使用されたとしても不正はできないように、重要な操作はバックエンドで実装されている
- 961 名前:デフォルトの名無しさん [2021/02/19(金) 19:08:24.26 ID:IIFo83yT.net]
- >>960
コードの改竄なんかOSの信頼性で話が全く違うじゃん コード改竄されたら銀行アプリもIBMのモバイルプラットフォーム使っても無理だよ、アプリから口座番号渡してるし
- 962 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:11:02.76 ID:jlh3YQJK.net]
- >>961
んなわけないやろ 改竄したバージョンのコードを他人に配ることができるなら別だが、それは手元にあるものを改竄して手元で使うよりも遥かに難しい 改竄したアプリを自分で使ったところで他人のパスワードを知らなきゃ不正はできない
- 963 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:12:48.88 ID:fFbWPHDZ.net]
- チートがあるのだから防げてないのも
あるが重要なのは段階踏むよね 条件を満たしたらレベル上げる仕組みとか
- 964 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:22:10.00 ID:jlh3YQJK.net]
- >>961
ついでに教えといてやろう DBをフロントから直接弄らせる場合のセキュリティの考え方として、ユーザーは自分のデータしか触れないように認証サービスと連携してアクセス範囲を制限するのが一般的だ 例えばクラウド版Excelなんかはこれでも十分なわけだが、銀行アプリやゲームのチートなんかを考えれば容易にわかるように、自分のデータを触れるだけでも不正ができてしまうケースはとても多い その対策としては、一般的にはバックエンドのAPIを作るしかない
- 965 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:27:17.97 ID:VGvFnf+A.net]
- >>960
そうそう こういう構造なら安心なんだよね
- 966 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 19:30:27.17 ID:VGvFnf+A.net]
- >>964
なるほど 完全に個人が専有する類のデータならDB直接アクセスでもいいのかもね
- 967 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 20:06:49.73 ID:FlctPZ3K.net]
- ID:IIFo83yTにとっては良い勉強になったな
本職ではなくイキった学生であることを切に祈る
- 968 名前:デフォルトの名無しさん [2021/02/19(金) 20:24:08.56 ID:IIFo83yT.net]
- キャッシュカード券面撮影、文字認識とかして送ってたけど、改竄したアプリなんか実行できないから無問題なんだよね。
- 969 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 21:05:27.98 ID:B4GlCKY0.net]
- >>917
const float, return, // とか、これは、mruby か? mruby の本も出た。 mruby は、Ubuntu, C99/Ruby 併用 人工衛星イザナギ・イザナミなど、宇宙開発などで使っている
- 970 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 21:10:27.43 ID:FlctPZ3K.net]
- >>968
怖すぎる 別にこのスレで間違いを認める必要はないが、改竄されることを前提に一度自分のコードを見直すことを強く勧める
- 971 名前:デフォルトの名無しさん mailto:sage [2021/02/19(金) 21:22:33.74 ID:yv2d5Olu.net]
- 三井住友銀行系かな?
- 972 名前:デフォルトの名無しさん [2021/02/19(金) 22:18:34.17 ID:IIFo83yT.net]
- >>970
アプリ改竄なんかされてたらアプリなんかねーよwww
- 973 名前:デフォルトの名無しさん [2021/02/19(金) 23:19:31.86 ID:IIFo83yT.net]
- AWSのコンサルとかで食いたいダニが・・
- 974 名前:デフォルトの名無しさん [2021/02/19(金) 23:21:23.65 ID:IIFo83yT.net]
- >>970
キチガイなの?
- 975 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 02:31:29.14 ID:RpIwp9UD.net]
- ファビョんなって
- 976 名前:デフォルトの名無しさん [2021/02/20(土) 06:11:55.57 ID:Mzr1Xumx.net]
- もうserverlessに決まってんじゃんハゲ
- 977 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 07:27:54.09 ID:b7O3Qybq.net]
- やったこと無いんで聞くけどサーバレスってストアドプロシージャみたいな仕掛けって無くて直接にnosql叩かせるの?
- 978 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 09:14:22.46 ID:shY7JXBG.net]
- んなわけない
- 979 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 09:41:56.67 ID:b7O3Qybq.net]
- ストアドプロシージャあるのに何でサーバレスなの?
- 980 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 09:55:22.23 ID:xSEyIqRP.net]
- サーバーレスっていうのは自前サーバーレスといいう意味で
代わりにベンダーが作ったサービスを使うという意味です。 ベンダーは結局のところサービスをサーバーで動かしてるので 自前サーバーではなく他社サーバーを使うというのが サーバーレスという言葉の本当の意味です
- 981 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 10:15:32.96 ID:XAo6Ndyt.net]
- サーバはクラウドにあるけど管理や意識する必要が無い → サーバが無い
- 982 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 10:43:39.10 ID:BLU+mGu4.net]
- サーバーレスの流派って大きく分けて二種類あって
1. サーバーの管理やキャパシティを意識することなくサーバーでアプリケーションを実行する。 2. サーバーサイドのプログラミングをせずフロントだけ。バックエンドは出来合いのサービスを利用する。 1は例えばAWSならFargateやLambdaをバリバリ使った開発のような、サーバーサイドのプログラミングは普通にやるけど動かすサーバーを意識しないだけのも含む。 2は上で恥かいた子が言うようにフロントからFirestoreを直接触るようなスタイルだな。 サーバーレスというと一般的には1を指すことが多い。2は上でも批判されてる通り制限が強いため、ごく単純なシステムを除けば完全な実現は難しい。 NoSQLのストアドのような仕組みを使う方法もあるが、大抵はそれでも要件をカバーしきれなくて1の方法を併用することになる。
- 983 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 12:26:58.10 ID:oLEPAiI3.net]
- まあFirebaseのWebアプリだと部分的にCloud Functions (982でいう1の意味のサーバーレス) を使ってたりするから、
彼は職場の先輩のコードを見て区別がつかなくて全部フロントだと勘違いしたのかもね そうであってくれ
- 984 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 13:43:16.80 ID:shY7JXBG.net]
- サーバーレスってマネージドっていうけどレンタルサーバーみたいにルート権限なくて最初からnodeやらgoやらが複数バージョン入ってるってこと?
- 985 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 13:53:49.38 ID:euKvqbFp.net]
- サーバーレズ
- 986 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 15:06:38.93 ID:H6qVz7iC.net]
- 今の編成ってレヴ・オクタンだけは必須だよな
クリプト必須はにわか
- 987 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 15:11:20.96 ID:mf6pc6HB.net]
- >>984
基本はそう 最近はコンテナで自由にできるのも多い
- 988 名前:デフォルトの名無しさん [2021/02/20(土) 15:26:53.47 ID:6OuG14ix.net]
- 「クラウド」みたいなコマーシャル用語なんだな
- 989 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 15:38:16.31 ID:shY7JXBG.net]
- マネージド!ダサッ初心者かよ!
って時代だったのに
- 990 名前:デフォルトの名無しさん [2021/02/20(土) 16:03:04.48 ID:Mzr1Xumx.net]
- firestoreだとサーバーコード一切書く必要がないから、単純データ保存はめちゃ楽。
複雑なクエリは1000件とか引っ張ってから高階関数でやったほうが速い。
- 991 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 16:08:06.24 ID:jU5EkUEs.net]
- >>977
データベースにはストアド的な機能がなくて読み書きのAPIしかないのも普通にあるよ そもそもデータベース自体がサーバーで稼働してるんだからサーバーを使ってないシステムではない
- 992 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 16:13:16.30 ID:jU5EkUEs.net]
- >>990
1000件引っ張ってくる通信が無駄だからまともなシステムならサーバー側で集計する
- 993 名前:デフォルトの名無しさん [2021/02/20(土) 16:26:22.59 ID:Mzr1Xumx.net]
- >>992
gzipされてるからそんなのゴミ
- 994 名前:デフォルトの名無しさん [2021/02/20(土) 16:28:45.30 ID:8VUpuPZc.net]
- 基本的にはもうサーバサイドであれこれやる時代じゃ無いよな。
- 995 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 16:29:59.18 ID:BaJj3rnh.net]
- >>994
いやサーバーを用意しなくていいだけでサーバーサイドの開発は必要
- 996 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 17:06:42.99 ID:NfC5X95o.net]
- >>993
数行の関数をサーバーに置くだけで ユーザーの通信量もインフラの通信料も節約できるからやらないのはイキりさんだけだぞ
- 997 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 17:07:04.86 ID:vzghRPpi.net]
- サーバサイドはもう不要!
そして大容量を扱う際にエラーが起きまくるシステムが残りましたとさ……
- 998 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 17:18:38.61 ID:56yjs2OO.net]
- 次スレ
https://mevius.5ch.net/test/read.cgi/tech/1613809074/
- 999 名前:デフォルトの名無しさん [2021/02/20(土) 20:34:38.50 ID:Mzr1Xumx.net]
- >>996
通信量なんか気にする時代は終わったよ
- 1000 名前:デフォルトの名無しさん mailto:sage [2021/02/20(土) 20:39:18.76 ID:bCRO9pKe.net]
- イキりじゃなく単なるエアプだったか
- 1001 名前:1001 [Over 1000 Thread.net]
- このスレッドは1000を超えました。
新しいスレッドを立ててください。 life time: 85日 10時間 32分 1秒
|

|