[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

APIに関するYassLabのブックマーク (32)

  • OWASP Top 10 API Security Risks – 2023 - OWASP API Security Top 10

    APIs tend to expose endpoints that handle object identifiers, creating a wide attack surface of Object Level Access Control issues. Object level authorization checks should be considered in every function that accesses a data source using an ID from the user. Authentication mechanisms are often implemented incorrectly, allowing attackers to compromise authentication tokens or to exploit implementa

    YassLab
    YassLab 2024/12/12
    "Broken Object Level Authorization - APIs tend to expose endpoints that handle object identifiers, creating a wide attack surface of Object Level Access Control issues. Object level authorization checks should be considered in every function that accesses a data source using an ID from the user.”
  • 令和時代の API 実装のベースプラクティスと CSRF 対策 | blog.jxck.io

    Intro CSRF という古の攻撃がある。この攻撃を「古(いにしえ)」のものにすることができたプラットフォームの進化の背景を、「Cookie が SameSite Lax by Default になったからだ」という解説を見ることがある。 確かに、現実的にそれによって攻撃の成立は難しくなり、救われているサービスもある。しかし、それはプラットフォームが用意した対策の質から言うと、解釈が少しずれていると言えるだろう。 今回は、「CSRF がどうして成立していたのか」を振り返ることで、当にプラットフォームに足りていなかったものと、それを補っていった経緯、当にすべき対策は何であるかを解説していく。 結果として見えてくるのは、今サービスを実装する上での「ベース」(not ベスト)となるプラクティスだと筆者は考えている。 CSRF 成立の条件 例えば、攻撃者が用意した attack.examp

    令和時代の API 実装のベースプラクティスと CSRF 対策 | blog.jxck.io
    YassLab
    YassLab 2024/10/26
    “今回は、「CSRF がどうして成立していたのか」を振り返ることで、本当にプラットフォームに足りていなかったものと、それを補っていった経緯、本当にすべき対策は何であるかを解説していく。”
  • Rails APIモードでDevise Token Authがうまく動かない!?解決までの道のり - Qiita

    最近RailsAPIを作ろうと思って、Rails APIモードとDevise Token Authを使ってみたんですが、思わぬところでつまづいてしまいました。今回は、その問題を解決するまでの過程を、私なりにまとめてみました。 最初の状況 まず、こんな感じでプロジェクトを始めました: rails new my_api --apiAPIモードのRailsプロジェクトを作成 Gemfileにgem 'devise_token_auth'を追加 bundle install を実行 Devise Token Authの設定を行う ここまではスムーズに進んだんですが、rails s でサーバーを立ち上げて、routesを確認しようとブラウザから http://localhost:3000/rails/info/routes にアクセスしたら

    Rails APIモードでDevise Token Authがうまく動かない!?解決までの道のり - Qiita
    YassLab
    YassLab 2024/07/15
    “参考にしたサイト: Rails Guides: APIモードについて”
  • railsはapiガイドを見るのが一番良いかも

    けっこうガイドにも書かれているやん ガイドの方がわかりやすいから先にこっちを見て、足りなかったらapiドキュメント読むのが良さそう

    railsはapiガイドを見るのが一番良いかも
    YassLab
    YassLab 2024/06/05
    “けっこうガイドにも書かれているやん https://railsguides.jp/active_record_querying.html#条件 ガイドの方がわかりやすいから先にこっちを見て、足りなかったらapiドキュメント読むのが良さそう”
  • https://x.com/koichik/status/1796778428240416769

    YassLab
    YassLab 2024/06/01
    “GitHubにShopifyという2大Public GraphQL APIに関わってきたMarc-André Giroux氏でさえGraphQLはPublic APIで使うべきではないと考えてるのか…… むしろそれらに関わってきたからこそ、なのかな”
  • スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで - スタディサプリ Product Team Blog

    こんにちは。SREのkyontanです。Rubyが大好きなのでRubyの話をします。ちなみにリクルートはRubyKaigi 2024へGold Sponsorとして協賛しています! *1。ぜひ沖縄でお会いしましょう。 これはあるアプリケーションのメモリ消費量を示すグラフなのですが、まさかgemを入れ替えるだけでこんなに嬉しい変化が見られるとは思っていませんでした。今日はそんなgemの話をします。 話は遡って2023年4月のある日、インターネットを眺めていたところ、ShopifyがpitchforkというOSSを公開したという情報が目に留まりました。 調べてみると、どうやら著名なRackサーバー実装の1つであるunicornの派生版であり、メモリ使用量の削減に特化しているらしいのです。 github.com これはスタディサプリ小中高のあのリソースドカいマイクロサービス第一位である api

    スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで - スタディサプリ Product Team Blog
    YassLab
    YassLab 2024/04/02
    "松本で行われたRubyKaigi 2023に参加した際にはAfter Partyでbyroot氏とも対面で会話し、多分そのワークロードだとうまく動くと思う、みたいな会話 / 先は長そうだ……と思いつつpitchforkにissueを立ててみると、なんと40分で解決"
  • RESTful APIの記述標準化を目指す「Open API Initiative」をマイクロソフト、Google、IBMらが立ち上げ。Swaggerをベースに

    RESTful APIの記述標準化を目指す「Open API Initiative」をマイクロソフト、Google、IBMらが立ち上げ。Swaggerをベースに 10年以上前、XMLの登場に続いてXMLベースのAPIを記述する標準フォーマット「WSDL」が提唱されました。 WSDLにはAPIの仕様がマシンリーダブルな形で記述されており、APIを呼び出すためのプロトコルやデータフォーマットをあらかじめ知ることができます。WSDLを利用することで、APIをコールするためのコードを自動生成することが可能でした。 しかしXMLベースのAPIは期待されたほど普及せず、現在ではよりシンプルなRESTful APIが事実上の標準となっています。 そしてRESTful APIのためのWSDLとも言うべき、RESTful APIのインターフェイスを記述するための標準フォーマットを推進する団体「Open AP

    RESTful APIの記述標準化を目指す「Open API Initiative」をマイクロソフト、Google、IBMらが立ち上げ。Swaggerをベースに
    YassLab
    YassLab 2024/01/15
    "RESTful APIのインターフェイスを記述するための標準フォーマットを推進する団体「Open API Initiative」が、The Linux Foundationの協力のもとでMicrosoft、Google、IBM、Intuit、PayPal、3Scale、Apigee、Capital One、Restlet、SmartBearらによって結成"
  • YouTube 埋め込みプレーヤーとプレーヤーのパラメータ  |  YouTube IFrame Player API  |  Google for Developers

    YouTube 埋め込みプレーヤーとプレーヤーのパラメータ コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 概要 このガイドでは、アプリケーションに YouTube プレーヤーを埋め込む方法と、YouTube 埋め込みプレーヤーで使用できるパラメータの定義を紹介します。 IFrame URL にパラメータを追加すると、アプリケーション内での再生方法をカスタマイズできます。たとえば autoplay パラメータによる動画の自動再生や、loop パラメータによる動画の繰り返し再生が可能です。enablejsapi パラメータを使用して、プレーヤーを IFrame Player API によって制御することもできます。 このページには、任意の YouTube 埋め込みプレーヤーでサポートされるすべてのパラメータが定義されています。パラメータをサポートするプレーヤ

    YassLab
    YassLab 2023/12/30
    “アプリケーションに YouTube プレーヤーを埋め込む方法と YouTube 埋め込みプレーヤーで使用できるパラメータの定義を紹介 / IFrame URL にパラメータを追加すると、アプリケーション内での再生方法をカスタマイズできます”
  • X(Twitter)にバッキバキに打ちのめされて始まった2023年が終わりそうなので今年をいろいろ総括する話|Togetter(トゥギャッター )

    みなさん、こんにちは。Togetterを運営するトゥギャッター社の代表のyositosiです。2023年も年末で仕事納めということで、今年を振り返るコンテンツを残しておこうと思います。主にXとネットメディアを取り巻く話題を中心にお届けします。 1月:サードパーティー製Twitterクライアントの一斉締め出しTwitterが他のSNSに比べて、圧倒的に優れていた点に、機能の大部分をAPIという形で解放して、多くの開発者が優れた関連アプリを作れたことにあると思います。特に、その初期においては、ガラケーやスマホ向けのアプリはTwitterオリジナルではなく、第三者が作ったアプリで支えられていました。 その後、公式のアプリとして買収されたものもありましたが、引き続き多くの非公式アプリが、ユーザのTwitter体験をそれぞれに最適化していたのは間違いないと思います。 とはいえ、体の機能追加とともに

    X(Twitter)にバッキバキに打ちのめされて始まった2023年が終わりそうなので今年をいろいろ総括する話|Togetter(トゥギャッター )
    YassLab
    YassLab 2023/12/29
    "その他のメディアを見ても、その広告枠の数や貼り方を見れば以前に比べて厳しい経営にあるであろうことは手に取るようにわかります。ネットワーク広告の事業者や広告に依存している企業の決算を見ても惨憺たる状況"
  • Gyazo

    OverviewThe Gyazo API can be used in a wide array of apps to upload new images, show a Gyazo user’s images, and more. It provides a RESTful API for HTTP requests and returns a response in JSON. This should be familiar to anyone who has used major APIs before such as Amazon S3 and Twitter. Sample$ curl -i https://upload.gyazo.com/api/upload -F "access_token=YOUR_ACCESS_TOKEN" \ -F "imagedata=@/home

    YassLab
    YassLab 2023/12/28
    “GyazoAPIではHTTPリクエストによるRESTfulなAPIを提供し、JSON形式のレスポンスを返すので、TwitterやAmazonS3などのAPIを触ったことがある方なら馴染みのある形式ですぐにお使い頂けます!”
  • 【Rails】(メモ)React + Rails(API)でよく考えずに skip_before_action :verify_authenticity_token するのは危なそう - my_back_pages

    React + Rails(API)構成でのアプリ開発について学習している中で、下のようなコードと出会いました。 # app/controllers/application_controller.rb class ApplicationController < ActionController::Base include DeviseTokenAuth::Concerns::SetUserByToken skip_before_action :verify_authenticity_token end RailsのCSRF攻撃対策 Railsは、CSRF攻撃対策のためのトークンを生成し、セッションで_csrf_tokenというキーでユーザーに保持させる。 デフォルトでは、rails newで自動生成されるビューであるapplication.html.erb上のメタタグ<%= csrf_me

    【Rails】(メモ)React + Rails(API)でよく考えずに skip_before_action :verify_authenticity_token するのは危なそう - my_back_pages
    YassLab
    YassLab 2023/12/06
    “トークンを自動生成するビューがないのであれば、「トークンを生成してクライアント側に渡す -> 受け取ったクライアントは以後そのトークンをリクエストにのっける」という仕組みを自前で作る必要がある”
  • CoderDojoとOSS: 子どもたちの未来を形作るための小さな一歩|高玉 広和

    CoderDojo Advent Calendar 2023 2日目の記事です。 2023年をふりかえってみて、一番ワクワクした体験を共有します。 大人にも学びがあるCoderDojoCoderDojoは非営利のプログラミングクラブです。CoderDojoを略して道場、道場に集まる子どもたちをニンジャ、サポートする大人たちをメンターと呼びます。私はプログラミング教育に興味があり、2023年6月にメンターとしてはじめて参加しました。 メンターの役割はプログラミングを教えることではありません。メンターの役割と心得はCoderDojo吉祥寺のメンターをする人へにまとまっています。コンピューターはガチャガチャいじっても意外に壊れません。ニンジャが試行錯誤を繰り返すうちに、自分なりの解決策を見つけることもあります。自分の工夫で動かすことができた!という貴重な成功体験を、横から奪ってはいけません。私は

    CoderDojoとOSS: 子どもたちの未来を形作るための小さな一歩|高玉 広和
    YassLab
    YassLab 2023/12/02
    "自分のためにCoderDojoを楽しもうと思い自分のためにカレンダーを作りました / その楽しみを他の人にも / 結果的にCoderDojo JapanのイベントAPIを進歩 / こうした小さな貢献の積み重ねが世界を良くしているのだと信じています"
  • Use Cases, Tutorials, & Documentation

    <g> <g> <defs> <rect id="SVGID_1_" x="-468" y="-1360" width="1440" height="3027" /> </defs> <clippath id="SVGID_2_"> <use xlink:href="#SVGID_1_" style="overflow:visible;" /> </clippath> </g> </g> <rect x="-468" y="-1360" class="st0" width="1440" height="3027" style="fill:rgb(0,0,0,0);stroke-width:3;stroke:rgb(0,0,0)" /> <path d="M13.4,12l5.8-5.8c0.4-0.4,0.4-1,0-1.4c-0.4-0.4-1-0.4-1.4,0L12,10.6L6.2

    Use Cases, Tutorials, & Documentation
    YassLab
    YassLab 2023/10/30
    "Find the right access for you / Free - For write-only use cases and testing the X API / Rate limited access to v2 posting and media upload endpoints / 1,500 posts per month - posting limit at the app level / 1 app / Login with X / Basic - $100/month - 10,000 posts per month - read-limit rate cap"
  • GitHub - sferik/x-ruby: A Ruby interface to the X API.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - sferik/x-ruby: A Ruby interface to the X API.
    YassLab
    YassLab 2023/10/30
    "This library is a rewrite of the Twitter Ruby library. Over 16 years of development, that library ballooned to over 3,000 lines of code ... / the benefits of more code must be weighted against the benefits of less: Less code is easier to maintain. Less code means fewer bugs. Less code runs faster."
  • RESTful APIのURI設計(エンドポイント設計) - Qiita

    HTTPメソッドとURI HTTPメソッドとエンドポイントは切っても切れない関係にある。URIがリソースを表すものだとすると、HTTPメソッドは操作(何をするか)を表すものである。1つのURIのエンドポイントに異なるメソッドでアクセスすることで、情報を取得するだけでなく情報を変更したり、削除したり等のさまざまな操作を行うようにすることで、リソースとそれをどう扱うかをきちんと分離して扱うことができる。これはHTTPメソッドの来の考え方に合致しており、Web APIではこの考え方に沿って設計を行うことが主流となっている。各HTTPメソッドについては以下を参照。 リソース指向アーキテクチャの統一インターフェース URI設計 リソースにアクセスするためのURI設計の注意点 1.複数形の名詞を利用する 基的にリソースは「集合」を表すものであるため、複数形の方が適切である。また、HTTPのURIは

    RESTful APIのURI設計(エンドポイント設計) - Qiita
    YassLab
    YassLab 2023/08/25
    "ただ、URI中のドメイン名はハイフンは許可されているがアンダースコアは使えないため、迷ったらドメイン名と同じルールでURI全体を統一するためハイフンでつなげるのが望ましい / users/profileのように区切る方が望ましい"
  • OpenAI APIをRubyアプリケーションに統合する(翻訳)|TechRacho by BPS株式会社

    概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Integrate OpenAI API in Ruby applications | Saeloun Blog 原文公開日: 2023/05/22 原著者: Gowsik Vivekanandan サイト: Saeloun Blog OpenAI APIの情報は移り変わりが早いのでご注意ください。最新の情報については以下などの公式情報をご覧ください。 参考: Guides | OpenAI Help Center 参考: GPT best practices - OpenAI API なお、サンプルコードにあるOpenAI APIの出力結果の日語訳には、OpenAI APIによる機械翻訳の出力結果を使っています。 🔗 ChatGPTについて ChatGPTは、OpenAIが開発した人工知能AI)チャットボットであり、人間

    OpenAI APIをRubyアプリケーションに統合する(翻訳)|TechRacho by BPS株式会社
    YassLab
    YassLab 2023/07/31
    "回答をストリーミングする / streamパラメータには、生成される回答のチャンクのストリームを出力するprocを渡せます。これで、gistのガイドに沿ってRailsアプリ内でChatGPTのようなメッセージのストリーミングを設定できる"
  • ChatGPTのCode Interpreterはどこまでできるのか

    この記事は2023/07/09時点での内容になります。今後のChatGPTのアップデートによってこの記事での検証結果は変化する可能性があります。 先日(2023/07/07)、OpenAIの公式Twitterアカウントから以下のアナウンスがあった。 そこで自分のアカウントの設定画面を見てみると、どうもすでにCode Interpreterがすでに利用できるようだったので、何ができて何が出来ないのか遊んでみた。 ChatGPTのCode Interpreterとは そもそもこのCode Interpreterは何ができるのか、さきほどのツイートには以下のように書かれている。 It lets ChatGPT run code, optionally with access to files you've uploaded. You can ask ChatGPT to analyze data

    ChatGPTのCode Interpreterはどこまでできるのか
    YassLab
    YassLab 2023/07/14
    “Code Interpreterは外部のネットワークから隔離されたサンドボックス環境 / そのため、以下のような処理が必要なPythonのソースコードは実行出来ない / pip installなど外部ライブラリのインストール / Web APIを呼び出す”
  • ChatGPT APIで「素人質問で恐縮ですが…」と鋭い質問してくるSlack Botを作った - Platinum Data Blog by BrainPad

    記事は、当社オウンドメディア「Doors」に移転しました。 約5秒後に自動的にリダイレクトします。 このたびブレインパッドは、LLM/Generative AIに関する研究プロジェクトを立ち上げ、この「Platinum Data Blog」を通じてLLM/Generative AIに関するさまざまな情報を発信をしています。 今回は、議論を活性化する質問をLLM技術によって生成できないかと考え、『この分野は素人なのですが…Bot』を開発した内容を、ご紹介します。 こんにちは、アナリティクスサービス部の藤田です。 ブレインパッドでは、有志による社内勉強会がとても活発で、ほぼ毎日何かしらの勉強会が開かれています。社内勉強会では、参加者による質問が重要な役割を果たします。質問によって、質問者は理解を深めることができ、他の参加者や発表者にとっても新しい視点を得ることができます。しかし、参加者が多い

    ChatGPT APIで「素人質問で恐縮ですが…」と鋭い質問してくるSlack Botを作った - Platinum Data Blog by BrainPad
    YassLab
    YassLab 2023/06/19
    “大まかなつくりとしては、Slackbotにメンションをつけて発表資料となるドキュメントのURLを送ると、内部で生成した質問をリプライで返してくれる、というツールになっています。 出力時間は15秒程度”
  • [ChatGPT]OpenAI APIでGPT-3.5系のモデル「gpt-3.5-turbo」と「text-davinci-003」をLambdaで試してみた | DevelopersIO

    はじめに 巷で人気のChatGPTAPI が提供されていますので、Lambdaを使って試してみます。 ChatGPTは、GPT-3.5系のモデルの一つである「gpt-3.5-turbo」が使用されています。 また、GPT-3.5系のモデルの一つである「text-davinci-003」のAPI が提供されていますので、こちらも試してみます。 2つのモデルの違いは、「text-davinci-003」は、高度な自然言語処理タスクに使用される一方、 「gpt-3.5-turbo」は小規模で速度が速く、比較的簡単な自然言語処理タスクに使用されることが多い点があります。 Pythonでは、openaiライブラリが用意されているため、ローカルでライブラリをZIP化し、Lambda Layer経由でライブラリを利用します。 OpenAIアカウントの作成は省略し、APIの発行方法から、Lambdaの作

    [ChatGPT]OpenAI APIでGPT-3.5系のモデル「gpt-3.5-turbo」と「text-davinci-003」をLambdaで試してみた | DevelopersIO
    YassLab
    YassLab 2023/05/27
    “2つのモデルの違いは、「text-davinci-003」は、高度な自然言語処理タスクに使用される一方、 「gpt-3.5-turbo」は小規模で速度が速く、比較的簡単な自然言語処理タスクに使用されることが多い点があります。”
  • Rails APIサーバーで Ruby 3.2 の YJIT を有効化してみた。 - メドピア開発者ブログ

    サーバーサイドエンジニアの内藤(@naitoh) です。 Rails で構築された小規模な APIサーバー(RailsAPI モードで構築したもの)で、Ruby 3.2 の YJITを有効化する事で性能アップすることができましたので、喜びを分かち合いたく共有させて頂きます。 shopify.engineering We’re able to measure real speedups ranging from 5% to 10% (depending on time of day) on our total end-to-end request completion time measurements. YJIT を開発した Shopify では 5%から10%の処理速度の改善があったという事で、以前から弊社でも番で運用を開始したかったのですが、比較的検証のし易い APIサーバーで

    Rails APIサーバーで Ruby 3.2 の YJIT を有効化してみた。 - メドピア開発者ブログ
    YassLab
    YassLab 2023/05/09
    “YJIT を ON にするだけで全体で 2〜3%のレイテンシ改善が見られました。 最新のRuby に追随することで Ruby 開発者の成果の恩恵を受けられるのは非常にありがたい”