3

Google ドライブ SDK のドキュメントによると、カスタム アプリケーションを Google アカウントに登録して情報を取得する必要がclient-idありclient-secretます。これらを使用して、ユーザーがアクセス/リフレッシュ トークンを取得するためのリンクを作成できます。

私が読んだいくつかの入門ガイドによるとoAuth、クライアントの秘密情報は、場合によっては秘密に保管する必要があり、場合によっては秘密に保管する必要があります。私はJavaでMavenプラグインを構築していますが、この場合、値を秘密にすることはほとんどできないようです.

クライアント シークレット情報を含むコードをオープン ソースとして公開してもよろしいですか? または、それは私にとって潜在的なリスクを意味しますか? そして、それがうまくいかない場合、クライアントシークレットの値を開示せずに他の人がプラグインを使用できるようにするにはどうすればよいですか?

4

3 に答える 3

3

OAuth 2.0 for Installed Applicationsに関する Google のドキュメントを参照してください。

Google OAuth 2.0 エンドポイントは、デバイス (モバイル、Mac、PC など) にインストールされているアプリケーションをサポートします。これらのアプリケーションは個々のマシンに分散されており、これらのアプリケーションは秘密を保持できないと想定されています。

秘密を解放しても問題ないはずです。唯一のリスクは、何人かの悪意のあるユーザーがすべてのクォータを「使い果たす」ことです。ユーザーごとのクォータは、この問題が発生した場合に軽減するのに役立つ場合があります。

于 2013-09-16T13:37:14.440 に答える
1

トークンなしでコードをリリースし、あなたのコードを使用しているユーザーが独自のコードを取得する方法を説明してください。そうしないと、人々があなたのものを悪用したり、他のプロジェクトにコピーしたりする可能性があります。それ以外の場合は、クォータを焼き付けることができます。また、それが他のアプリにコピーされた場合、許可ダイアログがユーザーにポップアップ表示されます (アプリ名とロゴが表示されます)。

于 2013-09-16T15:03:48.803 に答える