NJS Developers

日本情報システム株式会社の開発ブログ

簡単!タスクトレー常駐アプリ開発

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の進藤です。
2015年も残り1ヶ月をきりましたね。寒い日が続いておりますので、風邪を引かぬようご自愛ください。
さて、たまには技術者らしいことを書いてみようと思います。 今回は、初めてでも簡単に作れる常駐アプリの作り方をご紹介します。

画像

事前準備

Visual Studio 2015のインストール

今回はこれを見れば誰でも開発できるように、無料で配布されている開発ツール「Visual Studio 2015」を使ってプログラミングしてみましょう。

上記サイト内の「Communityを無料ダウンロード」をクリックすれば、vs_community.exeというインストーラがダウンロードされるので、それをダブルクリックしてインストールしてください。
Visual Studio 2008/2010でも同じ手順で開発できます。

手順

1.Visual Studio 2015の起動

インストールした「Visual Studio 2015」を起動。

2.メニュー選択

ダミー

ファイル(F) → 新規作成(N) → プロジェクト(P)をクリック。

3.プロジェクト種類を選択

ダミー

Visual C#Windowsフォームアプリケーションを選択、任意の名前を指定し、OKボタンをクリック。

4.Program.cs変更

ダミー
namespace testap
{
    static class Program
    {
        /// 
        /// アプリケーションのメイン エントリ ポイントです。
        /// 
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            //Application.Run(new Form1());
            // ↓変更
            new Form1();
            Application.Run();
        }
    }
}

5.NotifyIcon追加

ダミー

ツールボックスのNotifyIconをダブルクリック。

ダミー

画面左下辺りに「notifyIcon1」が表示されればOK。

6.ContextMenuStrip追加

ダミー

ツールボックスのContextMenuStripをダブルクリック。

ダミー

画面左下辺りに「ContextMenuStrip」が表示されればOK。

7.NotifyIcon設定

ダミー

画面左下辺りに表示されている「notifyIcon1」をクリックすると、今度は右下にそのプロパティが表示されるので、下記のように設定する。
【変更点】
ContextMenuStrip:contextMenuStrip1を選択
Icon:タスクトレーに表示されるアイコン。(お好きなものに)
Text:アイコンのオンマウス時に表示されるツールチップの中身。

8.終了メニューの追加

ダミー

画面左下辺りに表示されている「contextMenuStrip1」をクリックすると、フォームにテキスト入力欄が表示されるので、「終了」と入力する。
入力後、「終了」をダブルクリックして、終了時の処理を記述する。

private void 終了ToolStripMenuItem_Click(object sender, EventArgs e)
{
    // アイコン非表示
    notifyIcon1.Visible = false;
    
    // アプリケーション終了
    Application.Exit();
}

9.ビルド

ダミー

ビルド(B) → ソリューションのビルド(B)をクリック。

ダミー

上記のように表示されればOK。

10.さっそく動かしてみよう

ダミー

開始をクリック。

ダミー

タスクトレーにアイコンが表示されれば、常駐アプリの完成です。
完成したアプリは、手順3で作成したプロジェクトフォルダ内にプロジェクト毎に保存されます。 今回の例で言うと以下のパスに保存されます。
C:\Users\ユーザ名\Documents\Visual Studio 2015\Projects\testap\testap\bin\Debug\testap.exe

おまけ

常駐アプリで何をするかは人それぞれですが、メモ帳が使えなくなってしまうプログラムを組んでみましょう。(まったく意味ない機能ですが、あくまでサンプルということで)

public Form1()
{
    InitializeComponent();
    
    // 無限ループ(CPU負荷注意)
    while (true)
    {
        // プロセスリストにて"notepad"が存在する場合
        if (System.Diagnostics.Process.GetProcessesByName("notepad").Length > 0)
        {
            // "notepad"というプロセスを全て取得
            System.Diagnostics.Process[] ps = System.Diagnostics.Process.GetProcessesByName("notepad");
        
            // 上記で取得したプロセスを全て終了
            foreach (System.Diagnostics.Process p in ps)
            {
                p.Kill();
            }
        
            // アラート表示
            MessageBox.Show("メモ帳は使えません。", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        }
    
        // 1秒毎
        System.Threading.Thread.Sleep(1000);
    }
}

上記を記述したら、ビルドしてプログラムを実行させてみてください。アプリが常駐した状態でメモ帳を開くと、警告が表示されてメモ帳が閉じてしまうはずです。

ダミー

プログラム自体のエラーはありませんが、CPU、メモリ負荷とかWindows系のエラーを一切気にしていないプログラムなのでご了承ください。

まとめ

いかがでしたか。
常駐アプリの仕組みをご理解頂けたでしょうか。興味がある方は是非試してみてください。

Yubi Plus連携

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の進藤です。
YubiPlusが完成し、いくつかの他社サービスと連携させて頂いておりますが、今回は、そのうちの一つ、Web上で動作するYubiPlusをご紹介します。

画像

概要

基本的な仕様は以前からご紹介しているYubiPlusと同様です。認証する場所が、ローカルなのかサーバーなのかの違いです。
サーバー側に認証プログラムを設置して、クライアントアプリあるいは、Webアプリからワンタイムパスワードを渡してあげるだけです。
もちろん、そのサーバーがオンプレミスでもクラウド上でも通信さえできていれば仕組みは同じです。

オンプレミス

オンプレミス ( 英語: on-premises(オン・プレミシズ))とは、情報システムを使用者(通常は企業)自身が管理する設備内に導入、設置して運用することをいう。
ウィキペディアフリー百科事典
https://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%B3%E3%83%97%E3%83%AC%E3%83%9F%E3%82%B9

メリット

パスワードをぽいっと捨てる絵

一番のメリットはパスワードを管理する必要がなくなることです。

Web上のサービスを利用する際のよくある仕組みとして、ログイン画面でユーザーIDとパスワードを入力します。
ユーザーIDとパスワードは、サーバー上で管理されていますので、なんらかの形でそれが漏れてしまった場合、本人以外でもそのサービスを利用することができてしまいます。

もっと言うと管理方法によっては、サーバー管理者(悪)も本人になりすましてサービスを利用することができてしまいます。
ですが、従来のパスワード認証を、YubiKeyから発行されるワンタイムパスワードの認証に切り替えると、そのYubiKeyを持った本人しかサービスを利用することができなくなります。
同時に、使い切りのワンタイムパスワードなので、固定パスワードを管理する必要がなくなります。YubiKeyを無くしてしまいそうな方、どこかに置き忘れてしまいそうな方は、従来のパスワードと併用した多要素認証にするのがオススメです。
そうすれば、YubiKeyを拾われてもパスワードを知られていない限りサービスを不正利用されることはありません。
サーバー管理者(悪)にYubiKeyを拾われるような方は・・・・・、セキュリティ研修を受けてください。

まとめ

いかがでしたか。
Yubi Plusは、まだまだ評価段階ですが、実績を重ねてセキュリティソフトとしての質を高めていけたら幸いです。

Yubi Plus連携

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の進藤です。
今回は、YubiPlusを何に連携していくかをご紹介します。

画像

VPN(バーチャル・プライベート・ネットワーク)連携

VPNの自体の仕組みをどうこうするわけではなく、VPNクライアントとVPNサーバーの仕様は従来通りで、VPNクライアントアプリ(GUI)の起動時にYubiKeyが接続されていないと起動できないといった制御ができないかと考えています。
できれば、そのGUI自体を弊社独自のGUIに差し替えてユーザー目線の最適化されたインターフェイスにしたいのですが、既存VPNクライアントとの互換性とかいろいろリスクもありそうなので、今は構想だけにしておきます。
ユーザー側から見ると、YubiKeyが接続されている状態ならVPN接続が認証要らず(実際、内部では認証している)で、かつ、Yubi Plusと併用すると、なんちゃってシングルサインオンになるような仕組みにできたら面白いと思っています。
それが実現できれば、YubiPlusをランチャーとして機能させ、様々なサービスを加えるきっかけになるのではないでしょうか。

他社製品との連携

画像

基本的に、ID/パスワードでログインするシステムには何でも連携できると思っています。
従来の認証+YubiPlusの多要素認証という使い方を一般的な使い方にして、ID/パスワードを入力することすら煩わしい場合には、YubiKeyが接続されている状態のみという条件付きで自動ログインさせるなど、ユーザーに合わせた使わせ方ができるのではないでしょうか。
また、YubiPlusで出力したログをログ解析ツールやログ記録ツールなどで一緒に使ってもらうなど、前段の処理だけでなく後続処理で役に立つような機能も考えていこうと思っています。

まとめ

いかがでしたか。
YubiPlusには、ユーザーの声をどんどん取り入れて、痒いところにも手が届くような、ありそうでなかったシステムができていければ幸いでございます。
ここで、お知らせです。
10月28日~31日、幕張で開催される「第5回 情報セキュリティEXPO【秋】」で、弊社サービスのマイナンバー安心パックとして、株式会社パシフィックネット様にご紹介して頂けることになりました。
そこで「Yubi Plus」のデモも行うようですので、お時間ある方は是非立ち寄ってみてください。

ついに完成しました!Yubi Plus誕生

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の進藤です。
今回は、YubiKeyを使ったソフト開発を行っていたものが完成しましたのでご紹介します。
製品化に向けてやることが山積みですが、一段落としてご報告です。
その名も「Yubi Plus」。

画像

ソフト名ですが、「Yubi Plus」(ユビプラス)に決定しました。指という要素を足す(プラスする)だけ!といったコンセプトを元に考案し、この名前に決まりました。

概要

このYubi Plusは、WindowsのログオンをYubiKeyという認証要素を追加してログオンするといったシステムです。
従来のWindowsパスワード + YubiKeyでWindows認証するため、従来のパスワードのみ、または、YubiKeyのみでは、認証が成功しません。
2つの認証が必要な二要素認証となります。
操作方法は、従来のパスワードを入力した後、YubiKeyをタッチするだけなので、 簡単とセキュアのバランスが取れているのではないでしょうか。

また、Windowsログオン時のログを蓄積しており、いつ、誰が、その端末にログオンしたかを記録しているため、解析ツールなどと連携することによりアクセス管理を行うことも可能です。

YubiKeyを取り外すと、パソコンにロックがかかるようにもしており、 ユーザーをログオフさせるわけではなく、単純に「Windowsキー + Lキー」と同じ動作で、Windowsパスワード入力画面を表示させるだけなので、作業中のファイルが消えてしまうといったことはありません。
YubiKeyが接続されていないとパソコンが使えないといった状態が作りたかったのです。

特長まとめ

  • インストール、登録作業、解除作業が簡単に操作可能。(管理者権限のみ)
  • 従来のWindowsパスワード + YubiKeyから発行される44桁ワンタイムパスワードの二要素認証でWindowsログオン。
  • Windowsログオン時のログを収集。
  • YubiKey取り外し時、パソコンを強制的にロック。Windowsパスワード入力画面になります。

比較的シンプルに仕上げており、アカウントと紐付いたYubiKeyが接続されていればパソコンを使える、接続されていなければ使えない、ただそれだけの仕組みです。
オプションとして多数機能を実装予定ですが、スタンダード版としてはこの機能になります。

まとめ

いかがでしたか。
今後も「Yubi Plus」をベースに様々な機能拡張を行っていきます。
簡単、便利、セキュアというコンセプトから外れることなく機能が充実してくれば、かなり期待できるシステムになるのではないでしょうか。
製品化に向けて進展があれば随時ご紹介していきます。

マイナンバー 早めに取り組むべきこと

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の大阿久です。
前回に続き、企業におけるマイナンバー制度への取り組みについて解説します。
最終回のテーマは、早めに取り組むべきことです。

画像

関連する帳票とシステムの確認

マイナンバーの利用目的を明確にしなくてはなりません。まずはマイナンバーに関連する帳票を洗い出しましょう。国税庁厚生労働省等から、変更予定の様式が公開されています。源泉徴収社会保険関係の事務を中心に、支払調書等でも関係するものがあるかもしれません。人事・給与システム、会計システムなどを利用している場合については、ソフトウェアの提供元へマイナンバーの対応状況を確認しましょう。

準備のための組織体制

関係する部門に協力を仰ぐことはもとより、準備段階から経営層にも参加いただくことをおすすめします。業務フローの確認に長い期間を消費するかもしれません。最優先で協力を頂けるような体制づくりを進めます。

委託先の確認

税の申告、社会保険の手続きなどを外部に委託している場合、マイナンバーの取り扱いについて確認しましょう。明確な回答を得られない場合もあるかもしれませんが、まずは現時点の状況を把握しておくことが大切です。なお、マイナンバーを委託先に提供するためには、予め法に則った委託契約が必要となります。

マイナンバー関連商材の情報収集

制度改正を機に、多くの企業がマイナンバーの取得や保管の事務負担を軽減するための製品やサービスを発表しています。具体的な安全管理を検討するうえでも、どのようなツールがあるのかを把握しておきましょう。特に、従業員数が多い場合、選択するツールによって費用に大きな差がでます。実態に合わせて見積もりを取得しましょう。 議論はあろうかと思いますが、正式な契約は取扱規程がおおよそ決まるまで待つべきだと考えます。安全管理は、従業員のプライバシーを守る大切な取り組みですが、対応の予算も限られているはずです。継続的に取り組まなくてはならないものですから、適正な費用で、大きな効果が得られるように安全管理を検討していく必要があります。例えば、どんなに質の良いセキュリティ商材を導入しても、時間の経過とともに抜け穴が見つかるものです。従業員教育が徹底されていなければ漏えいのリスクは一気に高まります。全体のバランスがとれるように調達するべきではないでしょうか。

最後に

3回にわたって、マイナンバー制度が求める安全管理とその取り組み方についてご案内いたしました。これでマイナンバーの解説はひと区切りとなります。安全管理は一度で完璧なものにすることよりも、定期的な監査を欠かさずに、教育と改善を続ける事が大切だと考えます。ぜひ継続的に取り組んで頂きたいと思います。

マイナンバー 何からはじめよう

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の大阿久です。
前回に続き、企業におけるマイナンバー制度への取り組みについて解説します。
第2回は、何から始めるべきか、というテーマですすめていきます。

画像

まずは、ガイドライン

すでにマイナンバー対応を進めている企業様も多くいらっしゃることでしょう。
しかし、どう進めていくかわからない、または手戻りばかりでなかなか決まらない、という悩みをお持ちのご担当者様方もいらっしゃるかと思います。
仕事でマイナンバーに関わる、そんな方にまず目を通して頂きたいのが 「特定個人情報の適正な取扱いに関するガイドライン(特定個人情報保護委員会発行) 」 です。
やや難解な表現もありますが、深追いをせず、まずは全体を把握することが大切です。

オフィスを見回して想像してみる

ガイドラインの次はオフィスへ目を向けてみましょう。「この場所で大切な情報を扱う」ということを想像したとき、どのような点が課題となるでしょうか。
ガイドラインが示している「企業が遵守するべきこと」は、決して簡単なものではありません。
そのため、一定の企業に対して特例的な対応方法が示されています。 企業ごとに、既存の取り組みや、従業員規模、派遣社員の割合、営業所や店舗の数など、取り扱う事務の特性は様々です。
ですから、どう対応すれば適切な安全管理となるか、その答えは企業ごとに異なります。

取り組みの着地点

マイナンバーという大切な情報を守るために、ガイドラインでは、安全管理を4つの目線で検討することを求めています。検討した安全管理は、「取扱規程」としてまとめる必要があります。
4つの安全管理とは、「組織体制」「従業員教育」「オフィス環境」「パソコン環境」と考えてください。これらを、マイナンバーを取扱う事務に適用し、教育、監督、改善を継続的に行っていきます。
これらに加えて、企業として法令遵守への取り組みを宣言する役割が、「基本方針」にあたります。 安全管理は時として事務に負担を強いることもあるでしょう。 経営層からのメッセージは安全管理の取り組みを推進する上で重要なものとなります。

次回は「早めに取り組むべきこと」

今回は制度が求める安全管理の取り組み方について、大筋の流れを解説いたしました。次回は早めに取り組むべきことについて話を進めてまいります。

マイナンバー 対応は進んでいますか

みなさんこんにちは。日本情報システム株式会社 ICTソリューション部の大阿久です。
今回は企業におけるマイナンバー制度への取り組みについて触れていきます。
一見難解な制度ですが、できるかぎり、わかりやすく解説したいと思います。どうぞよろしくお願いします。

画像

このブログで触れること

政府広報等により、マイナンバーの言葉を耳にする機会がふえています。2015年10月より、順次、住民票に記載の住所へ通知書が送付されます。これから始まる新しい制度のために、全ての企業、団体、個人が準備をしなくてはなりません。 これから3回にわたり、一般的な企業が、新制度に向けてどのような準備をするべきか、対策を行う企業の目線で解説します。簡単な制度の概要と、企業が行うべき対応について大筋の流れをご理解いただくことに焦点を当てたいと思います。

制度についてほんの少し

マイナンバー制度は、新しい納税のしくみとも言えます。これを社会保障と一体で推進していくものです。企業として気にするべきことは個人情報保護法の改正です。マイナンバー制度の導入にあたり、これまでの個人情報保護法に新たなルールが上乗せされました。これを監督する国の組織も編成され、個人情報を大切に扱うための仕組みづくりが進められています。

事業主としてのマイナンバー

これまでは一部の業種を除き、企業に対して個人情報保護の義務はありませんでした。しかし、マイナンバー制度が導入されることで大きく変化します。国内の全ての企業が、源泉徴収社会保険関係の事務に利用することを目的に、従業員のマイナンバーを管理することになります。

まとめ

企業は、従業員の大切な情報を守るという新たな役割を担うことになりました。ですが、質の良いセキュリティ商材を使えば万全というものではありません。次回は制度が求める安全管理の取り組み方について、大筋の流れを解説いたします。

PAGE TOP