Next month:
2008年1 月

2007年12 月 からの 18 記事

MOSS 製品学習のポイント

今日はいよいよ大晦日です。今年の締めくくりに何を書こうかと思いましたが、MOSS にこれから取り組もうとされている方も多くいらっしゃるようですので、「MOSS 製品に取り組むにはどのような点を勉強していけばよいのか」を整理して、今年の締めくくりとしたいと思います。

MOSS の学習に入る前に

MOSS の学習には実機環境で検証するのが一番です。最初は検証用の環境であれば Virtual PC などの仮想環境が良いと思います。たとえば、Virtual PC や Virtual Server の場合は「復元ディスク」を有効にして利用すると、何かトラブルがあった場合でも、トラブル発生前の状態まで手軽に戻せます。インストール手順については、「ひと目でわかる~」の書籍にも書いています。

MOSS の入門者

1. 基本構造の理解

MOSS はどのように動作しているかをある程度理解した上で、基本機能を学習していくのがお勧めです。

学習のポイントとしては、以下のことを把握することです。

  • MOSS の Web サイトは IIS 上でホストされている
  • MOSS は ASP.NET 2.0 ベースのWeb アプリケーションであり、サイトに格納するコンテンツ(ファイルを含む) はバックエンドのDBが保持している (MOSS の Web サイトは MOSS の DB の出し入れをするための窓口の役割ということになる)

また余力があれば、追々で構いませんので、以下のMOSS の屋台骨となるシステムについて基本機能を把握しておくことをお勧めします。

  • IIS 6.0 (サイトの管理、アクセス許可、アプリケーションプール)
  • Active Directory (ユーザー、グループ管理、Kerberos 認証)
  • SQL Server (データベース管理、セキュリティ、バックアップ/復元)
  • ASP.NET 2.0 Web アプリケーション開発

2. 用語の理解

また、MOSS 独特の用語も覚える必要があります。最初に覚えるのは 「Webアプリケーション」「サイトコレクション」「サイト」の3つです(「ひと目」にこれも書いています)。

3. 押さえておきたい基本機能

MOSS の機能を一通り学習するには、手始めにチームサイトのテンプレートをベースに学習することをお勧めします。

チームサイトでは、リストやライブラリの概念を把握することが先決です。

リスト、ライブラリ

  • リストとライブラリのそれぞれのテンプレートで何ができるのかを一通り検証する
  • リストやライブラリでカスタムビューを作成して、あらかじめ用意されているシステム列(ID列、バージョン列、作成日時列など)にどのようなものがあるのかを確認する
  • カスタム列を追加して、リストやライブラリをカスタマイズする

SharePoint の肝となるのはやはりドキュメントライブラリを使用したドキュメント管理です。ドキュメントライブラリで重要なのはバージョン管理やコンテンツタイプの概念です。

ドキュメントライブラリ

  • バージョン管理 (マイナーバージョン/メジャーバージョンの管理、チェックイン/チェックアウト、承認)
  • カスタム コンテンツ タイプの作成とドキュメントライブラリへの割り当て
  • ドキュメントワークフローの利用

コンテンツ タイプは最初、分かりずらいように思えるかもしれませんが、MOSS では大変重要な概念です。

ワークフローは非常に奥の深いものですが、まずはビルトインで用意してあるワークフローでどのようなことができるのかを確認することから始めるとよいです。

最後に、忘れてはならないのがアクセス権限の概念です。サイト、リスト/ライブラリ、アイテム単位でのアクセス権限の割り当てが可能ですが、どのように設定するのかを確認しておきます。アクセス権の部分の詳細も別途、このブログで紹介します。

MOSS の中級者 (入門者レベルの内容は理解できた方)

入門レベルの内容が把握できたら、次のステップです。MOSS のその他の機能を必要に応じて追加学習します。(※2008/1/3 にシステム管理者向けの項目を一部追記しました)

システム管理者向け

  • 「SharePoint 3.0 サーバーの全体管理」の「サーバー構成の管理」サイトにて主に、ファームサーバー、サーバーのサービス、送信メールの設定、ブロックするファイルの種類、代替アクセスマッピング、バックアップと復元関連項目全般、既定のデータベースサーバーの設定項目を把握
  • 「SharePoint 3.0 サーバーの全体管理」の「アプリケーション構成の管理」サイトにて主に、Webアプリケーションの全般設定(タイムゾーン、アップロードできるファイルの上限、ごみ箱の設定など)、コンテンツ データベース、クォータテンプレート、サイトコレクションのクォータとロック、認証プロバイダの設定項目を把握
  • Information Rights Management とドキュメント ライブラリの統合による情報漏えい防止対策の実装方法の把握
  • リスト、ライブラリの受信メール機能 (メールを使用して、リストやライブラリにアイテムの投稿ができます) の実装方法の把握
  • エンタープライズ検索の設定や構成
  • キャパシティプランニング、パフォーマンスチューニング、障害復旧方法の把握

開発者向け

  • InfoPath 2007 を使った電子フォーム開発と MOSS 連携
  • MOSS 2007 Enterprise Edition の機能として利用できる InfoPath Forms Services, Excel Services, Business Data Catalog の基本機能を把握する
  • エンタープライズ検索機能のカスタマイズ

ちなみに開発者の方は XMLおよびXML 関連技術 (XSLT, XPathなど) の基本は必ず知っておくべきでしょう。さらに開発者の方がMOSSサイトの機能拡張を学習される場合は、次のステップで学習されるとよいです。

  • SharePoint Designer 2007 を使用したサイトのUI カスタマイズ方法
  • SharePoint Designer 2007 を使用した JavaScript 、データビューを使用した機能拡張とカスタムワークフロー開発
  • サイト定義やリスト定義とフィーチャ フレームワークの理解

MOSS の上級者 (中級者レベルまで理解できた方で、システム開発者の方)

さらに上級となると MOSS をベースとした機能拡張やシステム連携が中心となってきます。

  • MOSS API / MOSS Web サービス
  • Visual Studio 2005 extensions for Windows SharePoint Services を使用した Web パーツ開発、イベントレシーバーの実装など
  • Visual Studio 2008 (2005 も可) によるカスタム ワークフロー開発

などですね。

と、今年はここまで。。。

どこまでお役に立てるかはわかりませんが、来年も引き続き MOSS の技術教育に携わっていく予定です。現場の声を直接伺えることが何より大事だと思っておりますので、機会がありましたら、セミナー等にぜひご参加いただき直接お声掛けください。また、このブログを通じて、色々と情報提供をさせていただこうと思っています(コメントは大歓迎です!) 。

皆様にとってもよい一年になりますよう心よりお祈り申し上げます。来年もどうぞよろしくお願いいたします。


WSS の MCP 試験

先日 MOSS の MCP 試験について書きましたが、「WSS の試験はどうなのでしょう?」というご質問を受けましたので、今日は WSS の MCP 試験について書こうと思います。

試験の範囲などの詳細については下記 URL で確認できます。

WSS の MCP 試験は、上記 URL を見るとわかりますがインフラ周りの内容が出題範囲になっています。構造的にみると、WSS は情報共有の基盤となるコンポーネントであることからプラットフォームとしてとらえられます。一方、MOSS は WSS という土台(プラットフォーム) の上に構築されたカスタムアプリケーションととらえられます。このことはウィザードなどの名称でも「SharePoint 製品とテクノロジー」となっていることからも伺えます。平たく言えば、WSS は製品ではなくテクノロジーであり、MOSSはそのテクノロジー上に構築された製品だということですね。

以上のことから、WSS の MCP試験はインフラ周りを重要視しているのだと思います。これらを踏まえると、私がお勧めする学習方法は次の通りです。

<<学習ステップ>>

  1. 「ひと目でわかる SharePoint Server 2007」でチームサイトと文書管理を中心に学習する 。
  2. TechNet などでシステム構成例などを把握する
  3. 模擬試験を受けてみて、把握していなかったところを洗い出す
  4. Windows Server 2003 NLB を使用した負荷分散、MOM を使った集中管理のそれぞれについて基本的な内容を学習する

試験勉強云々にかかわらず、システム構成については、以下の TechNet サイトを一読されることをお勧めします。http://www.microsoft.com/japan/technet/archive/officetechcenter/library/wss/2aa12954-2ea7-475c-9dce-663f54382081.mspx?mfr=true

模擬試験は、MOSS の模擬試験と同じサイトにあります。
対応模擬試験: http://www.microsoft.com/japan/learning/mcp/itpro/skillcheck/default.mspx

NLB, MOM はそれぞれ TechNet サイトを利用して基本的な構築方法などは確認しておくのがよいと思います。

NLB
http://technet2.microsoft.com/WindowsServer/ja/library/98d46a24-96d8-412c-87d8-28ace62323d21041.mspx

MOM
製品サイト: http://www.microsoft.com/japan/mom/default.mspx
SharePoint 用の管理パック: http://www.microsoft.com/downloads/details.aspx?FamilyID=247c06ba-c599-4b22-b2d3-7bf88c4d7811&displaylang=ja

NLB や MOM は、英語の書籍ですがMicrosoft Press から出ている「Microsoft Office SharePoint Server 2007 Administrator's Companion」がとても参考になります。本当によい本ですが、なにせ英語ですし辞書程も厚みもある(1000ページを越えます)ので、即、皆さんにお勧めとはいきませんが、それでも「ひと目で~」は一通りわかったとか物足りないいう方は、次のステップとしてより詳細を学習するのに手元に置いておくと何かと役立ちますよ(ただ、確か来年には日本語版がでるような話を聞いた気もするので、それまでもう少し待ってみるのもいいかもしれません)。

さて、参考になりましたでしょうか?


新規アイテムを投稿したときに表示される "New!" のアイコンはどれくらいの期間表示されるのですか?

「新規アイテムを投稿したときに表示される "New!" のアイコンはどれくらいの期間表示されるのですか?」 というご質問をときどき頂きます。

答えは2日間(既定値)です。

この New! のアイコンの表示期間は次の方法で指定することも可能です。

■stsadm.exeを使用する場合
stsadm.exe -o setproperty -propertyname days-to-show-new-icon -propertyvalue [表示する日数] -url [仮想サーバーのURL]

■SharePoint API を使用してプログラムからアクセスする場合SPWebApplication.DaysToShowNewIndicator プロパティを変更する。

いずれも設定期間を0にすると、New!は表示されなくなります。


参考までに New! のアイコンファイルそのものはどこにあるかといえば、SharePoint ハイブ (C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\) 内のTEMPLATE\LAYOUTS\1041\IMAGESフォルダ内にある "New.gif" です。

********************
なんだかんだと過ごしている間にクリスマスも過ぎてしまいましたね。今年も残すところ1週間を切りました。やりたいこと、やらなければいけないことが、山積みなのに、遅遅として進まずです。このまま年越しかしら。。。

人の検索で "上司" でフィルタを設定するには

SharePoint Server 2007 には、Active Directory などからユーザー情報を取り込み "人" を検索させる"ユーザープロファイル" 機能があります。今日はユーザープロファイルにまつわる話をご紹介します。なお、ユーザープロファイルそのものの設定手順は "ひと目でわかる~" 等でも紹介しているので、割愛します。

以前、「人の検索をするときに、上司が誰誰さんとなっている部下を検索したい」というご質問をいただいたことがありました。そこで共有サービス管理から確認してみると、ユーザープロファイルのデータベース自体に上司の情報は確かに格納されています。がこれを使ってフィルタ検索しようとするとそのままではうまくいきません。そこで試行錯誤しながら調査してみたのですが(調べること自体には時間がかかりましたが)、いったん手順が分かってしまえば割と簡単に設定できることがわかりました。

大まかな設定手順は次の通りです。

  1. 検索オプションに"上司" フィールドを追加する
  2. 上司で検索できるよう管理プロパティを変更しフルクロールを実行する

検索オプションに "上司" フィールドを追加する

検索ページの"人の検索Webパーツ" に表示される [検索オプション] に "上司" フィールドを追加し、絞り込み検索がしやすくなるように設定します。

Search_manager












手順は以下の通りです。

  1. 検索センターにアクセスし、"人" タブをクリックする
  2. [サイトの操作] メニューから [ページの編集] をクリックする
  3. [人の検索ボックス] Web パーツの [編集] メニューをクリックし、[共有Webパーツの変更]をクリックする
  4. [人の検索ボックス] のツールボックスが表示されたら [その他] セクションを展開し、[プロパティ] フィールドにカーソルを挿入する。すると、フィールド右側に [...] がボタンが表示されるのでこのボタンをクリックする
  5. XML データが表示される(実は、検索オプションの画面はここに記述されている XML を元に表示されています)。このXML の中の "<Property Name="QuickLinks" ManagedName="QuickLinks" ProfileURI="urn:schemas-microsoft-com:sharepoint:portal:profile:QuickLinks"/>" というタグを探し出し、そのすぐ後に <Property Name="Manager" ManagedName="Manager" ProfileURI="urn:schemas-microsoft-com:sharepoint:portal:profile:Manager"/> というタグを追加する(色を変えてある部分は、追加したいプロパティによって異なる部分です。Manager などの名前は、[共有サービス管理]-[ユーザープロファイル プロパティ]-[プロファイル プロパティの表示] で確認できます)。
  6. ツールボックスの [OK] ボタンをクリックし、ページ上部に表示される [発行] ボタンをクリックします。

以上で、検索オプションに "上司フィールド " が表示されるようになります。ただし、5で記述するXMLを間違えるとWebパーツエラーとなるので注意してください。もしエラーとなってしまった場合は "サイトURL ?contents=1"というURLを使って "Webパーツの管理ページ" にアクセスし、問題となった Webパーツを一旦削除後再び同Webパーツを手動で追加してください。

上司で検索できるよう、管理プロパティを変更しフルクロールを実行する

以上の設定だけで上司による絞り込み検索ができればよいのですが、そうはいきません。正確には上記の手順はなくてもよく、たとえば検索ボックスに "Manager:"EXAMPLE\ishigakih" と指定すれば、上司が "ishigakih" さんであるメンバーを検索できます。ただ、こうした入力は煩雑であり、ユーザーには敷居の高いものであるため、上記の手順をご紹介しました。結局、最も重要なのはユーザープロファイルに格納されているプロパティの中にはクロールされないものがあることを知っているかどうかです。既定では部署名や技能プロパティはクロール対象となっているため、絞り込み検索に利用できます。しかし、上司プロパティはクロール対象にはなっていません。次の手順でクロール対象に設定します。

  1. [共有サービス管理] にアクセスする
  2. [ユーザープロファイルと個人用サイト] セクションにある [ユーザープロファイルとプロパティ] をクリックする
  3. [ユーザー プロファイル プロパティ] セクションにある [プロファイル プロパティの表示] をクリックする
  4. [上司] プロパティにカーソルをかざし、表示されるドロップダウンメニューから [編集] をクリックする
  5. [検索の設定] セクションにある "インデックス" チェックボックスをオンにし、[OK] をクリックする (※このチェックボックスをオンにすることでクロール対象となります)

以上の設定が終わったら、フルクロールを実行しておきます。


サイトコレクション作成時にカスタム作成したサイトテンプレートを選択できるようにしたい

****2007/12/21 一部訂正しました********

MOSS のサイトのほとんどはテンプレート化して再利用できるようになっています。他の部署でも共通で利用するリストやライブラリ、メニューを用意してサイトそのものをテンプレート化し、すぐに利用できるような状態で横展開できるようにする場合などに便利です。また副次的な効果として、組織内で決まったテンプレートを利用させることでサイトの利用ガイドの作成を簡素化したり、ヘルプデスクの負担を軽減にもつながるといったこともあるようです。

設定はチームサイトの場合だと、[サイトの操作]メニュー→[サイトの設定] にアクセスし、[外観] セクションにある "テンプレートとしてサイトを保存" から行います。サイトは 拡張子stp というファイルとしてサイトコレクションのルートに保存されます。


しかし、"グループ作業ポータル" のような発行機能が有効になっているサイト (こうしたサイトを"発行サイト"といいます) には、サイトの設定ページの[外観] セクションに "テンプレートとしてサイトを保存" メニューがありません。発行サイトもテンプレート化できると書いてしまっていましたが、訂正します。発行サイトのテンプレート化はマイクロソフトのサポート対象外であり、確かに"_layouts/savetmpl.aspx" からテンプレート化まではできたとしても実際にテンプレートを元にサイトを作成するとエラーが表示されてうまく動作してくれません。もし、発行サイトをサイトコレクション作成時に利用できるようにするのであれば、テンプレートではなく、"サイト定義" というものを作成する必要があります。サイトテンプレートとサイト定義については、改めて別の機会に投稿します。(2007/12/21 訂正) この一見するとサイトのテンプレート化ができないように見えます。実は、既定ではテンプレート化するメニューが非表示になっているだけです。サイトの保存メニューは次の URL を指定することで表示できます。

次にテンプレートをサイトコレクションのルートサイト用への追加します。この作業はWebブラウザからは実行できないため、stsadm.exe を使用します。
  1. サイトテンプレートをサイト テンプレート ギャラリーからダウンロードして任意の場所に保存する
  2. 次のコマンドラインを実行する
    stsadm.exe -o addtemplate -filename テンプレートファイルのパス -title 任意のタイトル
  3. iisreset を実行して、IIS を再起動する

以上で、新規にサイトコレクションを作成するときにカスタムテンプレートを選択できるようになります。