質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
OAuth 2.0

OAuth 2.0(Open Authorization 2.0)は、APIを通して保護されたリソース(サードパーティのアプリケーション)へアクセスする為のオープンプロトコルです。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Authentication

Authentication(認証)は正当性を認証する為の工程です。ログイン処理等で使われます。

Q&A

1回答

5581閲覧

特定の端末からしかアクセスを受け付けないWEB APIの認証について

takenyaan

総合スコア119

OAuth 2.0

OAuth 2.0(Open Authorization 2.0)は、APIを通して保護されたリソース(サードパーティのアプリケーション)へアクセスする為のオープンプロトコルです。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Authentication

Authentication(認証)は正当性を認証する為の工程です。ログイン処理等で使われます。

2グッド

4クリップ

投稿2017/01/28 11:52

アプリケーションのバックエンドサーバから呼出される(インターネットに公開しない)WEB APIを開発しています。
内部犯の脅威を考慮した場合に、このようなAPIの認証についてどのように考えるべきでしょうか。

ネットワークのレイヤでは特定の内部サーバからしかAPIアクセスできないよう制限を設ける事になると思いますが、
アプリケーションとしてどのような認証を行うべきか、少し混乱しています。
呼出元がユーザではなく、プログラムとなるため、認証の考え方が変わってくるのかなと思うのですが、
整理ができておりません。

「認証」、「認可」のそもそもの定義を鑑みると今回のケースは認証は不要で認可ができればいいのでしょうか?
・Basic認証
・クライアント証明書による認証
・独自のトークン払い出し
・Oauth

などなど様々な方法で実現はできそうなのですが、
この当たりをどのように考えたらよいのか、ご教示いただけますと幸いです。

search_search👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

もし、apiを叩きたい元のアプリケーションが、webapiと同一の環境で実行されるのならば、そもそも外へポートを開放せずにループバックでapiを使うことができますね。

そうではなく、apiを提供するサーバーが同じLANの中に居る別さーばーの場合は、静的NATさえ設定しなければLANの外からはアクセスできないので心配ありません。

ただ特定の端末からのみならば、ファイアウォールでipを指定してポートへのアクセスを弾けば大丈夫です。

とりあえずもう少し詳しいシステム構成を教えていただければ、もう少し的確な回答ができるかもしれません。

投稿2017/01/28 15:34

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問