Mercurial > hg > Papers > 2015 > tatsuki-thresis
changeset 16:56172d7c12e5
fix
author | tatsuki |
---|---|
date | Tue, 17 Feb 2015 23:03:25 +0900 |
parents | 70151ab67333 |
children | ceeb95a12d64 |
files | abst.tex |
diffstat | 1 files changed, 25 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/abst.tex Tue Feb 17 17:55:05 2015 +0900 +++ b/abst.tex Tue Feb 17 23:03:25 2015 +0900 @@ -50,8 +50,8 @@ XACMLとJungle DBの組み合わせに対して、Subject(誰が)、Resource(何を)、Action(どうする)かを問い合わせ、その許諾を書く。 許諾事項は日々更新される組織構造やポリシーに対して判断され、過去の情報も残しておく必要がある。 -\section{Jungle上での\\maTrixのデータ構造の表現} -maTrixの人、組織、役割、権限等のデータは木構造なので Jungleの木構造にそのままマッピングできる。 +\section{Jungle上でのmaTrixの\\データ構造の表現} +maTrixの人、組織、役割、権限等のデータは木構造であるため Jungleにそのままマッピングできる。 実際のmaTrixのデータ構造の一部(表\ref{list:PersonTree})と、そのデータを実際に格納したJungleTree(図\ref{fig:PersonTree})を以下に記す。 \begin{figure}[h] \begin{center} @@ -78,7 +78,10 @@ \end{tabular} \end{center} \end{table} -しかし、maTrixの一部のデータ構造がJungleに対応していないため、その部分のみJungleにあった形に修正を行い格納している。Jungle上で表現できないデータの例を以下に記す(\ref{list:PersonTree2})。 + +Jungleは、TreeNodeにデータを格納する際、String KeyとByteBuffer attributeの組み合わせで保持しているため、1つのkeyに対して複数のattributeを持つことは出来ない。 +そのため、表\ref{list:PersonTree2}の様に、1つの要素に複数の値がある場合はデータを格納できない。 +しかし、表\ref{list:maTrixDataChild}の様に、データの2つのNodeに分割することで、Jungleに格納できるようになる。 \begin{table}[h] \caption{Jungle上で表現できないデータ例} @@ -91,9 +94,6 @@ \end{center} \end{table} -Jungleは、TreeNodeにデータを格納する際、String KeyとByteBuffer attributeの組み合わせで保持している。 -しかし、1つのkeyに対して複数のattributeを持つことは出来ないので、表\ref{list:PersonTree2}の様に、1つの要素に複数の値がある場合などはそのままではデータを格納できない。 -しかし、表\ref{list:maTrixDataChild}の様に、データの2つのNodeに分割することで、Jungleに格納できるようになる。 \begin{table}[h] \caption{Jungleに対応したデータ例} \label{list:maTrixDataChild} @@ -114,29 +114,32 @@ \section{Jungle上での検索APIの設計と実装} JungleのTreeに対して検索を行うfind関数の実装を行った。 -以下にfind関数は、\\ -public Iteratori$<$TreeNode$>$ \\ -\ find (Query query ,String key,String Value);と定義した -.\\ -.\\ -.\\ -また、find関数で使用するQueryInterfaceの定義は、\\ -public interface Query\{\\ -\ booleancondition(TreeNode node);\\ -\}\\ -と定義した +find関数は引数にQuery、String key、String valueの3つの引数を取り、条件に一致したNodeのIteratorを返す。 +第1引数には以下に記載してある、探索の条件を記述する関数boolean comdition(TreeNode)を定義したInterfaceQueryを。 +第2、第3引数の、String key、String valueはIndexの取得を行うために使用する。 +\begin{itembox}[l]{find関数の定義} +\begin{verbatim} + public Iterator<TreeNode> find(Query query, + String key, String searchValue); +\end{verbatim} +\end{itembox} -find関数は引数にQuery、String key、String valueの3つの引数を取り、条件に一致したNodeのIteratorを返す。 -第一引数には以下に記載してある、探索の条件を記述する関数boolean comdition(TreeNode)を定義したInterfaceQueryを。 -第二、第三引数の、String key、String valueはIndexの取得を行うために使用する。 +\begin{itembox}[l]{QueryInterfaceの定義} +\begin{verbatim} +public interface Query { + boolean condition(TreeNode _node); +} +\end{verbatim} +\end{itembox} -find関数を実際に使用して、maTrixがデータにアクセスする際に使用する関数を全て実装し、実際に、XACMLを用いて許認可を行えるようにした。 +find関数を使用して、maTrixがデータにアクセスする際に使用する関数を全て実装し、実際に、ポリシーファイルを用いて許認可を行えるようにした。 \section{まとめ} 本研究は、実際に使われている組織の中の許認可を判断するアプリケーションmaTrixのデータ構造をどのようにJungle上で表現するかを設計し、実際にmaTrixのデータ構造を格納した。 -そして実際にmaTrixで使われているデータアクセス関数を実装して、XACMLファイルを使用し許認可判断を行えるようにし、実際にJungle上に実用的な業務アプリケーションの構築に成功した。 +実際にmaTrixで使われているデータアクセス関数を実装して、XACMLファイルを使用し許認可判断を行えるようにした。 +実際にJungle上に実用的な業務アプリケーションを構築した。 本研究は、PCIホールディングス株式会社と株式会社Symphonyとの共同研究である。 \thispagestyle{fancy} \begin{thebibliography}{9}