オンライン選挙はいつ?

 日曜に県知事選挙があったので荒天の中、所有する傘の中で一番頑丈そうなのを選択して投票所へ行ったのですが、圧倒的な瞬間風速にあっさりと傘が損壊、無理して行かなくてもよかったような・・と思ってしまいましたが、そもそも今の時代になんでオンラインで投票できないのかと考えました。

 メリットやデメリットの話ではなく、現行法の制約等は考えず、純粋にただ実現させる為には何を決めるべきなのでしょうか。

 まず、最初にオンライン投票への移行方法です。従来の方法を廃止してオンラインのみにするというのをいきなりやる事はあり得ないとして、オンライン投票の併用期間をどの程度の長さで設定するかという事があるかと思います。選挙自体が年数回あるかないかなので、運用に慣れるには当面は期限を設けず併用し続けるか、または数十年レベルの期間を経た後、コスト削減の為に従来方法を廃止しオンラインのみに移行させた方がよさそうです。
 併用期間では、従来方式とオンラインの整合性をいかにとるかという課題がでてきますが、オンラインは期日前投票のみとした方が仕組み上簡単そうですね。エストニアはそうしているようです。

 次に認証方法です。
 現時点ではマイナンバーカードが有力ですが、筆者のように毎年e-Taxで使っているような人は少ないと思いますので、これでは当面普及しないでしょう。他に、投票券にQRコードを印刷してスマフォで投票とかもありそうですが、マイナンバーのX桁目とX桁目とかを入力させるといった他の認証と組み合わせた方がよいですね。

 あと、既存の投票券発送データを使うでしょうから、自治体とオンライン選挙システム間でどう連携するかという箇所は何等かの調整が必要そうですが、それ以外は、合意形成が必要そうな箇所はあまりないのでなるようになるでしょう。やると決まってしまえばあまり時間を掛けずに出来そうなのですがどうですかね。

JavaMailメール送信でSMTPサーバを指定するもlocalhostへ接続

 メール送受信をする処理が動いているサーバを別のインフラに移動したいという事で、移行作業し稼働させたところ、メール送信が出来なくなっている事が判明。

 正確には、メール送信処理は複数あり、単純なJavaアプリとして稼働しているプロセスでは問題が無く、SpringbootでWebサービスとして稼働している処理のみが問題となっています。どちらも元のサーバ上では何ら問題なく動作していました。新環境ではJavaアプリのテストはしてましたが、問題無かったのでSpringboot側は割愛してしまいました。なお、Javaアプリと比べて、Springboot側はjavamailのバージョンがSpringbootのバージョンに引きずられて微妙に古い状況(1.6.1)。

 アプリ的には正常終了扱いとなっており、どこでメールが止まっているのかと調べてみると、mail.smtp.hostで指定しているSMTPサーバにはメール送信ログは無く、なぜか移行先サーバー内の/var/log/maillogにログが、、
Network is unreachable で終わっています。

 どうやら指定しているSMTPサーバでなく、localhostに対しメール送信要求をしているようです。

 とりあえず、移行先のサーバでpostfixを稼働させる必要は無いので止めてもらい、メール送信テストを行うと、今度は接続出来ないとアプリ側でエラーになりました。

 どうも、、デフォルト設定がlocalhostで、そちらが優先されているようですね。。

アプリ側が
session = Session.getDefaultInstance(props);
だったので、
session = Session.getInstance(props);
に変えて問題は解消しましたが、どこでデフォルト設定されているのかは不明なままでした。。

こちらが参考になりました。影響は軽微で、ちょっと痛い目にあったという感じです。

カテゴリー: Java