タグ

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

  • AWS LambdaからGoogle Hangouts Chatに投稿してみた | DevelopersIO

    先日、Google のビジネス向けメッセージングプラットフォーム「ハングアウト・チャット」が G Suite の1サービスとして正式公開されました。 Bot 開発用の API が提供されているため、Slack のようにタスクの自動化やイベント通知を簡単に組み込むことができます。 今回は cURL/Python/AWS Lambda から Webhook を使って Hangouts Chat にメッセージ投稿する方法を紹介します。 前提 G Suite の利用アカウントがある AWS の利用アカウントがある 流れ 以下の流れで作業します。 チャットルームの作成 Webhook の設定 メッセージ投稿 cURL Python AWS Lambda 1. チャットルームの作成 Google Hangouts Chat のサービスページに移動します。 https://chat.google.com

    AWS LambdaからGoogle Hangouts Chatに投稿してみた | DevelopersIO
  • AWS再入門2018 セキュリティチェック編 | DevelopersIO

    こんにちは。池田です。州からは梅の便りが届いていますが、札幌はまだまだ雪景色です。 最近になり周囲で「今度はEchoの招待が届いた!」とか「2回目のEcho Dotの招待が届いた!」とか「2台目ゲット!」とか聞こえてきました。我が家にEcho Plusを迎え入れる日はいつになるのでしょうか。 早くスマート家電を声で制御する生活を体験したくてワクワクしています。 はじめに 今年に入ってからAWS再入門シリーズと題して勉強を進めているのですが「たまにはAWSホワイトペーパーを読んでみよう」と思い立ちいくつか読んでいた中でAWS_Security_Checklistという資料を見つけました。 内容は非常に簡潔ですが、各項目はそれぞれ関連するAWSドキュメントへのリンクが設けられていました。 そこで今回は資料からの各リンク先ドキュメントを基に筆者が整理したチェックポイントなどを「AWS再入門20

    AWS再入門2018 セキュリティチェック編 | DevelopersIO
  • DNSド素人がdigコマンドとRoute 53を使って、DNSについてあれこれ学んでみた | DevelopersIO

    試しに、digコマンドを利用して、yahoo.co.jpに名前解決してみましょう。 $ dig yahoo.co.jp ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.56.amzn1 <<>> yahoo.co.jp ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57517 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;yahoo.co.jp. IN A ;; ANSWER SECTION: yahoo.co.jp. 60 IN A 182.22.59.229 yahoo.co.jp.

    DNSド素人がdigコマンドとRoute 53を使って、DNSについてあれこれ学んでみた | DevelopersIO
  • テキストでネットワーク図を作ろう!nwdiag | DevelopersIO

    nwdiagって何? ブロック図生成ツール blockdiagシリーズの1つです。きれいな論理ネットワーク図を作成することができます! 公式サイト(http://blockdiag.com/ja/nwdiag/introduction.html) 特徴 テキストベース 自動レイアウト SVG出力可能 インストール方法 Pythonで動き、Win・MacLinuxすべて対応しています。今回はMacでのインストール方法を紹介します。 Windowsの場合は事前にPythonのインストールを行ってください。2系、3系はお好みでどうぞ! インストール 一行で簡単にインストール完了です。 pip install nwdiag サンプルコードを使って動作を確認します。 まず以下のファイルを作成してください。 sample001.nwdiag nwdiag { network dmz { addres

    テキストでネットワーク図を作ろう!nwdiag | DevelopersIO
  • AWS運用担当者のためのセキュリティ入門 | DevelopersIO

    はじめに AWSの運用構築をまかされたインフラエンジニアのかたに向けて、セキュリティで考えるべき視点と代表的なソリューションをご紹介します。 AWSでのセキュリティを考える前に、私達自身のセキュリティを考えてみましょう。 "外出前に鍵をかける"、"ひとけのない道はなるべく通らない"など最低限やっておくべき対策があります。 たくさんのお金をかけてボディガードを雇っても、鍵をあけて外出しては意味がありません。 AWSセキュリティ対策も同様です。 追加のコストを払ってセキュリティソリューションを導入する前に、最低限やっておくべき対策があります。 特に代表的なものをご紹介します。 出所が不明なAMIは使わない EC2の作成元となるAMI(マシーンイメージ)は誰でも公開できます。 中には悪意のあるソフトウェアが含まれるAMIも含まれます。 AWSや信頼できるベンダーが提供するAMIを使いましょう。

    AWS運用担当者のためのセキュリティ入門 | DevelopersIO
  • 【新サービス】機械学習を使って不正なアクセスパターンを検出、対応するAmazon MacieがLaunch。 | DevelopersIO

    【新サービス】機械学習を使って不正なアクセスパターンを検出、対応するAmazon MacieがLaunch。 新緑の候, 立秋とは名ばかりの暑い日がつづいておりますが、お元気でいらっしゃいますか、せーのです。 今日は突然やってきた新サービスをご紹介します。名前は「Amazon Macie」と言います。 Amazon Macie概要 とりあえず読み方から。「アマゾン メイシー」と読みます。私は一瞬サングラス的なあの人を思い浮かべましたが違うようです。Macieは女の子の名前で「武器」「活発でスポーティで魅力的な人の代表名」という意味があります。 Amazon Macieは機械学習を使ってAWSに保存されている機密データを自動的に発見、分類、保護することにより、データ損失を防止するためのAI機能のセキュリティサービスです。人工知能を使ったサービス(AI-powered security ser

    【新サービス】機械学習を使って不正なアクセスパターンを検出、対応するAmazon MacieがLaunch。 | DevelopersIO
  • 今日から使える文章校正テクニック | DevelopersIO

    渡辺です。 昨日のエントリーが結構反響大きめだったので、第二弾です。 文章校正をしていてよくあるパターンを幾つか抽出してみました。 ただし、前回紹介しているパターンは除外していますので、あわせて確認ください。 重複を減らす 文章校正の基礎は 重複を減らす ことです。 次の文章を見てみましょう。 AWSを使い慣れている人にとっては簡単な作業ですが、使い慣れていないと戸惑う所も多いところです。 この文章がくどく感じる理由は、「使い慣れている」が重複していることです。 前後関係もありますが「ところ」がなにを指しているのかも曖昧ですね。 後半の「使い慣れている」を削除し、バランスを取るために作業を後ろに移動しました。 さらに、前の文章を受けるため、「これは」を追加します。 これは、AWSを使い慣れている人にとっては簡単ですが、そうでないと戸惑う作業です。 スッキリしました。 しかし、「慣れていると

    今日から使える文章校正テクニック | DevelopersIO
  • オンプレからAWS環境にデータベース移行するのに役立つ情報まとめ | DevelopersIO

    西澤です。先日"AWS環境へのデータ移行"をテーマに社内で営業向け勉強会を行ったのですが、自分が1から資料を作るよりもずっと有用な公開資料がたくさんあったので、それらを使って説明をさせてもらいました。当日メンバーから出た質問等も補足しながら、今回はその情報をこちらにまとめておきたいと思います。 前提 タイトルではデータベース移行としていますが、こちらではRDBの移行のみを対象とします。AWSの各種サービスの詳しい説明は行いません。それらを組み合わせて利用する際に必要となる情報をまとめたいと思います。また、これからご紹介する資料の中には重複する部分も含まれるのですが、私が個人的によくまとまっているというところをピックアップしてご紹介して行こうと思います。 AWSへのデータ転送方法のまとめ まずは、データファイルの転送方法のまとめです。いつの間にかできていた下記ページが非常にわかりやすくまとま

    オンプレからAWS環境にデータベース移行するのに役立つ情報まとめ | DevelopersIO
  • Angular + RxJS + WebSocket で チャットアプリを作る – Subject 利用サンプル | DevelopersIO

    以前、別の記事でAkka製のチャットサーバを作ったのでシンプルなクライアントアプリも作りました。 バージョン情報 パッケージ名 バージョン WebSocketとSubjectの連携イメージ RxJSの部品は、今回 Subject を使います。Subjectは、定義したバックエンドのデータソースを Subscribe することができ、なおかつバックエンドに対して next によりデータを送出する能力をもっています。一方でWebSocketはコネクションが成立した後、 onmessage イベントに対するハンドラを登録してデータ受信時のアクションを定め、 send によってデータを送信します。この時点で Subject と WebSocketは相性が良いのではないかと考えました。実際この考えを実装した先人がいます。 WebSockets with Angular2 and RxJS – Łuk

    Angular + RxJS + WebSocket で チャットアプリを作る – Subject 利用サンプル | DevelopersIO
  • [新サービス] 一撃でCI環境を作れる AWS CodeStar | DevelopersIO

    渡辺です。 2017/04/19開催(日時間:2017/04/20)の『AWS Summit in San Francisco』で発表された新サービス『AWS CodeStar』についてお知らせします。 一言で言えば、CodeCommit, CodePipeline, CodeBuild, CodeDeployとそれらに付随する実行環境を一撃で構築・管理できます(2017年4月の時点で、東京リージョンでは利用できません)。 実行環境もカバーする最強のスキャホールド AWS CodeStarが何者か、一言で言えば、一時期に流行ったスキャホールドの類です。 Ruby on Railsが登場した時、コマンドひとつでウェブアプリケーションの雛形ができることに衝撃を覚えた人は多いでしょう。 ベース部分をスキャホールド(足組)として作り、肉付けをしていくというスタイルが流行ったかと思います。 AWS

    [新サービス] 一撃でCI環境を作れる AWS CodeStar | DevelopersIO
  • AWS Lambda + AWS WAF でDOS攻撃からの ✝守護者✝ を実装する | DevelopersIO

    はじめに DOS攻撃からいかにシステムを守るか。オートスケールの仕組みが充実し、大量のアクセスでも耐えられるようになってきている昨今ですが、悪意ある急激なアクセス増加は誰も望まないはずです。防御する仕組みが欲しいところではありますが、開発の時間が限られている中で、防護機構の自動化まで持っていくのは骨が折れます。そこで今回は、AWSを使ったシステムを構築するシーンで、DOS攻撃から自動でWAFを設定する仕組みを作ります。重視した点は以下2点です。 安価であること。可能な限り新しいAWSリソースを使わない、使うとしても高価なものは避ける。 ポータビリティが高いこと。別の環境に同様の手順で導入できること。 DOS攻撃防御の仕組み比較 Apache の mod_dosdetector アプリケーションサーバ群の前段にApacheサーバを置き、そこにmod_dosdetectorを導入することを考え

    AWS Lambda + AWS WAF でDOS攻撃からの ✝守護者✝ を実装する | DevelopersIO
  • Ansible実践入門 | DevelopersIO

    渡辺です。 最近、Ansibleに関する書籍が増えてきていますね。 とはいえ、ほとんどは入門的な位置付けで、それはそれで需要があるんですが、実践レベルで使いこなすノウハウは少ないというのが現実かと思います。 この辺り、まだ試行錯誤を繰り返しているところも多いでしょう。 そこで、ノウハウをガンガン流出させるクラスメソッドなので、ベストプラクティスみたいなものをまとめちゃいました。 Ansibleとは? 雑な言い方をすれば、SSH接続したリモートホストでミドルウェアのインストールや設定ファイルの更新を行うツールです。 カテゴリとしては構成管理ツールに分類されます。 SSH接続が可能であれば、リモートホスト側にエージェントのインストールが不要である点は大きな特徴です。 Playbookにサーバの状態を定義する AnsibleのPlaybookは、リモートホストの状態を定義したファイルです。 構成

    Ansible実践入門 | DevelopersIO
  • 開発環境で使うDocker入門 | DevelopersIO

    モバイルアプリサービス部の五十嵐です。 Dockerは軽量でポータビリティに優れ、環境を汚さないので開発環境には無くてはならない存在ですよね!今回はまだDockerを使っていない人向けに、私が自分が辿ってきた経験を元に、『こういうシーンでDockerを使うと便利』というのをステップ・バイ・ステップで説明していきます。 対象読者 Dockerはなんとなく知っていて興味はあるけど、使い所や導入するメリットが分からないという人を対象にしています。 環境 Docker for MacDocker 1.12.3) Dockerについて Dockerは複数のコンポーネントからなるプラットフォームですが、記事では主にDocker EngineのことをDockerと呼びます。 Dockerはコンテナと呼ばれる仮想化技術を用いています。従来の仮想化技術と異なる点は、ホストのカーネルをコンテナと共有し、ホ

    開発環境で使うDocker入門 | DevelopersIO
  • サーバーサイドエンジニアこそAngular2をやるべきかもしれない – Heroデータを AWS Lambda+DynamoDB で取得する | DevelopersIO

    サーバーサイドエンジニアこそAngular2をやるべきかもしれない – Heroデータを AWS Lambda+DynamoDB で取得する はじめに 私自身は普段サーバサイド(主にWeb API)の開発を行っているのですが、業務外でAngular2を触ってみたところかなり好感触だったのでブログにしました。この記事では、Angular2のTutorialを終えた状況から、データ取得部分をモックではなく外部サーバに置き換える例を示し、Angular2の考え方、サーバサイドとの連携方法について記録したいと思います。 Angular2をはじめたときの筆者の状況 フロントエンドスキルセット jQuery、CSSを利用したウェブページの開発経験あり とはいえ、アニメーションや色彩に明るいわけではなく、ほとんどWebアプリケーションフレームワーク任せ JavaScriptはDOM操作用の言語という考え

    サーバーサイドエンジニアこそAngular2をやるべきかもしれない – Heroデータを AWS Lambda+DynamoDB で取得する | DevelopersIO
  • Amazon EC2 セキュリティレシピ | DevelopersIO

    最新のミドルウェアを使う 古いミドルウェアには脆弱性が含まれることがあります。 脆弱性によってその影響は様々です。 外部から比較的容易にサービス断を行えるものや、不正なコマンドを実行され情報を抜き取られるなどよりクリティカルなものもあります。 最新のミドルウェアを利用し定期的にアップデートするようにします。 ミドルウェアの脆弱性が見つかると、脆弱性情報データベースや各ベンダで公開されます。 Common Vulnerabilities and ExposuresやJapan Vulnerability Notesが有名です。 Amazon Linuxの場合、Amazon Linux AMI Security Centerで公開されます。 各サイトを巡回するには骨が折れるため、RSStwitterで情報収集されるかたも多いかと思います。 影響が大きい脆弱性については、全社周知が行われる組織

    Amazon EC2 セキュリティレシピ | DevelopersIO
  • はじめてのマテリアルデザイン入門 | DevelopersIO

    この記事では、マテリアルデザイン初心者の自分が良いなと思うサイトをご紹介します。 上から順に見ていくと理解が深まるのではないのかなと思います。 マテリアルデザインとは? よくわかるマテリアルデザインの設計コンセプト よくわかるマテリアルデザインの設計コンセプト | fladdict マテリアルデザインの設計コンセプトが分かりやすく書かれている良記事です。 これをまず読んでみてコンセプトを掴んでおけば、理解が深まると思います。 マテリアルデザインとフラットデザインって結局何が違うの? Googleマテリアルデザインとフラットデザインって結局何が違うの?[UI/UX] | naver フラットデザインなら知っているよっていう人はこちらを見ると良いかもしれません。 動画で見てみる マテリアルデザインを解説してくれてます。 日語字幕が出ているので親切です。 ちなみにGoogleのデザイン関連の動

    はじめてのマテリアルデザイン入門 | DevelopersIO
  • [SQL] SQL文の書き順 〜PostgreSQL Tutorialを使いながら解説〜 | DevelopersIO

    はじめに いざSQL文を書こうと思ったけど、どこから書けばよいのか迷うことはないでしょうか? まずはselect句から書こうかな。。 使用するテーブルはわかっているのでfrom句から。。 where句はちょっと長くなるから後回しにして。。。 などなど 長いSQL文を書く必要がある時に、どこから書けばいいのか迷う方(僕もそうです)に読んでいただければと思います。 今回ご紹介する書き方は、あくまでも僕がSQL文を書く時に気をつけている方法ですので、他にもっといい書き方・書き順がある可能性があります。 今回は順番にフォーカスしているため、個々の句についての解説は割愛します。 環境 MacOS 10.10.5 PostgreSQL 9.4.5 実行順序 SQLが実行される順番は以下のようになっています。 FROM → WHERE → GROUPBY → HAVING → SELECT → ORDE

    [SQL] SQL文の書き順 〜PostgreSQL Tutorialを使いながら解説〜 | DevelopersIO
  • 新入社員のためのWAF(Web Application Firewall)入門 | DevelopersIO

    佐々木です。クラスメソッドも4月から新しい仲間が増えました。今日はWAF(Web Application Firewall)の基的な知識を整理してみました。 基礎知識 WAFとは WAF(Web Application Firewall)とは、Webアプリケーションの脆弱性を狙う悪意ある通信(攻撃)から、Webアプリケーションを保護するものです。来論で言えば、Webアプリケーションに脆弱性があるのであればWebアプリケーションを修正するのが正しい対応です。しかし未知の脆弱性があったり、修正コストが大きくWebアプリケーションでの対応が難しい場合や、緊急度が高くすぐに防御しなければならないが修正が間に合わない場合も、残念ながらあります。ユーザーとWebアプリケーションの間にWAFを入れることで、悪意ある通信を防ぐことが出来ます。 ファイアウォールとは ファイアウォールは、IPヘッダやTC

    新入社員のためのWAF(Web Application Firewall)入門 | DevelopersIO
  • 軽量JSONパーサー『jq』のドキュメント:『jq Manual』をざっくり日本語訳してみました | DevelopersIO

    jq Manual jqで簡単JSON加工 | Developers.IO jqコマンドが実は高性能すぎてビビッた話 - beatsync.net JSONを超絶に読みやすくする jq コマンド - WebAPIバリバリ使うor開発する人必須 CLIでJSONの整形をする - ( ꒪⌓꒪) ゆるよろ日記 JSON形式の情報を様々な条件や書式として成形、フィルタリングツール『jq』。上記関連エントリで私もこのツールの存在を知る事になったのですが、ツールの簡易さ・便利さに感動しながら私もちょくちょく利用させてもらっています。 そこでこのエントリでは、jq公式ページに展開されている利用ガイド・リファレンス的な位置付けの『jq Manual』を写経がてらざっくり日語訳してみました。ざっくり訳なのでこの部分の訳おかしい・間違ってる等ありましたら御指摘頂けると幸いです。例示されているサンプルコードも

    軽量JSONパーサー『jq』のドキュメント:『jq Manual』をざっくり日本語訳してみました | DevelopersIO
  • Backbone.jsでつくるMVPなUIパターン【タブ】 | DevelopersIO

    今回はBackbone.jsを使ってタブUIを作ってみたいと思います。デザインはTwitter Bootstrapをつかって以下のようにしました。 世界的に名高い企業の名前が並んでいますね。 デザインはhtmlを仮組みしてBootstrapで既にできていることにします。(題と離れてしまうので…すみません><) ボタンの部分に active というクラスをつけると選択中のデザインに変わり、 内容の部分におなじく active というクラスをつけると display: block; となり表示される仕組みです。 すべてactiveな状態 すべて非activeな状態 htmlはこちらです <div id='ui-tab'> <ul class='nav nav-tabs'> <li class="active"> <a href="#apple">Apple</a> </li> <li> <a

    kimthehat
    kimthehat 2013/03/01