カテゴリ: ライセンシング
プッシュ更新で、ライセンス配布が容易に
バージョン6.70では、CodeMeterが修正コンテキストファイル (*.WibuCmRaM)を作成し、ユニバーサルファームコード用のリモート更新ファイル (*.WibuCmRaU)を結合することが可能となりました。単なる平面的な技術的変更のように感じるかもしれませんが、これは、CodeMeterを現場で使用する際には欠かすことのできない機能の一つです。この小さな新機能により、CodeMeter License Centralは2つの新たなユースケースに対応できるようになりました。1つ目は、新しいリモートコンテキストファイル(*.WibuCmRaC)無しでのライセンスの提供、2つ目は、古くなったリモートコンテキストファイルを用いたライセンスの提供です。
ライセンス更新(基礎講座)
数週間前、私はまだCodeMeterを使っていない医療機器メーカーを訪問しました。その会社が採用するシステムは、エンドユーザーが新機能を購入するたびに、新しいUSBドングルを発送します。例えば、エンドユーザーが2つの新機能を購入した場合、新たにドングルを2つ受け取ります。もしエンドユーザーが機能を大量に購入したとしても、1つの機能につき1つのドングルを受け取らなければなりません。
事前にプログラムされたドングルを常に配布できるため、SAPにとってこのシステムは簡単かもしれませんが、拡張性に欠ける上に時間もかかり、時代遅れにも感じます。この医療機器メーカーでは、すべての機器が実際にインターネットに接続されているとは限らないため、そもそもクラウドライセンスは選択肢にありませんでした。
CodeMeterには、ファイル交換システムをベースとしたリモートプログラミング機能が搭載されています。実際のライセンスは、ハードウェアベースのCmDongleまたはソフトウェアベースのCmActLicenseに保管されるため、オンライン環境でなくても使用することが可能です。ライセンスの変更には、エンドユーザーにコンテキストファイルを送ってもらう必要があります。その後、更新ファイルを作成し、様々なオフラインチャネルを通じてエンドユーザーへと届けることができます。また、このファイルは、必要に応じて、ライセンスの変更/削除/追加が可能です。
更新は一度のみでOK
更新ファイルではインクリメンタル(増分)の更新が適応されており、前回の設定を上書きしていく形で更新が実行されます。つまり、更新の連鎖において、リンクが1つ欠けたり、誤ったタイミングで追加されたりすることはありません。また、他にも重要となるセキュリティ機能があります。それは、すべての更新ファイルは、最初のリクエストを送信したPCまたはCmDongleでのみ、そして1度のみ使用可能ということです。このセキュリティ機能がなければ、エンドユーザーは正規の更新を1つだけ入手すると、それをライセンスなしで複数回使用することができてしまうため、上書き更新では必要不可欠な機能です。この解決策として、シンプルではありますが、制限を設けるという方法があります。エンドユーザーから送られてきた最新のコンテキストファイルで制限をかけるのです。少なくとも、CodeMeter 6.70以前はこのような策がとられていました。
もはや切り離すことのできない、オンラインとオフライン
CodeMeter License Centralでは、ライセンスの作成/配布/管理を快適に行うためのクラウドベースのソリューションを提供しています。エンドユーザーは、チケットを受け取り、ソフトウェアまたはWebDepotのような専用のライセンスポータルでそのチケットを使用できるようになります。エンドユーザーがオンラインの場合、コンテキストファイルが自動生成され、CodeMeter License Centralへと送られます。そして、チケットに定義されたライセンスを含む更新ファイルが作成されます。システムは、そのファイルをソフトウェアやライセンスポータルに送り返し、そこでは更新がインポートされ、レシートがコンテキストファイル形式でCodeMeter License Centralへ返却されます。
上記の医療機器メーカーに話を戻しましょう。この会社では、まだすべてのデバイスにCodeMeterが導入されていません。しかし、CodeMeter License Centralのオンライン機能を使うことで、オンライン上のデバイスすべてのライセンスの管理が容易になります。では、オフラインのデバイスに関してはどうでしょうか。この場合、WebDepotを用いて、コンテキストファイルをアップロードし、対応する更新ファイルをダウンロードすることが可能です。ほとんどの場合、最後のプロセスは、オプションとなり、省略可能です。医療機器メーカーにとって、扱いづらいこのプロセスを省略すると、どれほど簡単になるのか検証してみましょう。
最初の更新の前段階
ソフトウェアやハードウェアをエンドユーザーに提供することから、すべてが始まります。これは通常、デバイスやライセンスの購入時に行われますが、トライアル購入の際も可能です。よくある3つのシナリオを想定してみましょう。
- 必要なライセンスの初期設定がされた自社のハードウェアを、デモライセンスやベーシックバージョン、あるいは空のコンテナに入れて提供します。このコンテナは、CmActLicenseやCmDongleの形で提供されます。
- 設定済みのライセンスをもつCmDongleを提供します。
- CodeMeter License Centralを通じてエンドユーザーにチケットを送り、エンドユーザーが、ターゲットデバイス上のCmActLicenseまたは既存のCmDongle(マルチベンダー機能付き)を使用できるようにします。
最初の2つのシナリオでは、配布前からCmContainerが手元にある状態です。この場合、各コンテナと一致するコンテキストファイルの保存が可能です。
最後のシナリオ、つまり新しいデバイスやすでにアクティブなCmDongleでのアクティベーションでは、確立されたプロセスで、エンドユーザーがこのデバイスやドングルのフィンガープリントを送ることで、ライセンスを取得します。
一番最初の更新
最初のライセンスが作成されると、コンテキストファイルが保存され、これを最初の更新に使用することができるようになります。この場合、エンドユーザーから新たにファイルを送ってもらう必要はなく、代わりにプッシュ更新で最初の更新を配布します。あなたまたはユーザどちらかが、ライセンスを入れるべきCmContainerのシリアル番号を選択するだけでよいのです。
CodeMeter License Centralでは、この作業は自動化され、コンテキストファイルと更新ファイルを保存し、どのエンドユーザーがどのCmContainerに入るかを管理します。
2回目以降の更新
2回目以降の更新には、新しいコンテキストファイルが必要となりますが、それがない場合はどうすればよいのでしょうか。ここで鍵となるのが、修正コンテキストファイルです。CodeMeterは、最後のステップで更新ファイルと共に修正コンテキストファイルを作成します。これは、エンドユーザーが通常送信するコンテキストファイルの代替となるものであり、これを使用することで、エンドユーザーの手間をかけずに、プッシュ更新を作成することができます。更新のたびに、次の更新のための新たな修正コンテキストファイルが生成されます。
バージョン3.21以降、CodeMeter License Centralによって、このプロセスすべてが自動化されます。「プッシュ更新」でCmContainerのシリアル番号を選択して更新ファイルをダウンロード、またはエンドユーザーが自分でこの作業を行うためにライセンスポータルに同じ機能を統合します。
更新に何らかのミスがあったら?
しかし、エンドユーザーが更新のインストールを忘れた場合、そもそも更新が正常に実行されなかった場合にはどうなるのでしょうか。更新ファイルは結合するように作られているため、心配する必要はありません。CodeMeter License Centralは、どの更新がコンテキストファイルで開始されたかを正確に把握し、個別のレシート、または新たな更新とともに自動的に通知してくれます。まだ確認されていない更新に関しては、該当するCmContainerの最新の更新ファイルへと自動統合されます。そして、CodeMeter Runtimeは、既にインストールされている更新を自動的に検出してスキップします。それまでに起こったこと、起こらなかったことに関わらず、常に再度最新の状態になります。
すべて自動化
これにより、医療機器メーカーにとっては、単純なドングルを使用していたときと同様に、すべてのプロセスが簡単になります。メーカーは、クライアントのマシン上ですべてを整える更新ファイルを配布するだけでよいのです。エンドユーザーに必要なのはドングルのみですが、CmActLicenseの場合それすら必要なく、すべてが即座に配布されます。
しかし、一つの疑問が浮かびます。「もし、標準パスを使用していて、エンドユーザーが間違って古いコンテキストファイルを選んでしまった際にはどうなるのでしょうか。」これには、「問題ありません。更新は適切に処理されます。」と答えられます。より詳細に答えると、「CodeMeter License Centralには、古いファイルが選択されたことを認識する、いわゆるファーム更新カウンターと呼ばれる状態カウンターがあります。このカウンターが作動していない場合、プロセスが、自動的にすべての古い更新をチェックオフします。その後、現在の修正コンテキストファイルが選択され、残りのすべての更新が更新ファイルに含まれた状態で、更新が作成されます。」という回答が適しています。
ライセンスの返却
医療機器メーカーのISVが、最後の質問をしてきました。「プッシュ更新でもライセンスを返却することは可能でしょうか。」 答えを知っていますが、思わず質問を返してしまいました。「エンドユーザーが返却するということは、あなたがライセンスを取り消すということですか。」もちろん、どちらでも問題ありません。
エンドユーザーは通常、別のデバイスに移行するためなどにライセンスを返却します。この場合も、プッシュ更新で行うことができます。返却されたライセンスを確認するために新しいコンテキストファイルが必要となりますが、次のデバイスでのアクティベーションもプッシュ更新で行うことができます。
ISVとして、ライセンスを取り消すこともできますが、これもプッシュ更新で行うことも可能です。回収の完了を確認したい場合は、コンテキストファイルの形でレシートを要求することができますが、たとえレシートを受け取らなかったとしても、エンドユーザーはライセンスの取消を伴うプッシュ更新をスキップすることはできません。エンドユーザーが隠れて取消を回避することは事実上不可能であり、これは特にサブスクリプションやペイ・パー・ユーズライセンスで役立ちます。
まとめ
プッシュ更新により、特にオフラインのシナリオで、ライセンスの配布が容易になります。CodeMeter License Centralは、エンドユーザーが更新をスキップしたとしても、常に最新の状態であることを保証します。医療機器メーカーと同様に、ISVであるあなたもCodeMeterの自動機能に頼って、煩わしい作業から解放されませんか。
KEYnote 36 – Edition Fall 2018