タグ

ブックマーク / dev.classmethod.jp (136)

  • ChatGPTを安全に利用するための攻撃への理解と対策のベストプラクティス | DevelopersIO

    はじめに ChatGPTAIですが、人間と同じようにコミュニケーションをしますので、トラブルについても人間と同様に考えることで、事前に回避や軽減できるかもしれません。OpenAIのドキュメントには、ChatGPTを安全に使うためのベストプラクティスが公開されていますので、記事では、まず始めに安全にChatGPTを利用する方法について紹介し、次にプロンプトインジェクションを踏み台としたシステムへの攻撃手法について紹介します。最後に、それらの対策について紹介します。 3行まとめ プロンプトインジェクションの種類と対策について把握する 既存のシステムへの攻撃手法と対策について把握する 使い方を正しく理解してどんどん使って行きましょう 安全にChatGPTを利用するためにできることをする Moderation APIを利用する OpenAIには、無料で使えるModeration APIが提供さ

    ChatGPTを安全に利用するための攻撃への理解と対策のベストプラクティス | DevelopersIO
    toenobu
    toenobu 2023/03/27
  • 【徹底解説】これからのエンジニアの必携スキル、プロンプトエンジニアリングの手引「Prompt Engineering Guide」を読んでまとめてみた | DevelopersIO

    【徹底解説】これからのエンジニアの必携スキル、プロンプトエンジニアリングの手引「Prompt Engineering Guide」を読んでまとめてみた こんにちは。CX 事業部 Delivery 部のきんじょーです。 ここのところChatGPT と戯れてアプリを作ったり、様々なプロンプトの検証をしていましたが、言語モデルの性能を最大限に引き出すために、体系的にプロンプトエンジニアリングを学びたいと考えていました。 GitHub に「Prompt Engineering Guide」という素晴らしいリポジトリがあったので、読んで検証した内容をブログにまとめていきます。 記事は、執筆時点の上記リポジトリの内容を元にしていますが、意訳や独自に検証した日語のプロンプトを含みます。 上記リポジトリも絶賛開発中の段階のため、最新情報や原文が気になる方はリポジトリを直接参照してください。 目次 プ

    【徹底解説】これからのエンジニアの必携スキル、プロンプトエンジニアリングの手引「Prompt Engineering Guide」を読んでまとめてみた | DevelopersIO
    toenobu
    toenobu 2023/03/20
  • クラスメソッド社内のAIサービス利用のガイドラインを策定しました | DevelopersIO

    GPT-4が公開され、GoogleがPaLMやGoogle WorkspaceへのジェネレーティブAIの統合を発表するなど、AIサービスの進化のスピードは目を見張るものがあります。 この状況のなか、社内でもAIサービスの利用について方針がほしい、という声も上がってきていました。それに応えてAIサービス利用のガイドラインを策定し、リリースを行いました。せっかくですので、どんな内容なのかを共有したいと思います。 全文 基 AIサービスを業務利用する場合は、原則として上長の許可を得ること。 検証目的で、業務に直接関連しない情報(テストデータなど)を入力して試すことは問題ない。 業務情報を利用したい場合は、この後の「業務利用する場合」のガイドラインに沿うこと。 サービス利用前に、データの取り扱いの規約を必ず確認すること。 AIサービスを業務利用する場合 業務情報を用いる場合は、利用規約を確認

    クラスメソッド社内のAIサービス利用のガイドラインを策定しました | DevelopersIO
    toenobu
    toenobu 2023/03/19
  • Dockerfileのapt-getでよく見るあの呪文について | DevelopersIO

    確かに、全部ありはイメージサイズが小さいです。 rm -rf /var/lib/apt/lists/*も同じ値になっています。 apt-get cleanだけを行ったものは両方ない場合と同じになっています。 それぞれのコマンドの意味を見ていきます。 apt-get clean apt-get cleanはaptがダウンロードしてきたDebianパッケージファイルを削除するためのコマンドです。 ダウンロードされてきたファイルは/var/cache/apt以下に一時的に保存され、再度インストールする際はダウンロードせずこちらが使用されます。 ではなぜこのコマンドはイメージサイズに影響を与えなかったのでしょうか? この秘密は/etc/apt/apt.conf.d/docker-cleanにあります。 ここにはaptの設定が書いてあり、内容は以下のとおりです。 docker-clean DPkg:

    Dockerfileのapt-getでよく見るあの呪文について | DevelopersIO
    toenobu
    toenobu 2023/02/24
  • AWS SSO ProfileをTerraformで使う | DevelopersIO

    先日、以下のエントリのなかでaws sso loginコマンドを使ったAWS SSO(AWS Single Sign-On)のユーザーが引き受けたIAM Roleの権限でTerraformを実行する方法をご紹介しました。 この aws sso loginコマンドで作成される profileがいわゆるSSO Profileです。上記エントリのなかでAWS Provider version 3.26よりTerraformでもこのprofileのサポートを開始したと書きました。が、厳密にはこの説明では不十分な場合があるので、あらためてSSO ProfileのTerraformでの使い方についてまとめます。 先にまとめ SSO ProfileはAWS CLI Version2でのみ使用できます。まだVersion1の方はまずVersion2をインストールしてください。 SSO Profileの作成

    AWS SSO ProfileをTerraformで使う | DevelopersIO
    toenobu
    toenobu 2023/02/14
  • 2つのVPCエンドポイントの違いを知る | DevelopersIO

    ゲストブロガーの佐々木拓郎(@dkfj)です。小ネタシリーズの第三弾として、VPCエンドポイントをテーマにします。VPC内からS3などのVPC外にあるAWSサービスをアクセスする場合、インターネットゲートウェイを経由する方法と、VPCエンドポイントを経由する方法の2通りの手段があります。このVPCエンドポイント、実は2種類あるのご存知でしょうか?今日はその辺の解説です。 目次 目次 2種類のVPCエンドポイント ゲートウェイ型のVPCエンドポイントを試してみる ゲートウェイ型のVPCエンドポイントの意外な構造 まとめ 2種類のVPCエンドポイント まず始めにVPCエンドポイントの種類です。ゲートウェイ型とインターフェイス型の2種類があります。ゲートウェイ型は最初に出たVPCエンドポイントで、S3とDynamoDBが対応しています。インターフェイス型は、それ以降に出てきたサービスで50種類以

    2つのVPCエンドポイントの違いを知る | DevelopersIO
    toenobu
    toenobu 2023/02/14
  • AWS DevDay Japan 2022 に「AWS CDKでECS on FargateのCI/CDを実現する際の理想と現実 」というタイトルで登壇しました #AWSDevDay | DevelopersIO

    はじめに CX事業部の佐藤智樹です。 先日AWS DevDay Japan 2022 というイベントで「AWS CDKでECS on FargateのCI/CDを実現する際の理想と現実」というタイトルで登壇しました。 今回は上記の登壇で使用した資料の公開と発表の補足を記載いたします。 登壇動画 登壇資料 発表理由 1年前に上記の構成を始めた際に、思っていたよりは理想の状態にできないことが多々あり、情報も多くないように感じたので少しでも参考になるように実践例をベースにまとめました。同じような構成を試される際は参考になるかと思います。また発表の1ヶ月以内(2022/09~10)に結構更新があったので、昔同じ構成試してダメだった部分があったかたも参考になる部分あるかと思うのでみてもらえると嬉しいです。 最後に 当は資料90ページぐらいになってタイトルと関連性の薄い内容(ECS on Farg

    AWS DevDay Japan 2022 に「AWS CDKでECS on FargateのCI/CDを実現する際の理想と現実 」というタイトルで登壇しました #AWSDevDay | DevelopersIO
    toenobu
    toenobu 2023/02/05
  • DB変更リリースの停止時間を最小化するには?「DevOps with Database on AWS」 #AWSDevDay | DevelopersIO

    「DevOpsってアプリの話ばっかりな気がするけど、DBもアプリ以上に変更入るよなぁ」 データベースの変更をいかにノーダウンタイムで番リリースするか?ステート(データ)を持つという宿命上、そう簡単にいかないことは皆さん想像つくかと思いますが、その制約の中でも工夫次第では停止時間を極小化する方法が有るんだなぁと気付かされました。 AWS Dev Day Tokyo 2018 | AWS、「DevOps with Database on AWS」のセッションレポートです。 (祭) ∧ ∧ Y  ( ゚Д゚) Φ[_ソ__y_l〉     無停止DBリリースダワッショイ |_|_| し'´J セッション内容 タイトルは「DevOps with Database on AWS」 DevOps のアプローチでシステム開発に取り組む上で、データベースに対する変更をどのように扱うかは難しい問題です。

    DB変更リリースの停止時間を最小化するには?「DevOps with Database on AWS」 #AWSDevDay | DevelopersIO
    toenobu
    toenobu 2023/02/04
  • 5年間は生き続ける考え方が凝縮された良書「AWSで実現するモダンアプリケーション入門」 | DevelopersIO

    「最近、モダンモダンすげぇ聞くけどモダンってなに?」 「人の数だけモダンはあるんだよ…」 近年、パブリッククラウドを主軸としたアプリケーション開発文脈の中で「モダンアプリケーション」という言葉をよく聞くようになりました。自分もMAD(Modern Application Development)事業部の部長を去年やっていたりして、モダンという言葉には人一倍敏感だったりします。 そんなおり、そのモダンアプリケーションについて真正面から解説するを、著者の落水さんから献いただいたので、僭越ながら書評という形でご紹介させていただきます。 モダンがなにかようやくわかるの…!? ( ゚д゚) ガタッ /   ヾ __L| / ̄ ̄ ̄/_ \/   / 丸わかりやで。 書籍の概要「AWSで実現するモダンアプリケーション入門」 AWSで実現するモダンアプリケーション入門 〜サーバーレス、コンテナ、マイ

    5年間は生き続ける考え方が凝縮された良書「AWSで実現するモダンアプリケーション入門」 | DevelopersIO
    toenobu
    toenobu 2023/02/02
  • サービスメッシュについて理解する | DevelopersIO

    サービスメッシュは、マイクロサービスアーキテクチャの様々な問題点や課題を解決します。Kubernetes クラスターへの導入もそこまで複雑ではなく、サービスメッシュから得られるメリットは計り知れません。 カナダ・バンクーバーオフィスの山口です。 Kubernetes でマイクロサービスのアプリケーション開発をしていると、一度はサービスメッシュという言葉を聞いたことがあるのではないでしょうか。 マイクロサービス間の通信制御において、サービスメッシュは非常に強力な武器となります。しかし、Kubernetes クラスターへサービスメッシュを導入するのは多少敷居が高く、躊躇している方も多いかと思います。 今回はサービスメッシュの概要についてご説明します。そして次回以降で、EKS クラスター上で Istio や App Mesh といった主要なサービスメッシュの導入方法についてお伝えしていきます。

    サービスメッシュについて理解する | DevelopersIO
    toenobu
    toenobu 2023/01/09
  • AWS App Mesh (with Fargate) 再入門 | DevelopersIO

    おはようございます、もきゅりんです。 Shall we mesh ? 弊社コンサルティングには、今一度 AWS の各サービスを初心に返って、基的な部分から見つめ直してみよう、解説してみようといったブログリレーという企画があるのですが、稿はそれを模して、個人的な AWS App Mesh 再入門という体にしてみました。 どちらかというと、未来の自分のための備忘録と言えます。 これまで AWS App Mesh (以下 App Mesh) に入門されていなかった方も、すでに脱会されてしまった方も興味があれば再入門して下さい。 App Mesh とは何か サービス(アプリケーション)間の通信制御と可視性を実現するサービスメッシュを提供する AWS マネージドサービス です。 ブラックベルトにならってまとめると以下のような機能があります。 HTTP通信のリトライやタイムアウト 通信のトレーシン

    AWS App Mesh (with Fargate) 再入門 | DevelopersIO
    toenobu
    toenobu 2023/01/08
  • IAMユーザーにAssumeRoleの権限が無くてもスイッチロールできる(ように見える)のはなぜですか? | DevelopersIO

    困っていた内容 スイッチロールの信頼関係設定における AssumeRole権限について質問します。 自アカウントのIAMユーザーに、自アカウントのIAMロールにスイッチできるよう設定を行っています。 ロールの信頼関係を次のようにアカウント( root = アカウント自体 の意味になります)で指定した場合、ユーザーに「sts:AssumeRole」のアクセス権限が必要だと認識しています。 arn:aws:iam::XXXXXXXXXXXX:root 一方で、ロールの信頼関係を次のようにユーザー名で指定すると、ユーザーに「sts:AssumeRole」のアクセス権限が無くてもスイッチロールできてしまいます。 arn:aws:iam::XXXXXXXXXXXX:user/username このような振る舞いの違いが起きるのはどうしてでしょうか? ユーザー名で指定する方法でスイッチロールする場合、

    IAMユーザーにAssumeRoleの権限が無くてもスイッチロールできる(ように見える)のはなぜですか? | DevelopersIO
    toenobu
    toenobu 2022/12/20
  • [仕様変更] IAM ロール信頼ポリシーの挙動が変更になり IAM ロールの「暗黙的な自己信頼」がなくなりました | DevelopersIO

    (※)2022年6月30以降に「暗黙的な自己信頼」の使用実績があるロールでは、2023年2月15日まで「許可」 個人的にちょっと勘違いしていたのは#4,#16のケースで、「同一アカウント」かつ「ユーザー/ロール単位で信頼している」場合にはプリンシパル側の IAM ポリシーでの許可はいらない、という点でした。 ちょっと試してみた 上記のパターンからいくつかピックアップして試してみます。 同一アカウントで信頼ポリシーだけで許可されているパターン #4,#5に該当するパターンです。 IAMUser0 に IAM ポリシーがアタッチされていない状態で、IAMRoleA を Assume Role します。 まずは IAMRoleA の信頼ポリシーが以下の場合です。(#4) IAMRoleAの信頼ポリシー { "Version": "2012-10-17", "Statement": [ { "Ef

    [仕様変更] IAM ロール信頼ポリシーの挙動が変更になり IAM ロールの「暗黙的な自己信頼」がなくなりました | DevelopersIO
    toenobu
    toenobu 2022/12/20
  • [レポート] SNSとSQSとLambdaによるスケーラブルでサーバーレスなイベント駆動アーキテクチャ #reinvent #svs303 | DevelopersIO

    [レポート] SNSとSQSとLambdaによるスケーラブルでサーバーレスなイベント駆動アーキテクチャ #reinvent #svs303 こんにちは。サービスグループの武田です。開催中のre:Invent 2020でScalable serverless event-driven architectures with SNS, SQS & Lambdaのセッションを視聴しましたのでレポートします。 こんにちは。サービスグループの武田です。 開催中のre:Invent 2020でScalable serverless event-driven architectures with SNS, SQS & Lambdaのセッションを視聴しましたのでレポートします。 何度か配信がありますので視聴したい方はスケジュールを確認してみてください。 AWS re:Invent 2020 セッション概要

    [レポート] SNSとSQSとLambdaによるスケーラブルでサーバーレスなイベント駆動アーキテクチャ #reinvent #svs303 | DevelopersIO
    toenobu
    toenobu 2022/12/15
  • イベント駆動サービスAmazon EventBridge 3兄弟をどう使い分ける?(Rules/Scheduler/Pipes) #reinvent | DevelopersIO

    順に確認します。 Publisher/Subscriber(Pub/Sub)型 Pub/Sub型では、Publisherがメッセージブローカーにメッセージを送信(publish)すると、メッセージブローカーは購読(subscribe)しているすべてのSubscriberにメッセージをプッシュ(ブロードキャスト)します。 EventBridge Rules(イベントパターン) がこのメッセージングモデルを採用し、メッセージブローカーとして機能します。 1:多なFan Out処理が可能です。 Amazon SNS もこのメッセージングモデルです。 Producer/Consumer 型 Producer/Consumer 型では、Producer がメッセージブローカーにメッセージを送信し、Consumerはメッセージブローカーをポーリングしてメッセージを受信します。 EventBridge

    イベント駆動サービスAmazon EventBridge 3兄弟をどう使い分ける?(Rules/Scheduler/Pipes) #reinvent | DevelopersIO
    toenobu
    toenobu 2022/12/15
  • VPNサービスTailscaleを使ってAWS VPCプライベートサブネット内のリソースと通信してみた | DevelopersIO

    Tailscale はデバイス・アプリケーション同士をP2Pのメッシュネットワークで通信させるVPNサービスです。 Linuxカーネルにも組み込まれているWireGuardをベースに実装されています。 Windows/Linux/スマートフォンなどにクライアントプログラムをインストールすると、ごく僅かな設定だけで利用できます。 AWS VPC展開する場合、、たくさんのインスタンスへのインストールが発生する上、RDSのようなマネージドサービスにはユーザープログラムはインストールできません。 そこで、VPC内にゲートウェイとなるEC2インスタンス(Tailscaleドキュメントで言う所の「サブネットルーター」)を1台だけセットアップし、VPC内の各種リソースと通信する方法を紹介します。 左側がTailscaleクライアントをインストールしたTailscaleネットワーク 右側がAWS VPC

    VPNサービスTailscaleを使ってAWS VPCプライベートサブネット内のリソースと通信してみた | DevelopersIO
    toenobu
    toenobu 2022/11/21
  • WireGuardベースのTailscaleを使ってAmazon Lightsail上にVPNサーバを10分で作る | DevelopersIO

    VPSサービスのAmazon Lightsail上にWireGuardベースのTailscaleをインストールしてVPNサーバをシュッと作る Amazon LightsailとTailscaleを使い、AWS上でVPNサーバーをシュッと構築する方法を紹介します。 Amazon Lightsail Amazon Lightsailは、AWSが提供するVPSサービスです。 AWSは世界各地にデータセンターを集積したリージョンが存在します。 VPNサーバを特定のリージョンに作成すると、VPN接続時はそのリージョンのあるエリアからアクセスしていることになります。 東京リージョンにVPNサーバを構築すれば、日ローカルのサービスにアクセスしたり、ソーシャルメディアが規制されているエリアに滞在中の迂回策としても利用できます。 参考 : Amazon Lightsail を利用可能なリージョン Tail

    WireGuardベースのTailscaleを使ってAmazon Lightsail上にVPNサーバを10分で作る | DevelopersIO
    toenobu
    toenobu 2022/11/13
  • Terraform ベストプラクティスを整理してみました。 | DevelopersIO

    こんにちは。クラメソのスジェです。 ほとんどのサービスにはベストプラクティス(=best practices)というのがあります。 そのサービスを利用する際、このベストプラクティスを守るとより効率的に性能を100%活用することができます。 もちろんterraformにもこのようなベストプラクティスがあります。 今回はこのベストプラクティスについて整理してみました。 参考資料 記事は下記の資料を参考にして作成しました。 記事ではほとんどのプロジェクトに活用できる程度の項目を紹介しています。つまり、ベストプラクティスについて軽く説明している感じなので、詳細な内容までは上記の資料をご参照ください。 また、紹介した資料以外にもベストプラクティスを調べてみたら、たくさんの資料がありますので、そちらもあわせて確認することをお勧めします。 読む前に 実際にベストプラクティスをプロジェクトに適用しよう

    Terraform ベストプラクティスを整理してみました。 | DevelopersIO
    toenobu
    toenobu 2022/08/19
  • [神アップデート]GuardDutyがEC2やECSのマルウェア検知時のスキャンに対応したので実際にスキャンさせてみた #reinforce | DevelopersIO

    [神アップデート]GuardDutyがEC2やECSのマルウェア検知時のスキャンに対応したので実際にスキャンさせてみた #reinforce 神機能が提供されました。EC2やコンテナでマルウェア感染の挙動を検知したら、GuardDutyがマルウェアスキャンを実施できるようになりました。ユーザーが頑張ることが1つ減りました。控えめに言って最高ですね。 こんにちは、臼田です。 みなさん、AWSで脅威検知してますか?(挨拶 神機能がリリースされました!現在開催されているAWSセキュリティカンファレンスre:InforceにてEC2やECS/EKSなどのコンテナワークロード上でマルウェアを検知した際にスキャンする機能が発表されました! New for Amazon GuardDuty – Malware Detection for Amazon EBS Volumes | AWS News Bl

    [神アップデート]GuardDutyがEC2やECSのマルウェア検知時のスキャンに対応したので実際にスキャンさせてみた #reinforce | DevelopersIO
    toenobu
    toenobu 2022/07/27
  • 「AWS初心者に捧ぐコスト可視化のススメ」というテーマのビデオセッションで話しました #devio2022 | DevelopersIO

    こんにちは、つくぼし(tsukuboshi0755)です! Developers.IO 2022技術で心を揺さぶる3日間〜にて「AWS初心者に捧ぐコスト可視化のススメ」というテーマでお話ししましたので、内容を簡単にご紹介します。 概要 コスト管理は、クラウドを利用する場合には必ず考慮しなければいけない事項です。 AWSのコスト管理について学びたい人に向けて、AWSのコスト可視化サービスを紹介します。 動画 スライド 参考サイト 円安相場だからこそやりたい!AWSコスト最適化のための5ステップ | DevelopersIO Amazon Web Servicesコスト最適化入門 第2版 - ohsawa0515 - BOOTH 最後に コスト可視化により利用中のAWS料金を正確に把握する事で、コスト最適化をよりスムーズに進める事ができるようになります。 ぜひ用途に応じてコスト可視化サービ

    「AWS初心者に捧ぐコスト可視化のススメ」というテーマのビデオセッションで話しました #devio2022 | DevelopersIO
    toenobu
    toenobu 2022/07/25