Open棟梁Project - マイクロソフト系技術情報 Wiki

目次

概要

マイクロソフトの提供する RIA フレームワークである。

特徴

WPFと同じXAML+.NET(VB、C#などの.NET言語)によって開発・実装を行うが、以下の点が通常のWPFと異なる。

機能の差異

「WPF」 → 「Silverlight」の機能の差異として、

などがある。

ザックリ纏めると。

サポートされない機能

制限付きの機能

差異のある機能

独自の機能

セキュリティ

「Silverlight」アプリケーションは、「サンドボックス」と呼ばれる「部分信頼」のセキュリティ境界内で動作するため、
通常の.NETアプリケーションと比べて制限がある(ただし、「ブラウザ外実行」では、昇格されたアクセス許可を要求できる)。

2種類のコード

アプリケーション内のセキュリティのコンテキストで見ると、「Silverlight」のコードは、

という2種類のコードに大別できる。

実行するコードがどちらの種類に属するかは、「Silverlight」ランタイムが自動的に検知する。

セキュリティ レベル

「Silverlight」コードには、以下の3つのセキュリティ レベルがある。

項番セキュリテ・レベル機能
透過的「透過的」 セキュリティ レベルのコードには、次の制限がある。
・P/InvokeやCOM相互運用機能を介してアンマネージ コードを呼び出すことができない 。
・クリティカルなコードやデータ(下記、項番3を参照のこと)にはアクセスできない。
・検証可能なタイプ セーフ コード である必要がある。
セーフ クリティカル「セーフ クリティカル」 セキュリティ レベルのコードは、「クリティカル」 セキュリティ レベルのコードの上位に位置し、呼び出しを安全に保つ働きをする。
クリティカル「クリティカル」 セキュリティ レベルのコードは、ファイル システムへの書き込みなど、「サンドボックス」で制限された操作を実行できる。

なお、「セーフ クリティカル」を呼び出す場合、悪意のあるコードが不正にローカル リソースにアクセスすることを防ぐため、ユーザ操作を必須とする機能がある。
例えばファイル システムへアクセスする場合には、ユーザ入力を伴う、OpenFileDialog?を表示してパスを取得する必要がある。なお、ユーザ入力なしでファイル システムへアクセスすると、SecurityException?が発生する。

参考

サポート


Tags: :WPF/Silverlight, XAML


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS