CATEGORY

システムエンジニアリング

OWASPが推奨する強力なパスワード

Webアプリケーションのセキュリティの標準化や推進を行うOWASPでは、強力なパスワードの使用を推奨しているので、それをまとめた。 強力なパスワード “Implement Proper Password Strength Controls”から意訳です。 2019年10月時点での資料に基づいており、セキュリティトレンドによって内容が変わる場合があるので、オリジナルのサイトを […]

Linux管理者おすすめ: viエディタの最小限コマンド

新入社員やUnix/Linux未経験がviで苦戦するのをよく見ます。 ネットではコマンドの説明を主とした内容が多く、このような資料を見てviを使うと、モードの違いが分からず、思ったように編集できないことが多いです。また、覚えることが多いなぁ…どこまで覚えればいいのだろう?といった不安を抱くこともあります。 ここでは、viの前提となる考えや、必要最小限の操作を行うためのviコマンドの説明 […]

開発・検証用のダミーメールサーバの構築(fakeSMTP)

概要 アプリ開発や検証等でメールサーバを利用したい場合がある。 プロジェクトで共有の検証用メールサーバを構築できると効率が良いか、その準備が間に合わなかったり、使用者が限定的な場合は、使用者の開発環境上に構築した方が手っ取り早い。 ここでは、fakeSMTPというダミーのメールサーバを構築する方法を説明する。 fakeSMTPのインストール 公式サイトからfakeSMTP.jarをダウンロード・展 […]

ftp, ftps, sftpの違い

開発対象システムの連携先システムとして、ftpsやらftpsサーバが指定される場合がある。 私の場合、開発標準の役割を担う場合が多く、これらの仕様を把握し、動作確認や単体テスト用のダミーのサーバを用意する必要がある。そのための前提として、ftpと名のつくプロトコルの概要を整理した。 FTPSはSSL/TLSを使って通信路を暗号化したFTP拡張、SFTPはSSHプロトコルをベースにしたFTPとは異な […]

Hyper-VでリモートのISOイメージをマウント

皆で使用するCD/DVDはISOイメージファイルとして、ファイルサーバ上の共有フォルダに配置する運用を想定しています。Hyper-V上の仮想マシンのCD/DVDドライブに、これらのISOイメージファイルを読み込ませたい場合が多々ありますが、特に設定しないとアクセス拒否エラーになってしまいます。 Hyper-Vマネージャ経由でリモートのISOファイルを選択する場面では、操作ユーザが権限を持つ場所のフ […]

Apache HttpClientの通信内容をダンプ

アプリやミドルウェの動作の正常性確認や問題発生時の問題切り分けのために、HTTPリクエストやレスポンスのヘッダやボディを確認したい場合がある。Java系のアプリではApacheのHttpClientが使用されることが多いため、ここではApacheのHttpClientによる通信をダンプ(ロギング)する方法を説明します。 (ここではApache HttpClient 4.5を前提として説明します。H […]

Windows10のインストール場所を選べない

DELLのノートPCであるVostro 5370を購入しました。 既定ではWindows 10 Homeがインストールされていましたが、会社用のボリュームライセンスのWindows10 Enterpriseをインストールしようした際のトラブルシューティングの記録です。 事象 Windows10をUSB起動でインストール中に、インストール先のディスク(パーティション)を選択する画面が表示される。通常 […]

JSFラジオボタン・チェックボックスとbootstrap

boostrapでラジオボタンやチェックボックスを使用する場合、div, input, label要素にbootstrapのCSSクラスを指定する必要がある。 JSFでラジオボタンを使用する場合、selectOneRadio, selectBooleanCheckbox, selectManyCheckbox等を使用するが、これらのJSF要素が出力するHTML要素のコントロールができず、上記のよう […]

Webアプリ用のサイトマップ生成

Googleの検索結果への表示を促進するためにGoogleに対してサイトマップを提供する必要がある。 WordPressでは様々なプラグインを使ってサイトマップを作成できるが、Webアプリの場合は独自に提供する必要がある。 ここでは、Webアプリでサイトマップを生成するためのサーブレットについて説明します。 前提 JavaEEを使ったWebアプリを想定しています。ここでは、Javaでサイトマップを […]

Javaでサポートする暗号化アルゴリズム

Java暗号化アーキテクチャ Javaで暗号化処理を実装する場合、Java暗号化アーキテクチャ(Java Cryptography Architecture: JCA)と呼ばれるフレームワークを使います。 このフレームワークでは、使用する暗号化アルゴリズムを実行環境で変更できるようにするために、プロバイダアーキテクチャと呼ばれる仕組みになっています。Javaで提供する標準的な暗号化アルゴリズム、ベ […]