Googleの2段階認証でドコモ・au・ソフトバンク等のキャリアメールが規制対象に

2019年12月1日より、Googleの2段階認証でドコモ・au・ソフトバンク 等の国内キャリアメールが使用不可になります。

これら国内キャリアのメールサーバは、いまだTSL等に対応しておらず平文で通信していることからセキュリティリスクが存在するので、グーグル社として2段階認証のセキュリティ確保のための措置と考えられます。

そもそも2段階認証はセキュリティ向上の為の仕組みなので、それに用いられるメールシステムが平文で通信するようでは意味がないわけです。

勿論、これら国内キャリアメール以外にもTSL通信非対応のメールサーバはネット上に存在しますが、流通メール数が格段に多いキャリアメールをBANすることで、よりよいセキュリティ確保が出来るという判断でしょう。

規制対象ドメイン

@ezweb.ne.jp
@docomo.ne.jp
@softbank.ne.jp

メディアの報道

Google公式発表


国会議員の資産を確認する方法

政治倫理の確立、不正防止を目的に、国会議員の資産が国民に開示されています。清く正しい政治には必要なことで、民主主義を採用している先進諸国に於いて政治家の資産状況の開示は世界的な常識となっていて、もちろん日本でもきちんと開示されています。

ただ、この開示情報はどうやって知ることができるのだろうかと思ったことはありませんか?そこで今回、再確認をしてみましょう。

まず国会議員と一言に言っても、我が国では参議院と衆議院の二院制となっていますね。それぞれ開示されています。

開示方法やその要領は法律に則ることになるので法律から考えてみると、
「政治倫理の確立のための国会議員の資産等の公開等に関する法律(平成四年法律第百号)」
で定められているのが分かります。

政治倫理の確立のための国会議員の資産等の公開等に関する法律
電子政府の総合窓口(e-Gov)。法令(憲法・法律・政令・勅令・府令・省令・規則)の内容を検索して提供します。

そして、第七条を読むと、国会議員だけでなく、政令指定都市の市議会議員、県知事、市町村長も資産開示の対象であることがわかります。

第七条 都道府県及び地方自治法(昭和二十二年法律第六十七号)第二百五十二条の十九第一項の指定都市の議会の議員並びに都道府県知事及び市町村長(特別区の区長を含む。)の資産等の公開については、平成七年十二月三十一日までに、条例の定めるところにより、この法律の規定に基づく国会議員の資産等の公開の措置に準じて必要な措置を講ずるものとする。

では実際に、我々国民はどのように開示情報に辿り着けるのか?

衆議院の場合、ホームページでその方法が分かりやすく提示されていました。

衆議院議員の資産等報告書等の閲覧案内

閲覧場所に訪問すれば開示情報を見ることができるとのこと。閲覧場所は永田町の議員会館です。

衆議院第一議員会館
資産等報告書等閲覧室
東京都千代田区永田町2-2-1 地下1階  庶務部議員課内

閲覧できるのは原則、平日9時半〜17時半(12〜13時は休憩時間)です。

電車での行き方は、
千代田線・丸ノ内線で「国会議事堂前駅」(1番出口)もしくは、銀座線・南北線で「溜池山王駅」(5番出口)

地図は公式より引用させていただきます。

資産等報告書等閲覧室案内図

参議院の資産開示

議員の資産等報告書等の閲覧:参議院

参議院の場合も衆議院と基本同じです。

参議院議員会館
東京都千代田区永田町2-1-1
地下2階 資産等報告書等閲覧室(資産公開室)

政治家の資産公開は、政治の適正化の一環で行われている制度です。有権者として政治の適正化に寄与することにもなるので、一度、閲覧に足を運ぶのも良いかも知れませんね。

閲覧はもちろん無料です。
議員会館に入館する機会もなかなかありませんから、貴重な体験になると思います。永田町周辺の観光のついでに立ち寄るのもオススメですね。


PostgreSQL でデータファイル格納ディレクトリまるごとバックアップ(上級者用)

PostgreSQL でバックアップする場合、通常は pg_dump コマンドを使います。今回は敢えて強引(?)にデータファイルごと根こそぎバックアップする方法をやってみます。

そもそもデータベースはデータファイルにのみ全情報があるのですから、Oracle だろうが SQL Server だろうが、データファイルさえ残っていれば何とかなるわけですから。

この記事の対象は、データベースの構造を良く知っている上級者向けと思ってください。初中級者の方にはあくまでも、それぞれ用意されているバックアップコマンドを使うことを推奨します。

さて本題の手順です

1.データベースファイルを格納するディレクトリを確認

psql に管理者権限でログインして SHOW data_directory を実行します。

$ psql -U postgres

postgres=# SHOW data_directory;
data_directory
——————————
/var/lib/pgsql/9.6/data
(1 row)

postgres=#

こんな感じで表示されます。上記の例では

/var/lib/pgsql/9.6/data

がデータフォルダです。勿論、環境によってディレクトリは異なります。

2.データベースを停止する

ディレクトリごとコピーする場合、必ずデータベース(RDBMS)を停止する必要があります。データベースを動かしながらコピーしたらぶっ壊れます

$ sudo systemctl stop postgresql

3.ディレクトリごとコピー(バックアップ)する

普通にコピーコマンドでディレクトリごとバックアップします。

$ sudo cp -R /var/lib/pgsql/9.6/data ~/backup_db

4.データベースを再起動する

バックアップ(コピー)を終えたらデータベースを再起動します。これですべて完了。

$ sudo systemctl start postgresql

このように至ってシンプル。なのに完璧なバックアップ。
但しRDBMSのバージョンが異なると動作しない場合があります。データベース構造まで熟知している上級者のあなたには理由はわかりますよね。

リストアする場合

逆にこのバックアップのリストア方法ですが、コピーしたディレクトリごと上書きすれば良いです。コピー作業前にデータベースを停止するのは当然ですね。

ちなみにバックアップ(コピー)先ディレクトリでそのまま動作させる事も可能です。

postgresql.conf の data_directory でデータディレクトリを指定してください。

$ sudo vi /var/lib/pgsql/9.6/data/postgresql.conf

data_directory = ‘/home/backup_db/data’ ←お好みのディレクトリ

この方法、実は PostgreSQL だけでなく、ほぼどんな RDBMS でもこんな感じで出来ちゃうので、一応知識として持っていると便利だったりします。


macOS版 IntelliJ IDEA 2019.2 の日本語入力不具合の対処法

 IntelliJ IDEA を 2019.2 にしてから、日本語入力でトラブルが頻発するようになりました。具体的には「ど」と入力しようとすると、ローマ字入力では do とタイプしないといけないのですが、d をタイプした瞬間に変換が勝手に確定されてしまい do と打つまで待ってくれないので漢字変換できない状態になるものです。

 一旦、テキストエディタに日本語で書いてからコピペすることで仮対応していましたが、コードを書く際にいちいち InteliJ IDEA とテキストエディタを往復するのはとてもストレスです。

 これでは堪りません、さすがにリサーチしてみるかと原因究明や対策を探してみたところ、JetBrains日本語公式ブログに対処法がアップされていました。こういうところ、JetBrains社 は頼もしいです。

 細かい手順は下にリンクを貼っておきますので、公式サイトを読んでいただくとして、この公式サイトでは2つの回避策が示されています。私がこの手順でやってみたところ、簡単な回避法の回避策1では何故か起動できませんでした。私の環境なのか原因不明ですが、とにかく起動さえしなくなったので、これではいけません。回避策2の方でやってみたところ、無事起動できるようになりました。

 そもそもこの日本語入力の不具合は毎回必ず発生するものではなく、何かのタイミングで発生していたので、これで解決できているのかは暫く使ってみるしかありません。不具合が発生しない事を祈るばかりです。

日本語公式サイトでの説明
https://blog.jetbrains.com/jp/2019/07/30/2025


ChromeのアドレスバーにフルURLを表示する方法

 最近のブラウザは、アドレスバーにURLをフル表示しないのがトレンドのようですが、正直面倒なことがあったりします。
そこで、フルURLを表示する方法をご紹介します。

至って簡単ですが、

1.アドレスバーに下記をコピペします
chrome://flags/#omnibox-ui-hide-steady-state-url-trivial-subdomains

2.下のように黄色でマークされた部分の右にあるプルダウンメニューで「Disabled」にします。以上!

これでフルURLが表示されている筈です。Enjoy!


yum で競合エラーが発生した際の解決手順

yum の install とか update で競合エラーが発生してしまう場合の解決方法です。
以下のように yum を実行したら競合エラーが発生する場合があります。大事な部分を下記にマークしました。

$ sudo yum install nginx-module-geoip
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ nginx-module-geoip.x86_64 1:1.17.3-1.el7.ngx を インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================================================================
 Package                             アーキテクチャー        バージョン                            リポジトリー            容量
================================================================================================================================
インストール中:
 nginx-module-geoip                  x86_64                  1:1.17.3-1.el7.ngx                    nginx                   18 k

トランザクションの要約
================================================================================================================================
インストール  1 パッケージ

総ダウンロード容量: 18 k
インストール容量: 76 k
Is this ok [y/d/N]: y
Downloading packages:
nginx-module-geoip-1.17.3-1.el7.ngx.x86_64.rpm                                                           |  18 kB  00:00:00
Running transaction check
Running transaction test


Transaction check error:
  ファイル /usr/lib64/nginx/modules/ngx_http_geoip_module.so (パッケージ nginx-module-geoip-1:1.17.3-1.el7.ngx.x86_64 から) は、パッケージ nginx-mod-http-geoip-1:1.12.2-3.el7.x86_64 からのファイルと競合しています。

エラーの要約
-------------

このマーカ部分のモジュールが邪魔をしているので、アンインストールします。

$ sudo yum remove nginx-mod-http-geoip-1:1.12.2-3.el7.x86_64
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ nginx-mod-http-geoip.x86_64 1:1.12.2-3.el7 を 削除
--> 依存性の処理をしています: nginx-mod-http-geoip = 1:1.12.2-3.el7 のパッケージ: 1:nginx-all-modules-1.12.2-3.el7.noarch
--> トランザクションの確認を実行しています。
---> パッケージ nginx-all-modules.noarch 1:1.12.2-3.el7 を 削除
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================================================================
 Package                                アーキテクチャー         バージョン                       リポジトリー             容量
================================================================================================================================
削除中:
 nginx-mod-http-geoip                   x86_64                   1:1.12.2-3.el7                   @epel                    21 k
依存性関連での削除をします:
 nginx-all-modules                      noarch                   1:1.12.2-3.el7                   @epel                   0.0

トランザクションの要約
================================================================================================================================
削除  1 パッケージ (+1 個の依存関係のパッケージ)

インストール容量: 21 k
上記の処理を行います。よろしいでしょうか? [y/N]y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  削除中                  : 1:nginx-all-modules-1.12.2-3.el7.noarch                                                         1/2
  削除中                  : 1:nginx-mod-http-geoip-1.12.2-3.el7.x86_64                                                      2/2
警告: ファイル /usr/share/nginx/modules/mod-http-geoip.conf: 削除に失敗しました: そのようなファイルやディレクトリはありません
  検証中                  : 1:nginx-all-modules-1.12.2-3.el7.noarch                                                         1/2
  検証中                  : 1:nginx-mod-http-geoip-1.12.2-3.el7.x86_64                                                      2/2

削除しました:
  nginx-mod-http-geoip.x86_64 1:1.12.2-3.el7

依存性の削除をしました:
  nginx-all-modules.noarch 1:1.12.2-3.el7

完了しました!

Macで最強のテキストエディタ

日本語に最適化されているテキストエディタ。Windowsならば秀丸エディタの一択でしょう。秀丸エディタは最高の作品です。

ところが macOS で使えるテキストエディタは?となると、テキストエディタは数あれど、どれも帯に短し襷に長し、しっくり来るものが今ひとつありません。

テキストエディタ流民となっている人々(もちろん自分を含め)へテキストエディタ比較をまとめてみます。

ちなみに私が最強とするテキストエディタの条件ですが

  • 起動が早い
  • 検索が日本語に最適化されている
  • 上下カーソル移動が1行ずつ

という感じです。

mi テキストエディタ

まずは mi テキストエディタ。
総じて満足度は高かったのですが、不満点は以下の通りです。

1.起動がもっさりしている。Mac Pro (Late 2013) 3.7 GHz Quad-Core Intel Xeon E5、メモリ32GB という悪くはないハードウェア環境で、2回目起動が 約2.8秒。クリックして一息ついてようやく起動という感覚。ちょっとイラっとする時間です。Sublime Text と比較してみてください。Sublime Text の高速起動には感心させられます。恐らく Sublime Text はネイティブコードで書かれているのだと思います。

2.次に上下カーソル移動が5行単位に画面がジャンプして視点のフォーカスが一瞬迷子になります。1行移動したら1行遷移する方が視点が迷子にならず快適になるのに残念です。

3.これもカーソルがらみですが、ページアップ・ダウンで画面遷移したのに、カーソル行がついてこないので、上下左右キーを押すと元の行にまた戻ってしまいます。UIとしてそれを望んでいるユーザは居ない気がします。

4.検索ボックスでhome/endキーが文字化けします。homeキーで行頭・endキーで行末に慣れているエンジニアにはちょっとしたストレスです。これは仕様ではなくバグのはずなので、早期の修正が望まれるところです。

5.また検索ウィンドウ関連ですが、1回目の検索で空振り(一致キーワードが無かった)の時、ウィンドウが勝手に閉じられてしまって、わざわざ開き直さなければなりません。バグなのか仕様なのか分かりませんが。。。

エンジニアにとってテキストエディタは極力ストレスフリーで、コードを書く以外に無駄なキー操作は極力避けたいものです。それが達成されているなら機能なんて最小限でも構わないくらいです。

近年、テキストエディタが統合開発環境(IDE)化している傾向にありますが、IDEはIDE、テキストエディタはテキストエディタのメリットがあるのですから、それぞれ棲み分けしているのが最善だと思います。

IDEは多機能高機能なので、多少のもっさりは許容できますが、テキストエディタは軽量快速が最上ではないでしょうか?

以上、不満点を挙げましたが、無料でテキストエディタを配布していただいていることへの敬意を忘れてはいけません。作者さんには感謝しています。

そもそも私の Macテキストエディタ探しの旅は Sublime Text, Atom, Cot Editor, Brackets, BBEdit, TextWrangler などを試した後に mi テキストエディタへ辿り着いたのですが、やはり上記不満点で離脱しようと思います。

離脱先は、Visual Studio Code にしました。マイクロソフト謹製でまたもやIDE系なので、もっさりしていそうだという先入観で今まで避けていたのですが、試しに使ってみて意外と軽快さにビックリ‼️
以下、テキストエディタに Visual Studio Code を採用した理由を列挙します。

1.起動が比較的軽快、前述したマシン環境と同じ条件で計測したところ 2.1秒でした。mi テキストエディタより 0.7秒速いだけなのですが、率で表現すれば0.75倍=25%速度向上です。

2.上下カーソルはちゃんと1行ずつスクロールして視点が迷子になりません。

3.ページアップ・ダウンで移動してもカーソル行が付いて来ます。ページダウンで100行まで移動し、そこから下カーソルを押しても101行を指します。

4.検索窓でキーワードを入力すると、リアルタイムでジャンプしてくれるので、エンターキーを押す必要がありません。無駄なキーストローク1回分を省略できるのは助かります。

など、mi テキストエディタの不満部分がとりあえず、すべて解消されているので、暫くは Visual Studio Code を使ってみます。また不満点などあれば記事にします。

あとは Sublime Text くらいの高速起動ができれば百点満点なのですが、総合点では今の所、最善な選択かと思います。


銀行キャッシュカード一体型PASMOの落とし穴と解決策を情報工学的に考えてみた

三菱UFJ銀行が発行している、キャッシュカード一体型PASMO。
カード一枚にキャッシュカード機能だけでなく、交通系ICカードのPASMO(パスモ)も付いて便利!というシロモノです。

がしかし!とんだ落とし穴が潜んでいました。

最初に使っていたまでは良かったのですが、5年の有効期限が迫り、新しい更新カードが届いたところ、思いもよらぬ面倒な手続きが待ち構えていたのです。

駅での手続きが必要です
複雑な手続きフロー

この説明書の通り、駅での手続きが必要。
これ、ITに詳しくない人なら「そんなの当たり前じゃん」って思うかも知れません。

いやいや、本来、こんなの自動で出来る範囲なのです。

情報工学的に、なぜわざわざ窓口へ行かされるのか疑問を抱いたのかを説明します。

裏面にはPASMO IDが表示されています。

つまり、発行事業者は、旧PASMO IDと新PASMO ID の紐付けが出来ているわけです。

有効期限がこの例では2018年12月までとなっているので、2019年1月1日の午前0時にサーバ側で自動的に移行すれば良いだけ。わざわざ顧客を窓口まで来させる意味なんかゼロなのです。

ちなみにPASMO残高はカード内に保管されておらず、サーバ側で管理されています。なのでICカードライターで勝手に残高を増やすなんて事は不可能なわけです。

サーバ側で残高を管理していて、カードのICチップには単にPASMO IDの番号のみしかなのだから、本来、勝手にサーバで移行すれば顧客は期限後に旧カードを破棄するだけで良いのです。

しかも、最近は鉄道会社が人員削減をしているので、定期券窓口はどんどん閉鎖されて都内でもかなり限定されていて、普段使わない駅までわざわざ行かなければなりません。

しかも、PASMOを扱っている鉄道会社なら何処でも良いのかと思ったら、このカード、東急ポイントなんてのが勝手に付いているので、東京メトロの某駅の駅員に尋ねてみたところ、東急ポイントのカードなので東急線でしかできませんとか言う始末(恐らく東京メトロの駅員の知識が無かったと思います)。

そもそも、すべてサーバ側にデータがあるのだから、自動的にシステムで切り替えるべきでしょう。

一体型PASMOカードには要注意という話でした。


メールアドレスの漏洩状態を確認する方法

Adobe や Dropbox をはじめ、過去に幾つもの有名サイトから情報漏えいが繰り返されてきました。

メールアドレスが漏れればスパムメールが送られてきます。スパムメールは、違法ドラッグの販売や詐欺メール、ウイルスを仕込んで来るなど、悪質なメールも少なくありません。

さらにパスワードが漏洩すれば、同じパスワードを使っている他の漏洩していないサイトにまで侵入されることも発生します。これがネットバンクだったり、ショッピングサイトだったら、実際に資産の危険にまでなるのです。

パスワード設定の原則は、サイト毎に個別のパスワードで設定することですが、中々そうもいかないと思います。最近は二段階認証を導入するサイトも増えているので、もし利用中のサイトに二段階認証機能があるなら積極的に利用しましょう。

さて、自分のメールアドレスやパスワードが漏洩しているかのチェック方法ですが、下記サイトで確認することができます。

ブラウザを開発している Firefox が提供しているものなので、安心して使えます。調査したいメールアドレスを入力するだけでOK。そうすると、もし漏洩に該当していれば、下記のように表示されます。

Adobe からの情報漏洩

これは Adobe 社に登録した情報が漏洩しているということです。Adobe は 2013年10月に1億5244万もの大規模漏洩していますが、残念ながら私のメールアドレスは、この事件の被害者になっていました。

そして、漏洩した情報は、

・メールアドレス
・パスワードヒント(親の名前は?など)
・パスワード
・ユーザ名

ということです。もう一切合切ですね。これを使えば、他のどのサイトでもログインできてしまいます。大変危険な状況です。

もし、残念ながら漏洩している結果となった場合は、あなたが登録した他サイトのパスワードをすべて変更すべきです。

どれだけ複雑なパスワード、例えば「ji7Th_4a90sKl*67%」など設定していようが、漏洩したら何の防御力もありません。そして、どんなサイトでも漏洩するだろうというつもりで登録するしかありませんが、自己防御として、

・登録サイト別にパスワードを決め、同じパスワードを使いまわししない
・二段階認証が備わっているサイトなら必ず二段階認証を使う

これが大事です。


【2017年度】東証1部の時価総額647兆円

2017年度末(2018年3月30日)の東京証券取引所第1部の時価総額が647兆円となった。
2016年度より79兆円(13.9%)増で年度末として最高を更新。

日本の株式市場の時価総額は、バブル期を超え過去最高だったようですが、一方、米国の株式市場では、

米アップル社は、8月2日に時価総額が1兆ドル(約112兆円)を超えた世界初の上場企業となった。

つまり、日本の東証一部の時価総額は、アップル社6個分の規模でしかないということになります。

日本は世界第三位の経済大国とされていますが、日米比較すると大人と子供の差がありますね。

さらに、

東証一部への公的資金投入が 66兆5000億円(2018年6月末)となり、筆頭株主が公的資金(GPIF・日銀)となっている東証一部企業数は722社にのぼる。

東証一部の時価総額の10%超が公的資金。まるで社会主義国家のような勢いですね。
なお公的資金の内訳は、GPIF40.4兆円、日銀26.1兆円とのこと。

そして東証一部の上場企業数は2106社、うち日銀か年金機構(GPIF)が筆頭株主の会社は722社。上場企業の34%が国が筆頭株主ということです。