背景: SMS API サービスを作成しようとしています。開発者には、開発者 ID と、開発者アカウントに割り当てられた API シークレット キーがあります。開発者は、API への呼び出しを発行するアプリを作成します。ただし、呼び出しを発行するアプリケーションを最初に検証する必要があります。
問題: 私が抱えている主な問題は、認証に関するものです。私はOAuthについて読んで、ほとんど理解しました。このプレゼンテーションを読みました(スライド 71-82)。すべての OAuth 記事は、OAuth の「ダンス」または「三角関係」について語っています。私の問題は、私の場合、適切な三角形が表示されないことです。または、より良い言い方をすれば、三角形は完全ではないようです。
つまり、LinkedIn の場合、ユーザーが LinkedIn アカウントを Twitter に関連付けるのに役立つアプリを作成しようとしている場合、OAuth は完全に理にかなっています。LinkedIn は、ユーザーに代わって Twitter からリソースを取得する必要があるためです (ユーザーは TWITTER アカウントを持っているため)。私の場合、消費者だけが私のサービスに登録された開発者アカウントを持っています。エンドユーザーには、消費者が代わりに尋ねる資格情報がありません。では、どうすれば Oauth を実装できますか? では、消費者はプロバイダーに何を尋ねますか? 「気をつけて、ここに来ますか?」とのみ記載されますか?アクセストークンと引き換えにリクエストトークンを要求しない限り、それはかなり無意味に思えます。ただし、この場合、エンド ユーザーはアカウントを持っていないため、この手順は役に立たないように見えます。
したがって、この認証の問題を解決する方法がわかりません。API を使用している特定のクライアントにトークンを関連付けるのに役立つように、PHP セッションの使用について考えてみました。しかし、REST/OAUTH の純粋主義者は、認証におけるセッションの使用について意見が分かれているようです。彼らは、OAuth はそれ自体が証明された標準であり、私自身のあいまいなスキームを考え出す代わりに使用すべきものであると主張しています。