diary/Kojima/2009-07-14
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[diary/Kojima]]
・PolicyKit + ConsoleKit
ここしばらく GNOME-2.26.2 上で,CD-ROM がうまく自動マウン...
- PolicyKit
周辺機器に対する権限を,従来の「スーパーユーザー(root)/一...
モデルよりも細かく管理するための仕組み.policy と呼ばれる...
周辺機器ごとに利用権限を設定できる.
policy ファイルでは,周辺機器は伝統的なUnixにおけるデバイ...
HALで定義されるIDにより区別される.例えば,リムーバブルメ...
org.freedesktop.hal.storage.mount-removable,エジェクトす...
というIDで設定できる.これらの設定は /usr/share/PolicyKit...
収められている.このディレクトリ(/usr/share/PolicyKit/pol...
電源管理やWOL等,さまざまな周辺機器に関する設定が収められ...
上記設定ファイルは標準的な設定があらかじめ行なわれており...
修正する必要は無く,通常の利用権限の設定は /etc/Policy/Po...
PolicyKit.conf ファイルもxml形式になっており,デフォルト...
<config version="0.1">
</config>
だけで,この <config> から </config> の間に必要な設定を加...
設定は,条件に応じて result を返す形式で記述し.
例えばリムーバブルメディアのマウント権限をユーザ全てに与...
<match action="org.freedesktop.hal.storage.mount-removab...
<return result="yes" />
</match>
という設定を行う.
<match action="org.freedesktop.hal.storage.mount-removab...
<return result="yes"/>
</match>
<match action="org.freedesktop.hal.storage.eject-removab...
<return result="yes"/>
</match>
<match action="org.freedesktop.hal.storage.mount-fixed">
<return result="yes"/>
</match>
<match action="hal-storage-mount-fixed-extra-options">
<return result="yes"/>
</match>
<match action="hal-storage-mount-removable-extra-options">
<return result="yes"/>
</match>
これくらい設定しておけば,記憶装置に関しては十分なはず.
上記は周辺機器ごとの設定だが,ユーザごとに設定することも...
<match user="kojima">
<return result="yes"/>
</match>
としておけば,kojima ユーザーは PolicyKit が設定している...
これらを組み合わせて,
<match action="org.freedesktop.hal.storage.mount-removab...
<match user="kojima">
<return result="no"/>
</match>
</match>
のように,ユーザごとに操作の可否を設定することも可能なは...
- ConsoleKit
MacOSやWindos XPに実装されているfast user switch機能を実...
fast user switchとは,GUI環境で,ログインしているユーザが...
別のユーザに一時的に画面やキーボードを譲って,一時作業が...
元の作業の続きができるような機能.元々Unixはマルチユーザ...
複数の独立したユーザ空間を用意する機能は備わっているもの...
それらの切り替えは端末単位になっていて,GUI画面を一時的に...
従来のUnixでは,それぞれのプロセスはログイン時に認証され...
fast user switchを実現するためには,それらをより細かく管...
認証されたプロセスが生み出す子プロセスに共通のcookie(XDG_...
それらを同じシート(Seat)に収まったプロセス群(セッション)...
概念的にはPolicyKitとは独立だが,センション単位で周辺機器...
HALがConsoleKitに依存し,その結果Polkitとも関わってくるこ...
さらに,このあたりの必要な情報をやりとりするためにD-Busを...
D-Busが正しく動いている(接続を受けつける)必要もある.
gdmやkdmといったGNOME/KDEのディスプレイマネージャはネィテ...
(gdmのconfigureオプションには--with-console-kitが存在)の...
run level 4のGUIログインモードの場合は気にする必要はない...
従来の run level 3のマルチユーザモードで使おうとすると,...
(XDG_SESSION_COOKIEをもらう)必要がある.
Plamoを含めた最近のLinuxでは,ユーザ認証はPAMで一括管理さ...
ConsoleKitの承認はPAMのログイン認証時に受けるようにすれば...
具体的には,ConsoleKitが提供している pam_ck_connctor.so(/...
モジュールをログイン認証の設定ファイル(/etc/pam.d/login)...
Plamoの場合,/etc/pam.d/login では
session include plamo-default
として,セッション認証は plamo-default ファイルを利用して...
pam_ck_connctor.so を読み込む設定をするのが簡単な気配.
# added for console kit
session required /lib/security/pam_ck_connector.so
この設定をした上で,Xの起動時にWMをD-Busに登録してやれば...
従来は
exec gnome-session
と起動していたWMを
exec /usr/bin/dbus-launch --exit-with-session gnome-sess...
のようにする.ConsoleKitが提供している ck-launch-session
というコマンドも同じような機能を果しそうだが,このコマン...
このあたりは,昨今のようにPCが普及してユーティリティ化し...
伝統的なUnixの設計哲学には存在しなかった概念だから,ちょ...
まぁ,このあたりの概念を含めた形でカーネルを設計し直すよ...
ユーザ領域のツールとして実現する方が便利なんだろうけど,...
micro kernelの魅力というのも改めて考えないといけない気が...
MacOSにしろWindows XPにしろ,元々はmicro kernel由来のOSだ...
このあたりの新機能の実現は得意な分野なんだろうなぁ.
-あとsessionにはactiveとinactiveがありますよね(これがcons...
#comment
終了行:
[[diary/Kojima]]
・PolicyKit + ConsoleKit
ここしばらく GNOME-2.26.2 上で,CD-ROM がうまく自動マウン...
- PolicyKit
周辺機器に対する権限を,従来の「スーパーユーザー(root)/一...
モデルよりも細かく管理するための仕組み.policy と呼ばれる...
周辺機器ごとに利用権限を設定できる.
policy ファイルでは,周辺機器は伝統的なUnixにおけるデバイ...
HALで定義されるIDにより区別される.例えば,リムーバブルメ...
org.freedesktop.hal.storage.mount-removable,エジェクトす...
というIDで設定できる.これらの設定は /usr/share/PolicyKit...
収められている.このディレクトリ(/usr/share/PolicyKit/pol...
電源管理やWOL等,さまざまな周辺機器に関する設定が収められ...
上記設定ファイルは標準的な設定があらかじめ行なわれており...
修正する必要は無く,通常の利用権限の設定は /etc/Policy/Po...
PolicyKit.conf ファイルもxml形式になっており,デフォルト...
<config version="0.1">
</config>
だけで,この <config> から </config> の間に必要な設定を加...
設定は,条件に応じて result を返す形式で記述し.
例えばリムーバブルメディアのマウント権限をユーザ全てに与...
<match action="org.freedesktop.hal.storage.mount-removab...
<return result="yes" />
</match>
という設定を行う.
<match action="org.freedesktop.hal.storage.mount-removab...
<return result="yes"/>
</match>
<match action="org.freedesktop.hal.storage.eject-removab...
<return result="yes"/>
</match>
<match action="org.freedesktop.hal.storage.mount-fixed">
<return result="yes"/>
</match>
<match action="hal-storage-mount-fixed-extra-options">
<return result="yes"/>
</match>
<match action="hal-storage-mount-removable-extra-options">
<return result="yes"/>
</match>
これくらい設定しておけば,記憶装置に関しては十分なはず.
上記は周辺機器ごとの設定だが,ユーザごとに設定することも...
<match user="kojima">
<return result="yes"/>
</match>
としておけば,kojima ユーザーは PolicyKit が設定している...
これらを組み合わせて,
<match action="org.freedesktop.hal.storage.mount-removab...
<match user="kojima">
<return result="no"/>
</match>
</match>
のように,ユーザごとに操作の可否を設定することも可能なは...
- ConsoleKit
MacOSやWindos XPに実装されているfast user switch機能を実...
fast user switchとは,GUI環境で,ログインしているユーザが...
別のユーザに一時的に画面やキーボードを譲って,一時作業が...
元の作業の続きができるような機能.元々Unixはマルチユーザ...
複数の独立したユーザ空間を用意する機能は備わっているもの...
それらの切り替えは端末単位になっていて,GUI画面を一時的に...
従来のUnixでは,それぞれのプロセスはログイン時に認証され...
fast user switchを実現するためには,それらをより細かく管...
認証されたプロセスが生み出す子プロセスに共通のcookie(XDG_...
それらを同じシート(Seat)に収まったプロセス群(セッション)...
概念的にはPolicyKitとは独立だが,センション単位で周辺機器...
HALがConsoleKitに依存し,その結果Polkitとも関わってくるこ...
さらに,このあたりの必要な情報をやりとりするためにD-Busを...
D-Busが正しく動いている(接続を受けつける)必要もある.
gdmやkdmといったGNOME/KDEのディスプレイマネージャはネィテ...
(gdmのconfigureオプションには--with-console-kitが存在)の...
run level 4のGUIログインモードの場合は気にする必要はない...
従来の run level 3のマルチユーザモードで使おうとすると,...
(XDG_SESSION_COOKIEをもらう)必要がある.
Plamoを含めた最近のLinuxでは,ユーザ認証はPAMで一括管理さ...
ConsoleKitの承認はPAMのログイン認証時に受けるようにすれば...
具体的には,ConsoleKitが提供している pam_ck_connctor.so(/...
モジュールをログイン認証の設定ファイル(/etc/pam.d/login)...
Plamoの場合,/etc/pam.d/login では
session include plamo-default
として,セッション認証は plamo-default ファイルを利用して...
pam_ck_connctor.so を読み込む設定をするのが簡単な気配.
# added for console kit
session required /lib/security/pam_ck_connector.so
この設定をした上で,Xの起動時にWMをD-Busに登録してやれば...
従来は
exec gnome-session
と起動していたWMを
exec /usr/bin/dbus-launch --exit-with-session gnome-sess...
のようにする.ConsoleKitが提供している ck-launch-session
というコマンドも同じような機能を果しそうだが,このコマン...
このあたりは,昨今のようにPCが普及してユーティリティ化し...
伝統的なUnixの設計哲学には存在しなかった概念だから,ちょ...
まぁ,このあたりの概念を含めた形でカーネルを設計し直すよ...
ユーザ領域のツールとして実現する方が便利なんだろうけど,...
micro kernelの魅力というのも改めて考えないといけない気が...
MacOSにしろWindows XPにしろ,元々はmicro kernel由来のOSだ...
このあたりの新機能の実現は得意な分野なんだろうなぁ.
-あとsessionにはactiveとinactiveがありますよね(これがcons...
#comment
ページ名: