一般に、OAuth は、Web サービスがセキュアなリソースへのサード パーティ アクセスを承認する必要がある場合に使用されます。
ただし、独自のモバイル アプリと独自の Web サービスがあり、近い将来に API をサード パーティのアプリに公開しない場合、OAuth を使用してユーザーを認証する理由はありますか? この場合、OAuth を使用することの長所と短所は何ですか?
一般に、OAuth は、Web サービスがセキュアなリソースへのサード パーティ アクセスを承認する必要がある場合に使用されます。
ただし、独自のモバイル アプリと独自の Web サービスがあり、近い将来に API をサード パーティのアプリに公開しない場合、OAuth を使用してユーザーを認証する理由はありますか? この場合、OAuth を使用することの長所と短所は何ですか?
サードパーティと同じ方法で独自の API を使用する最大の利点の 1 つは、独自のシステムをドッグフーディングできることです。そうすることで、全体的にはるかに優れた製品につながる傾向があります。これは、通常、欠陥やしゃっくりをより早く解決できるためです。これらは直接影響を与え、サードパーティの消費者が問題を通知するだけではないためです。
OAuth を使用するもう 1 つの利点は、ホイールを再発明する必要がないことです。これは、すでに十分にサポートされているメカニズムです。ユーザーもそれにかなり慣れているため、別のルートに行った場合よりも、参入 (および維持) の障壁を低く保つことができます。
API をすぐに他の人に公開することを期待していないため、ご想像のとおり、利点は小さくなりますが、将来的に公開することを検討している場合は、自分で使用することを強制することで、ゲームよりも何マイルも先を行くことになります。ゲートのすぐ外です。
欠点の 1 つは、OAuth が他の可能な認証メカニズムよりも少し複雑であることです。