Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
その3:Curlの凄いところ「セキュリティモデル」について
04-24-2012, 05:05 PM, (This post was last modified: 05-23-2012, 04:52 PM by hmino.)
#1
その3:Curlの凄いところ「セキュリティモデル」について
こんにちは!マーケティングの三野です。Shy

前回はエラスティックについてお話しましたが、今回はCurlの凄いところ第二弾として「セキュリティ」についてお話いたします。


Curlのセキュリティポリシーとは?

CurlはダウンロードされたCurlアプレットがユーザーのコンピュータパワーを利用して実行されるように設計されていますが、Curlアプレットにユーザーシステムへの無制限なアクセスを許した場合、セキュリティ上の問題が生じます。たとえば悪意のあるCurlアプレットが情報の盗取やファイルの破壊を企てたり、システムを不安定にしたり、あるいは他のシステムへの攻撃を実行する可能性がある場合があります。
このような問題に対処するため、Curlにはセキュリティに関する制限があり、これによってCurlアプレットがユーザーのシステムに害を与えたり、個人情報に立ち入るのを阻止します。これらの制限は、Curlアプレットによる障害の発生を防ぎつつ最大限の柔軟性を開発者に与えるように慎重に設計されています。
たとえば以下のような制限があります。
  • ActiveX コントロールのインクルード。
  • ホスト プロセスの生成。
  • ロー レベルのドラッグ アンド ドロップ操作の実行。
  • 環境変数へのアクセス。
  • システムの基本設定へのアクセス。
  • Windows レジストリ エントリへのアクセス。
  • 1GB を超えるメモリの使用。



ファイルアクセスなどのローカルリソースへのアクセスについて

とは言っても、利便性を考えたときにどうしてもシステムとしてローカルリソースにアクセスする場合がありますよね。
たとえばファイルの読み込み/書き込みなどがそれにあたりますが、一般的に必要とされているけども、安全でない可能性のある操作については、それを行う前にCurl RTEによってユーザに許可(ポップアップメッセージ)が求められます。これは、常に許可したり、逆に常に禁止したりするよりもよい方法だと思います。ただし個人あるいは企業内システムのように信頼しても問題ないCurlアプレットについては毎回同じ作業(たとえばファイル読込など)でユーザー許可が求められると業務効率から見て不都合が生じてきますよね。
その場合はそのCurlアプレットに対しセキュリティ解除あるいはレベルを下げる「特権」というものをユーザーによって与えることが可能です。



「特権」ってなに?

「特権(Privileged)」とは字の通り「特別な権利を与える」という意味で、対象となるCurlアプレットに対しこの「特権」を与えるとCurlアプレットはローカルファイルへのアクセスやActiveXの制御なども行うことができるようになります。これによりデスクトップアプリケーションと同等の振る舞いが可能になります。この特権の付与はユーザーがCurl RTEのコントロールパネルから設定出るようになっています。
下の図の一番右が特権を付与されたアプレットの振る舞いのイメージです。



ちょっと細かい話ですが、真ん中の図にあるようにある特定のディレクトリにだけアクセスできるようにしたりすることもできるようになってます。


Curlはこのように高いセキュリティを保ちつつ最大限の柔軟性や操作性を実現することができるように設計されています。

詳しくはデベロッパーセンターの開発者ガイドに記載されています。
Curl開発者ガイド-コンテンツの構成要素-セキュリティ」をご覧ください。
デベロッパーセンターのトップはこちらです。



ではまた![Image: good.gif]


Attached Files
.png   security.png (Size: 50.51 KB / Downloads: 1,541)
.jpg   curl_security.jpg (Size: 32.56 KB / Downloads: 2,099)

Forum Jump:


Users browsing this thread:
1 Guest(s)

MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1017 - Can't find file: 'mybb_threadviews' (errno: 2)
Query:
INSERT INTO mybb_threadviews (tid) VALUES('473')