タグ

apiと認証に関するikosinのブックマーク (3)

  • 未ログインでも叩けるAPIエンドポイントにレートリミットを導入する

    先日だれでもAIメーカーというWebサービスをリリースしました。このサービスは例によってOpenAI APIを使っており、トークンの使用量がランニングコストに大きく影響します。 また、気軽に使ってもらえるよう未ログインでも使用できる仕様にしているため、気をつけないと悪意のある人に大量にトークンを使用されてしまう可能性があります。 ノーガードだとどうなるか 例えば、POST /api/askという「リクエストbodyのpromptの値を取り出し、OpenAI APIのChat Completionsに投げる」という単純なエンドポイントを作ったとします。 「未ログインでも使ってもらいたいから」と認証を一切しなかった場合どうなるでしょうか? 悪意のある攻撃者に見つかれば、promptを上限ギリギリの長さの文章に設定したうえで、/api/askに対してDoS攻撃するかもしれません。 トークンを大量

    未ログインでも叩けるAPIエンドポイントにレートリミットを導入する
  • Retrofit 2で使うBacklog APIとは--Kotlinで作るAndroidアプリの場合 | 株式会社ヌーラボ(Nulab inc.)

    Backlog APIを使えば、クライアントアプリケーションがBacklogの課題を閲覧・更新したり、プロジェクトを管理したりできるようになります。例えば、AndroidアプリをBacklog APIと連携させることで、アプリから課題の作成・編集ができるようになります。 今のところAPIとやりとりする公式な手段は、Javaのライブラリであるbacklog4jを使う方法があります。しかし、公式ライブラリを経由しないでAPIを使う場合や、APIの一部の機能だけを必要としている場合は、Retrofitライブラリの助けを借りることができます。ブログでは、Android アプリの作成を目的に、ライブラリは Retrofit 2 、APIは Backlog API 、プログラミング言語に Kotlin を用いた場合の手順を解説します。 Retrofitとは Retrofitは型安全なHTTPクライア

    Retrofit 2で使うBacklog APIとは--Kotlinで作るAndroidアプリの場合 | 株式会社ヌーラボ(Nulab inc.)
  • 認証を含む API 開発で検討すべきこと - ボクココ

    ども、@kimihomです。 API に関する基礎的な話で、なぜ API が重要なのか、APIの実装で注意する点について記述した。 今回はAPI開発において最も頭を悩ます、認証の問題について考えてみたい。 API における認証 よくあるログインが必要なページを考えてみていただきたい。 通常のWebアプリケーションであれば、Cookieという仕組みを使って毎回Webサーバーにアクセスするときにsession idというものを送信し、それとユーザー情報を紐付けたデータを取ってくることで、どんなユーザーからリクエストが来たのかをWebアプリケーション側で判断することができる。これにより、私たちはいつも閲覧しているWebアプリケーションが自分専用の画面として見れるようになっている。 これがAPIになると話は違ってくる。Cookieという仕組みが使えないのである。ということで、なんとかしてAPIにア

    認証を含む API 開発で検討すべきこと - ボクココ
  • 1