akihiro kamijo: October 2007 Archives

« September 2007 | Main | November 2007 »

October 16, 2007

Adobe AIR ベータ 2 セキュリティ関連の変更点

AIR ベータ 2 関連でセキュリティの話題を 2 つご紹介します。

まず、先週 AIR のインストールバッジの更新版が公開されました。(air_b2_badge_100907.zip : 50.5KB) これはベータ 2 SDK に含まれるバッジのアップデート版になります。今までのバッジにクロスサイトスクリプティングに対する脆弱性が発見されたため緊急に対応が行われました。現在インストールバッジを利用している場合には、なるべく早く更新することをお勧めします。

次は、HTML セキュリティモデル変更の件です。最近よく言及されるようになった eval(), JSON, innerHTML 等の使用を対象とした攻撃に対応するため、ベータ 2 から HTML アプリケーションの実行環境として 2 種類のサンドボックスが用意されています。

1 つ目のサンドボックスはアプリケーションサンドボックスと呼ばれ、AIR の提供する機能に自由にアクセスできますが、外部からのスクリプト読み込みや eval() の使用等が不可になっています。2 つ目のサンドボックスはクラシックサンドボックスと呼ばれ、こちらでは通常の HTML ブラウザと同等の機能が提供されますが、AIR の API を呼び出すことはできません。

ベータ 2 での標準のサンドボックスはアプリケーションサンドボックスになります。そのため、ほとんどの AJAX フレームワークに対して、それらを使用したアプリケーションがそのままでは動作しなくなることが予想されます。

このような場合には、まずクラシックサンドボックスに HTML アプリケーションを記述します。次に、AIR の機能を使用している箇所をアプリケーションサンドボックス側に移します。そのあと、クラシックサンドボックスからアプリケーションサンドボックスの処理を呼び出すための処理を追加します。SandboxBridge という機能を利用すると、クラシックサンドボックスとアプリケーションサンドボックスを連携させることが可能です。

クラシックサンドボックスの指定方法や SandboxBridge の API の具体的な使い方ついては、簡単なサンプルが公開されていますのでそちらをご参照ください。(air_htmlsecurity_sample_100107.zip : 64.7KB) また、AIR Developer Center に (英文ですが) 関連する記事もありますのでそちらもご覧いただければと思います。(Building an expense tracker on the new Adobe AIR HTML security model

最後に、新しい HTML セキュリティモデルのホワイトペーパーが公開されています。まだドラフトですので今後更新が行われていくものですが、いくつか参考になる情報が書かれていますのでご紹介しておきますね。(air_htmlsecurity.pdf : 180KB)

Posted by ackie at 05:23 PM | Comments (2)

October 09, 2007

Adobe AIR のデジタル署名機能について

AIR ベータ 2 から、パッケージ作成時の電子署名が必須になりました。この変更が行われたのは、

  1. パッケージ後に改変されていないことを確認する
  2. パッケージ作成者を確認する

の 2 点を実現するためということのようです。署名を行わないと airi という拡張子のファイルが作成されますが、これは adt 等で署名をしないとそのままでは AIR 環境で使用することができません。

署名には CA が発行した証明書と自己署名した証明書が使えます (p12, pfx) 。自己署名の証明書の場合には上の 2 つ目の目的には使用できないことになりますね。

ところで、電子署名は「プログラムが正しく動作すること」の確認にはなりません。また、そもそも、現時点では署名機能の動作自体も (ベータなので) 保障されていません。ですので、とりあえず AIR のパッケージを作成するだけであれば、あまり気にせず自己署名の証明書をご使用ください。たまたま正規の証明書を持っているという方は動作確認をしていただければ嬉しいですが。

自己署名の電子証明書の作成

さて、自己署名の証明書は、Flex Builder 3 ベータ 2 や Flash / Dreamweaver の AIR ベータ 2 用機能拡張を使って作成することができます。それぞれのツールでの作成方法は以下の通りです。なお、証明書作成時に入力したパスワードは忘れないよう注意してください。

Flex Builder 3 ベータ 2 の場合

Export ウィザードを実行し "Digital Signature" と書かれたパネルが表示されたら "Create..." というラベルのボタンをクリックします。証明書を作成するためのダイアログウインドウが表示されますので、発行者名、パスワード、作成するファイル名を入力して "OK" を押すと証明書が作成されます。名前等に使用できる文字は英数字に限られるようです。

AIR update Beta 2 for Flash CS3 Professional の場合

コマンドメニューから "AIR - Application & Installer Settings" ウインドウを開くと下のほうに "Digital Signature" と書かれた欄が見つかると思います。その行の右にある "Change..." と書かれたボタンを押すと証明書を設定するためのウインドウが開くので、Sign the AIR file with a digital certificate がチェックされていることを確認した上で "Create..." というラベルのボタンをクリックします。後は Flex Builder のケースと同じです。(1024 ビットと 2048 ビットが選べるようになっていますが)

AIR Extension for Dreamweaver® Beta 2 の場合

サイトメニューから (なぜか Flash とは違うメニューなのですが) "AIR Application Settings..." を選択してダイアログウインドウを開きます。ウインドウの下のほうにある "Digital signature" の右にある "Set..." を押すと証明書の設定用ウインドウが開きます。後は Flash と同じ手順です。

Posted by ackie at 09:05 AM | Comments (1)

October 03, 2007

Thermo (Adobe の新しい RIA ツール) 情報

MAX で新しい製品についての話がありましたのでご紹介します。といっても、まだ実際に使えるようになるのはだいぶ先のようですが。

さて、Thermo は RIA の UI デザイン作業を効率化するために提供しようと考えられているツールです。Thermo を使った際に想定されているワークフローは以下のようなものです(たぶん)。

  1. Photoshop, Illustrator, Fireworks で画面デザインを作成する
  2. 作成したファイルを Thermo でを直接開く、または Thermo の描画ツールを使って画面をデザインする
  3. 画面デザインに対してインタラクションを追加する
  4. トランジション等のビジュアルエフェクトを定義する
  5. サンプルデータを設定して実際に動かしてみる
  6. MXML として書き出して開発者に渡す

Photoshop, Illustrator, Fireworks はグラフィックデザイナー向け、Thermo はインタラクションデザイナー向けといった感じでしょうか。FlexBuilder とのファイル共有ができるので開発が楽になりそうな気がしますね。

デモで使われたスクリーンショット等が Labs にあります。(Thermo@Labs

Posted by ackie at 06:05 PM | Comments (1)

October 02, 2007

Flash Player 10 情報

Astro というコードネームで呼ばれている Flash Player 10 の新機能がいくつか US の MAX で紹介されたようです。公開された内容は以下のとおりです。

1.新しいテキストレイアウトエンジン

Astro では新しく高機能なテキスト描画エンジンが搭載される予定です。これにより、複数カラムのレイアウトやイメージを自動的に包み込むレイアウトそれからテーブル形式のレイアウトなどが可能になるようです。また、日本語固有のレイアウト機能もいくつかサポートされるようです。この機能に関しては Flash Player 10 を待たずに実装が可能とのコメントがありました。

2.3D 効果

Flash のムービークリップを 3D 空間内で扱えるようにする機能が提供される予定です。デモされたのは単純な効果だけのようですので、本格的な "3D" の実現を目的としているわけではなさそうですが、表現の幅が少し広がりそうです。

3.カスタムのフィルター、ブレンド、エフェクト

Flash Player 8 から追加された Player 組み込みのフィルターに加えて、自分で作成したフィルターやエフェクトが使用できるようになる予定です。フィルター等の作成には、こちらも今日発表された Adobe Image Foundation (AIF) ツールキットを使用します。AIF ツールキットはプレビュー版がすでにダウンロードできるようになっていますので、興味のある方は是非どうぞ。C や Open-GL の経験があれば直ぐに使えるもののようです。(Adobe Image Foundation (AIF) Toolkit@Labs

来月の MAX Japan でも Astro のデモがある思いますのでいらっしゃる方はお楽しみに。ちなみに、リリース時期はまだまったく未定だそうです。

Posted by ackie at 12:59 PM | Comments (0)

Spry 1.6 と AIR Extension for Flash & Dreamweaver CS3

昨日間に合わなかった分のフォローです。

まず、Spry の 1.6 がリリースされました。 Spry フレームワークと Dreamweaver CS3 のアップデータが公開されています。(Spry Prerelease 1.6 Download@Labs) 変更点についてはログに一通りありますのでご覧ください。(Spry Change Log@Labs) ロゴも新しくなっています。(Spry framework for Ajax@Labs

それから、AIR ベータ 2 用の機能拡張が Dreamweaver CS3 と Flash CS3 Professional 用それぞれに公開されています。どちらもサポートされる環境は同じで、

  • Windows XP SP2
  • Windows Vista
  • Mac OS 10.4.x (Intel or PPC)

です。

インストール上の注意事項は、どちらの機能拡張も古いバージョンが既にインストールされている環境について、

1. Dreamweaver CS3 の機能拡張 (AIR Extension for Dreamweaver@Labs) の場合

Extension Manager CS3 を使い古いバージョンを削除してからインストールする

2. Flash CS3 の機能拡張 (AIR update Beta 2 for Flash CS3@Labs) の場合

古いバージョンを削除してからインストールするか、インストール後クリーンアップスクリプトを実行する。クリーンアップスクリプトはインストーラと同じ場所からダウンロードができ、日本語版用は Flash CS3 機能拡張のページ内の Japanese と書かれた箇所にある。

となっています。

Posted by ackie at 12:50 PM | Comments (5)

October 01, 2007

Flash Player 9 アップデート 3

Flash Player アップデート 3 の新しいバージョンが公開されました。(Flash Player 9 Update@Labs

リリースノートによると今回のバージョンは release candidiate と呼ばれています。このまま正式リリースされる可能性の高いものですので、Web の制作や管理をしている方々は今のうちに是非テストをして、何か問題が無いかを確認しておくようお願いします。

最新ベータ版のダウンロードには Labs のダウンロードページ内に各プラットフォーム毎にインストーラが用意されています。(Flash Player 9 update Download

インストール前には既存の Flash Player を一旦アンインストールするようにしてください。アンインストーラは Windows の IE 用が上のリリースノート内のリンクから、その他のブラウザ用はテックノートから入手可能です。

Posted by ackie at 07:41 PM | Comments (0)

Flex 3 beta 2

Flex 3 ベータ 2 がリリースされましたので簡単なご紹介を。(Adobe FlexBuilder@Labs, Adobe Flex SDK@Labs

Flex 3 Planning ページの最新情報によれば、Flex 3 のスケジュールは以下のようになっています。

  • April 9, 2007 M1 Release (Alpha)
  • June 11, 2007 M2 Release (Beta 1)
  • October M3 Release (Beta 2) - Feature Complete
  • Late 2007 M4 - Release Candidate
  • Early 2008 Final Release

今回は上から3つ目の M3 と呼ばれるリリースで、機能実装が終了した状態であることがわかります。この先、年内には正式リリース候補が公開され (M4)、来年の早い時期に正式出荷される予定ですので、今後はバグフィックスが主な作業になると思われます。

システム条件等はベータ 1 から変わっていませんが、既存の環境にそのままインストールすると問題の起きるケースがあるようです。古いバージョンをアンインストールするか別の場所にインストールするようにしてください。

また、クロスドメイン RSL 機能を使用する場合、Flash Player は一緒に公開された最新版 (9,0,60,235) を使用する必要があります。この Flash Player はベータ版ですので、通常の Web 閲覧環境で使用には十分ご注意ください。他の機能に関しては、最新の正式リリース版 (9,0,47,0) でも大丈夫なようですが、できるだけ最新のベータ版をお使いいただければと思います。

Flex Skin Design Extensions

CS3 製品で制作したスキンを Flex 3 にインポートするための機能拡張のプレリリース版が公開されました。Photoshop, Illustrator, Flash, Fireworks それぞれに機能拡張が提供され、FlexBuilder 3 のスキンインポートウィザード用に合わせた形でスキンをデザインできるようになります。

ダウンロードは Labs からどうぞ。(Flex Skin Design Extensions@Labs Downloads

ILOG Elixir

最後に、Adobe が ILOG Elixir の再販を検討していることがアナウンスされました。ILOG Elixir は Flex 3 用のデータビジュアライゼーションコンポーネントで、さまざまなグラフやマップがあります。詳しくは製品情報ページをご覧ください。(ILOG Elixir

Posted by ackie at 07:30 PM | Comments (2)

Adobe Media Player

Adobe Media Player (AMP) のプレリリース版が Adobe Labs に公開されました。(Adobe Media Player) メディアの配信や再生に関連するさまざまな機能が実装された AIR アプリケーションです。使い方については、英文ですがリリースノートにスクリーンショット付で詳しい説明がありますのでこちらをご覧いただければと思います。(releasenotes_p1_100107.pdf : PDF, 2.74 MB)

AMP のインストールはダウンロードページにある "INSTALL NOW" の書かれた”バッジ”をクリックすれば自動的に開始されます。ただし、ベータ 1 以前のバージョンがインストールされている状態で実行するとエラーになりますので、その際は AIR のランタイムをアンインストールしてから再度実行してください。

AMP を単体でインストールしたい方は、ダウンロードページの一番下に AIR パッケージへのリンクが直接張られています。

Posted by ackie at 07:20 PM | Comments (0)

Adobe AIR ベータ 2 開始

Adobe AIR ベータ 2 が公開されました。新しいランタイムが Labs からダウンロードできるようになっています。(Adobe AIR download@Labs

ベータ 2 がサポートする環境は以下のとおりです。

  • Windows 2000 SP4, Windows XP SP2, Windows Vista Home and Ultimate Edition
  • Mac OS 10.4.7 以降 (Intel と PowerPC)

ベータ 1 のランタイムは 12 月 11 日に動作しなくなるとのことなので、ベータ 1 用の AIR アプリケーションは早めにベータ 2 に移行することをお勧めします。ベータ 2 のランタイムはベータ 1 のランタイムと共存できるため、移行作業を始めても、しばらくはベータ 1 用のアプリケーションを使用することが可能です。

ベータ 2 用アプリケーションの開発には、同じく今日公開された Flex Builder 3 Beta 2 または AIR SDK Beta 2 または AIR Extension for Dreamweaver CS3 Beta 2 または AIR update Beta 2 for Flash CS3 をインストールします。Flex Builder 3 ベータ 2 で開発する場合、ワークスペースは新規に用意することをお勧めしますが既存のワークスペースを利用しようと思っている場合は事前のバックアップをお忘れなく。なお Flex Builder ベータ 2 からは新規 AIR プロジェクトを作成するには、まず新規 Flex プロジェクトを選択し、開いたパネル内の Application Type から Desktop application を選択するという手順に変更されています。

それでは、以下、主な変更点の説明です。

アプリケーション記述ファイルの変更

さて、AIR ベータ 2 ではアプリケーション記述ファイル (-app.xml) が変更されています。そのため、既存のベータ 1 のアプリケーションについてはこのファイル内の記述をいくつか変更しないと新しいランタイム上で実行することができません。

まず、名前空間を Http://ns.adobe.com/air/application/1.0.M5 に変更します。今回は末尾が M5 になっています。次に、application タグの子要素として initialWindow タグを記述します。そうしたら rootContent タグの属性をすべて initialWindow の要素に書き換えます。下はその例です。

<initialWindow>
  <content>Main.swf</content>
  <systemChrome>standard</systemChrome>
  ...
  <visible>true</visible>
</initialWindow>
 

ベータ 2 ではメインウインドウの visible 属性のデフォルトが false になっています。そのため、メインウインドウを最初から表示したい場合には上の例のように visible 属性を明示的に ture に設定します。

API の変更

API 関連でベータ 1 から変更された主な項目は以下のとおりです。

1. ByteArray

ByteArray.infrate() と ByteArray.deflate() メソッドがなくなりました。代わりに、ByteArray.compress() と ByteArray.uncompress() メソッドの引数として、CompressionAlgorithm.DEFLATE か
CompressionAlgorithm.ZLIB を指定するようになりました。

2. ClipboardManager

ClipboardManager クラスと TransferableData クラスが Clipboard クラスで置き換えられました。システムのクリップボードへのアクセスには ClipboardManager.accessClipboard() の代わりに Clipboard.generalClipboard シングルトンオブジェクトを使用します。

3. DragManger

isDragging がメソッドからプロパティになりました。

4. Door

セキュリティ関連の変更に伴い Door クラスが廃止されました。LoaderInfo クラスの Door 関連の属性は LoaderInfo.parentSandboxBridge と LoaderInfo.childSandboxBridge に変更されています。

5. File

下記いくつかの API が変更されています。

File.listDirectories()      → File.getDirectoryListing()
File.listDirectoriesAsync() → File.getDirectoryListingAsync()
File.listRootDirectories()  → File.getRootDirectories()
File.relativize()           → File.getRelativePath()
File.resolve()              → File.resolvePath()
 

また、いくつかのメソッドで使用されていた clobber というパラメータは has been renamed overwrite という名前に変更されました。

6. NativeWindow

visible プロパティをコンストラクタではなく属性として指定するようになりました。デフォルト値は false です。

Stage.window は Stage.nativeWindow に変更されました。

NativeWindowCapabilties クラスが無くなり、代わりに NativeWindow クラスの属性として実装されました。

NativeWindowCapabilities.hasWindowIcon → NativeWindow.supportsIcon
NativeWindowCapabilities.hasMenu       → NativeWindow.supportsMenu
NativeWindowCapabilities.windowMinSize → NativeWindow.systemMinSize
NativeWindowCapabilities.windowMaxSize → NativeWindow.systemMaxSize
 

7. System

System.pause(), System.resume(), System.gc() の各メソッドはデバッグモードでのみ使用できるようになりました。それから、System.exit() は AIR アプリケーションから使用できなくなりました。代わりに Shell.exit() を使うようにしてください。

その他にも、アイコンにはレイヤーがひとつだけの PNG だけがサポートされるようになったり、変更がいろいろあります。詳細はリリースノート(英文)をご覧ください。(AIR release note@Labs

Posted by ackie at 02:41 PM | Comments (0)

Adobe の Buzzword 買収と Share ベータ開始の発表

Buzzword という Flex ベースのワープロについては既にご存知の方もいらっしゃると思います。Virtual Ubiquity 社が開発を進めていて、少し前からプレビュー版の公開が開始されています。(Buzzword

さて、本日 Adobe との間で Buzzword の買収について合意したことが発表されました。 Buzzword は単純にオンラインで使えるワープロというだけでなく、ネットに接続している他の人と一緒に文書作成を行うことができます。修正のたびにみんなでメールで送りっこするよりは便利そうでしょうか?また、AIR 環境があればオフラインでの使用も可能です。引き続きプレビュー版は使用できるようですので、ご興味のある方は是非お試しください。詳細は http://www.adobe.com/go/buzzwordfaq (英文) をご覧ください。

Share beta

それから、本日は Share というコードネームの無料オンライン文書共有サービスのベータ版も公開されました。(Share beta

ローカルの共有したいファイルを選んで、共有する相手を指定するだけでファイルを公開することができます。その際、サーバ側ではファイルのサムネイルを自動的に生成して表示する機能も付いています。それと、共有する相手にメッセージを送ることも可能です。

Adobe ID があればすぐに使用できますのでこちらも是非お試しください。ただし、まだベータ版ですので、保障の不要な範囲での利用に留めるようお願いします。

このサービスを利用するための REST API も公開されています。これを使って自前のアプリにファイル共有サービスを組み込みましょう!ということのようです。詳しくは Adobe Labs をご参照ください。(Share@Labs

Posted by ackie at 02:16 PM | Comments (0)