SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
Copyright ⓒ Seraph Corp. All rights reserved.
株式会社セラフ
http://www.srp.co.jp
SharePoint Online パブリックサイト
SharePoint用アプリ開発の注意点
第9回 Office365勉強会
Copyright ⓒ Seraph Corp. All rights reserved.
乾 正明(いぬい まさあき)
Facebook:https://www.facebook.com/masaaki.inui
会社:株式会社セラフ(http://www.srp.co.jp)
■ 2014/4よりNintex社のパートナーになりました。
経歴:
■ 2002年~2010年までマイクロソフト社内にて、LOBアプリケーショ
ン・MSCOM上のサイトの開発に従事。後半はMSITでLOBアプリケー
ションのサポートチームリーダーを担当。
■ SharePointは2003の頃から開発・日々の業務に利用。
■ 2010年に自社に戻ってからはSharePoint開発に特化したチームのリー
ダーを担当。
2
自己紹介
Copyright ⓒ Seraph Corp. All rights reserved.
1. SharePointの開発手法
2. Publicサイトでのリスト書き込み
1. SharePoint用アプリ
2. 開発以外の方法
1. Office 365 Anonymous Access
2. Contact US Form
3. その他の注意
Appendix
3
目次
Copyright ⓒ Seraph Corp. All rights reserved.
サーバー(Azure/Hosting)
SharePoint
SharePoint用アプリ
API
SSOM(Farm/Sandbox)UI
4
1. SharePoint 2013 の開発手法
クライアント
JavaScript
ADO
Webパーツ
Silverlight
CSOM
PowerShell
REST
Client Side Rendering
(JS Link/表示テンプレート)
マスターページ
CSS
ページレイアウト
Office
Webパーツアプリケーションページ
イベントレシーバー
デリゲートコントロール
リボン
サイト定義
リスト定義ワークフロー
列定義
ページ
ワークフロー
コンテンツタイプ
リモートイベント
レシーバー
コンテンツタイプ
サイト列
リボン
SharePoint hosted
Provider hosted
JSOM
Office用アプリ
Copyright ⓒ Seraph Corp. All rights reserved.
■ 調査の目的
■ SharePoint Onlineのパブリックサイトで、ユーザーが情報を投稿できる仕組みを作
りたい
■ ユーザーが投稿した情報を管理したい
■ SharePoint用アプリで実現したい
■ 匿名アクセスのユーザーがリストに書き込みができるのかがポイント!
5
2. リストへの書き込み
1. SharePoint用アプリ
Copyright ⓒ Seraph Corp. All rights reserved.
■ SharePoint-hosted/Provider-hostedの2通りでリストへの書き込みの可否を調査
Private Site
App web
Host web
6
2. Publicサイトでのリスト書き込み
1. SharePoint用アプリ
入力
フォーム
List
List
ページ
アプリ
呼び出し
List
# 処理内容
1 App webのリスト(外部の匿名ユーザーから参照・書き込み不可)にデータ作成・編集・削除
2 App webのリスト(外部の匿名ユーザーから参照・書き込み不可)にデータ作成・編集・削除
3 Private siteのリスト(外部の匿名ユーザーから参照・書き込み不可)にデータコピー
1
2
3
Copyright ⓒ Seraph Corp. All rights reserved.
■ 調査結果
7
2. Publicサイトでのリスト書き込み
1. SharePoint用アプリ
リストの配置場所 SharePoint-hosted Provider-hosted
Host web
書き込み不可
読み込み可
書き込み可
読み込み可
*AllowAppOnlyPolicyを有効にした場合
App web
書き込み可
読み込み可
書き込み可
読み込み可
Private Site 書き込み不可
読み込み不可
*WF/RERでの調査
書き込み不可
読み込み不可
*WF/RERでの調査
Copyright ⓒ Seraph Corp. All rights reserved.
リストに対する匿名ユーザーのアクセス権を強制的に変えるSandboxソリューション
http://anonymous365.codeplex.com/
8
2.2. Publicサイトでのリスト書き込み - 開発以外の方法
1. Office 365 Anonymous Access
Copyright ⓒ Seraph Corp. All rights reserved.
SharePoint Online Publicサイトで利用できる問い合わせフォーム
http://office.microsoft.com/en-us/office365-sharepoint-online-enterprise-
help/add-a-contact-us-form-app-to-your-website-HA102845395.aspx
9
2.2. Publicサイトでのリスト書き込み - 開発以外の方法
2. Contact Us Form
※2014/7/31現在、App Web側のリスト画面
のスタイルが崩れています。
Copyright ⓒ Seraph Corp. All rights reserved.
■ SSL
■ 独自ドメインを設定している場合、SSLが利用できません。
(domainname.onmicrosoft.comの場合は利用可能)
http://blogs.technet.com/b/nitinsha/archive/2011/06/23/you-cannot-use-secure-
sockets-layer-ssl-protocol-with-an-office-365-hosted-public-site-you-can-use-vanity-
domain-for-sharepoint-online-website.aspx
■ メール送信
■ REST APIを使ってメール送信ができますが、SharePointサイトのユーザーにのみ送信できます。
(おそらくprivate siteも同様)
10
3. その他の注意
Copyright ⓒ Seraph Corp. All rights reserved.
■ Office365新卒管理者の奮闘日記
URL:http://office365blog-public.sharepoint.com/
弊社の新入社員のブログです。日々頑張って更新しています。
応援よろしくお願いします。
■ マスターページ/HTML/CSSの変更でデザインをカスタマイズしています。
11
Appendix

Weitere ähnliche Inhalte

Andere mochten auch

Alfresco勉強会#33 Alfresco Solr Admin UI
Alfresco勉強会#33 Alfresco Solr Admin UIAlfresco勉強会#33 Alfresco Solr Admin UI
Alfresco勉強会#33 Alfresco Solr Admin UIJun Terashita
 
Alfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズ
Alfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズAlfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズ
Alfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズJun Terashita
 
JobSchedulerでCD(継続的デリバリ)
JobSchedulerでCD(継続的デリバリ)JobSchedulerでCD(継続的デリバリ)
JobSchedulerでCD(継続的デリバリ)OSSラボ株式会社
 
初めてでも大丈夫!SharePoint 開発の第一歩
初めてでも大丈夫!SharePoint 開発の第一歩初めてでも大丈夫!SharePoint 開発の第一歩
初めてでも大丈夫!SharePoint 開発の第一歩Yoshitaka Seo
 
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるAlfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるTasuku Otani
 
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみようAlfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみようTasuku Otani
 
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたTasuku Otani
 
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようAlfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようTasuku Otani
 
Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介MoritakaSoma
 
Alfresco Javascript Consoleのご紹介
Alfresco Javascript Consoleのご紹介Alfresco Javascript Consoleのご紹介
Alfresco Javascript Consoleのご紹介MoritakaSoma
 
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしようAlfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしようTomomi Kawabe
 

Andere mochten auch (11)

Alfresco勉強会#33 Alfresco Solr Admin UI
Alfresco勉強会#33 Alfresco Solr Admin UIAlfresco勉強会#33 Alfresco Solr Admin UI
Alfresco勉強会#33 Alfresco Solr Admin UI
 
Alfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズ
Alfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズAlfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズ
Alfresco勉強会#35 AlfrescoのアクティビティフィードをSlackに送るカスタマイズ
 
JobSchedulerでCD(継続的デリバリ)
JobSchedulerでCD(継続的デリバリ)JobSchedulerでCD(継続的デリバリ)
JobSchedulerでCD(継続的デリバリ)
 
初めてでも大丈夫!SharePoint 開発の第一歩
初めてでも大丈夫!SharePoint 開発の第一歩初めてでも大丈夫!SharePoint 開発の第一歩
初めてでも大丈夫!SharePoint 開発の第一歩
 
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるAlfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
 
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみようAlfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
Alfresco勉強会#28 alfresco 5.0の検索機能をみてみよう
 
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
 
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようAlfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
 
Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介
 
Alfresco Javascript Consoleのご紹介
Alfresco Javascript Consoleのご紹介Alfresco Javascript Consoleのご紹介
Alfresco Javascript Consoleのご紹介
 
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしようAlfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
Alfresco勉強会#30 alfrescoとshareのJavaScriptをデバッグしよう
 

SharePoint パブリックサイト開発の注意点

  • 1. Copyright ⓒ Seraph Corp. All rights reserved. 株式会社セラフ http://www.srp.co.jp SharePoint Online パブリックサイト SharePoint用アプリ開発の注意点 第9回 Office365勉強会
  • 2. Copyright ⓒ Seraph Corp. All rights reserved. 乾 正明(いぬい まさあき) Facebook:https://www.facebook.com/masaaki.inui 会社:株式会社セラフ(http://www.srp.co.jp) ■ 2014/4よりNintex社のパートナーになりました。 経歴: ■ 2002年~2010年までマイクロソフト社内にて、LOBアプリケーショ ン・MSCOM上のサイトの開発に従事。後半はMSITでLOBアプリケー ションのサポートチームリーダーを担当。 ■ SharePointは2003の頃から開発・日々の業務に利用。 ■ 2010年に自社に戻ってからはSharePoint開発に特化したチームのリー ダーを担当。 2 自己紹介
  • 3. Copyright ⓒ Seraph Corp. All rights reserved. 1. SharePointの開発手法 2. Publicサイトでのリスト書き込み 1. SharePoint用アプリ 2. 開発以外の方法 1. Office 365 Anonymous Access 2. Contact US Form 3. その他の注意 Appendix 3 目次
  • 4. Copyright ⓒ Seraph Corp. All rights reserved. サーバー(Azure/Hosting) SharePoint SharePoint用アプリ API SSOM(Farm/Sandbox)UI 4 1. SharePoint 2013 の開発手法 クライアント JavaScript ADO Webパーツ Silverlight CSOM PowerShell REST Client Side Rendering (JS Link/表示テンプレート) マスターページ CSS ページレイアウト Office Webパーツアプリケーションページ イベントレシーバー デリゲートコントロール リボン サイト定義 リスト定義ワークフロー 列定義 ページ ワークフロー コンテンツタイプ リモートイベント レシーバー コンテンツタイプ サイト列 リボン SharePoint hosted Provider hosted JSOM Office用アプリ
  • 5. Copyright ⓒ Seraph Corp. All rights reserved. ■ 調査の目的 ■ SharePoint Onlineのパブリックサイトで、ユーザーが情報を投稿できる仕組みを作 りたい ■ ユーザーが投稿した情報を管理したい ■ SharePoint用アプリで実現したい ■ 匿名アクセスのユーザーがリストに書き込みができるのかがポイント! 5 2. リストへの書き込み 1. SharePoint用アプリ
  • 6. Copyright ⓒ Seraph Corp. All rights reserved. ■ SharePoint-hosted/Provider-hostedの2通りでリストへの書き込みの可否を調査 Private Site App web Host web 6 2. Publicサイトでのリスト書き込み 1. SharePoint用アプリ 入力 フォーム List List ページ アプリ 呼び出し List # 処理内容 1 App webのリスト(外部の匿名ユーザーから参照・書き込み不可)にデータ作成・編集・削除 2 App webのリスト(外部の匿名ユーザーから参照・書き込み不可)にデータ作成・編集・削除 3 Private siteのリスト(外部の匿名ユーザーから参照・書き込み不可)にデータコピー 1 2 3
  • 7. Copyright ⓒ Seraph Corp. All rights reserved. ■ 調査結果 7 2. Publicサイトでのリスト書き込み 1. SharePoint用アプリ リストの配置場所 SharePoint-hosted Provider-hosted Host web 書き込み不可 読み込み可 書き込み可 読み込み可 *AllowAppOnlyPolicyを有効にした場合 App web 書き込み可 読み込み可 書き込み可 読み込み可 Private Site 書き込み不可 読み込み不可 *WF/RERでの調査 書き込み不可 読み込み不可 *WF/RERでの調査
  • 8. Copyright ⓒ Seraph Corp. All rights reserved. リストに対する匿名ユーザーのアクセス権を強制的に変えるSandboxソリューション http://anonymous365.codeplex.com/ 8 2.2. Publicサイトでのリスト書き込み - 開発以外の方法 1. Office 365 Anonymous Access
  • 9. Copyright ⓒ Seraph Corp. All rights reserved. SharePoint Online Publicサイトで利用できる問い合わせフォーム http://office.microsoft.com/en-us/office365-sharepoint-online-enterprise- help/add-a-contact-us-form-app-to-your-website-HA102845395.aspx 9 2.2. Publicサイトでのリスト書き込み - 開発以外の方法 2. Contact Us Form ※2014/7/31現在、App Web側のリスト画面 のスタイルが崩れています。
  • 10. Copyright ⓒ Seraph Corp. All rights reserved. ■ SSL ■ 独自ドメインを設定している場合、SSLが利用できません。 (domainname.onmicrosoft.comの場合は利用可能) http://blogs.technet.com/b/nitinsha/archive/2011/06/23/you-cannot-use-secure- sockets-layer-ssl-protocol-with-an-office-365-hosted-public-site-you-can-use-vanity- domain-for-sharepoint-online-website.aspx ■ メール送信 ■ REST APIを使ってメール送信ができますが、SharePointサイトのユーザーにのみ送信できます。 (おそらくprivate siteも同様) 10 3. その他の注意
  • 11. Copyright ⓒ Seraph Corp. All rights reserved. ■ Office365新卒管理者の奮闘日記 URL:http://office365blog-public.sharepoint.com/ 弊社の新入社員のブログです。日々頑張って更新しています。 応援よろしくお願いします。 ■ マスターページ/HTML/CSSの変更でデザインをカスタマイズしています。 11 Appendix