ページ 11

C++のコンソールアプリケーションでグローバルIP認証

Posted: 2016年4月02日(土) 22:20
by corpus
つい先月程からプログラミングを学び始めた初心者ですが、さっそく行き詰ってしまいましたのでお力添えをお願いしたく書き込みさせて頂きます。プログラムはC++のコンソールアプリケーションです。
質問内容はグローバルIP認証の実装方法です。

どのようなコードでこの処理ができるのか教えて頂けないでしょうか?
また、利用者は数人の予定です。
流出防止の為に簡単な認証を施したいと思いグローバルIPでの認証方式を思いつきました。
固定アドレスにしていない利用者に対しては随時テキストを更新するという手法にしようと考えております。

よろしくお願い致します。

Re: C++のコンソールアプリケーションでグローバルIP認証

Posted: 2016年4月03日(日) 01:35
by YuO
まず,WinInetに関する一次情報。
Windows Internet
ここから,About系やUsing系の文書を読んで,使い方を調べます。
今回だと,About -> HINTERNET Handlesで簡単な方法は調べられるかと。
そこの記述と,各APIの説明にあるように,InternetOpen -> InternetOpenUrl -> InternetReadFile -> InternetCloseという流れになります。

さて,そもそもの方法論ですが,認証をしたいのであればサーバー側で行うようにした方がよいですし,
グローバルIPではなく,ユーザー名とパスワードを使った認証 (可能であればSSHのような,暗号を利用した認証) にした方がよいでしょう。
ユーザー名やパスワードは,初回入力後はCryptProtectDataなどを利用して保存しておいて自動でログインするようにすれば,
ユーザーは2回目以降はログインを認識する必要がありませんし,グローバルIPが変化してもそのユーザーは使い続けることが出来ます。
オフトピック
なんかデジャブ……。
http://dixq.net/forum/viewtopic.php?f=3&t=14920
グローバルIPで認証,しかも認証を行うのがクライアントというのは,穴だらけに見えて仕方が無いのだけれども,初心者が陥りやすい罠,なのかな……。

Re: C++のコンソールアプリケーションでグローバルIP認証

Posted: 2016年4月04日(月) 08:31
by corpus
お返事遅れまして申し訳ありません。

ご回答ありがとうございます。
実はそのスレッドがグーグルで検索した際にヒットしこちらを発見しました。

サーバー側で処理をした方が良い事はわかるのですが、サーバーの用意にお金もかかりますし何より知識に不安があるものでクライアントで取り繕えないかと思った次第です。
利用者も知人数名なので。
回答して頂いたリンク先を参考にどうにか実装できました。
ありがとうございました!