他カテゴリ

【ALIS】「OAuth認証」関連の用語説明

ゆうき's icon'
  • ゆうき
  • 2019/06/21 03:38
Content image


リンク:

アリスブログOAuth認証の説明まとめ > 当記事

 

◆ 【ALIS】「OAuth認証」関連の用語説明

ALISの「OAuth認証」を勉強する上で、覚えておいたほうが良い単語や用語をまとめておきました。

 

○ 留意事項

・筆者の「ゆうき」は「へっぽこハッカー」です。サーバーサイドの知識は全然ないので、説明に間違いがあるかもしれません。予めご了承下さい

・ALISの「OAuth認証」を扱うにあたって、ごく当たり前のことしか記述していません

 

 

◆ 用語

○ OAuth

ログインに用いるパスワードを使わないで、ネット上の認証(個人認証)を済ませる仕組みです。

 

パスワードを用いて外部サイトからALISの認証を済ませる場合「フィッシングサイト」や「外部サイトの管理者のパスワードの漏洩」などで、パスワードが盗まれてしまう可能性がありますが、

OAuth認証では「パスワードを渡さない」「認証を継続するかどうかはユーザーが決められる」という性質があることから、より安全に外部のサイトでALISの認証やAPIを利用することができたりします。

 

 

ただし、OAuth認証の扱いは結構面倒です。サーバー関連の知識が十分にないと扱えないので、始めてみたい方はまず、

から勉強してみることをおすすめします。

 

 

○ フロントエンド(クライアントサイド)

Webのページ等の情報のうち、視覚的に確認できる内容のこと。

基本的には、HTML、CSS、(通常の)JavaScriptのデータなどがこれに該当します。

 

クライアントサイド側の情報は、ユーザー側でも確認することができるため、ここに「Client Secret」や「access_token」等の変数の情報を保持させてしまうと、情報漏えいにつながる危険性があります。

重要な情報は、決してクライアントサイドでは扱わないように心がけたいですね。

 

また、悪意あるユーザーによる「改変したコードによる攻撃」の可能性もありますので、サーバーサイドとのやり取りでは、ありとあらゆる攻撃手段を想定しておいたほうが良さそうです。

 

 

○ サーバーサイド

サーバー側で処理するもの。ユーザー側で確認することはできません

サーバーサイド言語である、phpや、Node.js(JavaScriptアプリケーションのプラットフォーム)などがこれに該当します。

 

サーバーサイドは(バグらせない限り)安全なので、OAuth認証の処理の殆どは、こちらで済ませたりします

(……なお、サーバーサイドで何かを処理するためには、当然サーバーが必要です)

 

 

○ JavaScript

フロントエンドとサーバーサイドの両方に対応している便利なスクリプト言語。

この記事を書いた時期(2109-06-21)では、かなり人気の言語です。ALISのOAuth認証の公式ドキュメントも、JavaScript(Node.js)で構築されています

 

・処理について

HTMLに直接記載、HTMLから普通にJSファイルを呼び出した場合 → フロントエンド

Node.jsをサーバーにインストールした後、サーバー側でJSファイルを起動、もしくは、require関数で呼び出し等 → サーバーサイド

(サーバーをレンタルサービスの中には、既にNode.jsがインストールされていることもあります)

 

JavaScriptを利用する上で注意してほしいのが「通常のJavaScript用の関数」と「Node.js用の関数」ですかね。

例えばですが、フロントエンド側でJavaScriptを動かしている場合だと、(基本的には)「Node.js用の関数」を利用することはできません。

 

 

○ Node.js

サーバーサイドで動作するJavaScriptです。

 

OAuth認証をJavaScriptで動かすのであれば、多くの処理は「Node.js」に依存します。

……「Node.js」の仕組みやルールを良く覚えずに、公式のALISのOAuth認証のコードをいじると、よくわからないことやエラーが多発するので、先に「Node.js」に関することを多少勉強しておきたいです。

 

 

○ API(Web API)

サーバーに関することを含めて、とてもわかりやすく説明してくれている記事があるので、こちらの記事の閲覧を推奨。

 

超簡潔に述べると「どのプログラム言語でも利用できる関数」です。

ALISの場合は、レスポンスデータが「JSON」になっているので、ALISのAPIを叩いたときは、送られてきた「JSON」データを「使用している言語」で読み込みます(基本は辞書型)。

 

 

○ クッキーとセッション

公式ドキュメントでは単語が軽く出てきている程度ですが、ALISのOAuth認証を利用するときは、クッキーとセッションの機能も使用する必要があるので、説明がわかりやすい記事をリンクで貼っておきます。

 

・その1

 

・その2

 

簡潔に述べると、クッキーは、クライアントの情報とか(変数)をクライアント側(クライアントのブラウザソフト)に保持。

セッションは、クライアントがブラウザを閉じるまで、(クッキーを使ったIDの識別で)サーバー側に情報を保持、ですかね。

 

クッキーの場合は、データが改竄される可能性もなくはないので、(認証キーなどの)重要なデータの場合は、セッションで保存しておきます。

 

 

◆ その他

ALISのOAuth認証のドキュメントを読むにあたって、よくわからないことがあったら、

・その単語をグーグル検索

「単語 + Node.js」でグーグル検索

のどちらかを行えば、求めている答えが見つかりやすいと思います。

 


 

「OAuth認証の説明まとめ」に戻る

 

 

◆ 「ゆうき」のツイッター

 

 

Supporter profile icon
Article tip 1人がサポートしています
獲得ALIS: Article like 18.50 ALIS Article tip 3.00 ALIS
ゆうき's icon'
  • ゆうき
  • @yuuki

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
他カテゴリ

機械学習を体験してみよう!(難易度低)

Like token Tip token
124.82 ALIS
Eye catch
他カテゴリ

警察官が一人で戦ったらどのくらいの強さなの?『柔道編』 【元警察官が本音で回答】

Like token Tip token
114.82 ALIS
Eye catch
グルメ

バターをつくってみた

Like token Tip token
127.90 ALIS
Eye catch
トラベル

わら人形を釘で打ち呪う 丑の刻参りは今も存在するのか? 京都最恐の貴船神社奥宮を調べた

Like token Tip token
486.35 ALIS
Eye catch
トラベル

無料案内所という職業

Like token Tip token
84.20 ALIS
Eye catch
クリプト

Bitcoin史 〜0.00076ドルから6万ドルへの歩み〜

Like token Tip token
947.13 ALIS
Eye catch
クリプト

17万円のPCでTwitterやってるのはもったいないのでETHマイニングを始めた話

Like token Tip token
46.60 ALIS
Eye catch
クリプト

NFT解体新書・デジタルデータをNFTで販売するときのすべて【実証実験・共有レポート】

Like token Tip token
121.79 ALIS
Eye catch
他カテゴリ

テレビ番組で登録商標が「言えない」のか考察してみる

Like token Tip token
26.20 ALIS
Eye catch
クリプト

Bitcoinの価値の源泉は、PoWによる電気代ではなくて"競争原理"だった。

Like token Tip token
159.32 ALIS
Eye catch
トラベル

梅雨の京都八瀬・瑠璃光院はしっとり濃い新緑の世界

Like token Tip token
216.64 ALIS
Eye catch
他カテゴリ

警察官が一人で戦ったらどのくらいの強さなの?『柔道編』 【元警察官が本音で回答】

Like token Tip token
114.82 ALIS