Soumettre la recherche
Mettre en ligne
SharePoint Onlineアクセスモニター
•
0 j'aime
•
749 vues
Akihiro Ehara
Suivre
SharePoint Onlineのアクセスをリアルタイムにモニターする
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 10
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
Share point開発 ファイル受信
Share point開発 ファイル受信
Akihiro Ehara
Google アナリティクスでSharePointの利用状況を確認する
Google アナリティクスでSharePointの利用状況を確認する
Akihiro Ehara
SharePointアドイン開発 SAPデータ連携
SharePointアドイン開発 SAPデータ連携
Akihiro Ehara
SharePointアドイン開発 Line風Chat アドイン
SharePointアドイン開発 Line風Chat アドイン
Akihiro Ehara
Service worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたち
Kinuko Yasuda
azure functionsでlinebotを作ってみた
azure functionsでlinebotを作ってみた
裕之 木下
Build insider testingwithvs
Build insider testingwithvs
Tomoyuki Iwade
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Shotaro Suzuki
Recommandé
Share point開発 ファイル受信
Share point開発 ファイル受信
Akihiro Ehara
Google アナリティクスでSharePointの利用状況を確認する
Google アナリティクスでSharePointの利用状況を確認する
Akihiro Ehara
SharePointアドイン開発 SAPデータ連携
SharePointアドイン開発 SAPデータ連携
Akihiro Ehara
SharePointアドイン開発 Line風Chat アドイン
SharePointアドイン開発 Line風Chat アドイン
Akihiro Ehara
Service worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたち
Kinuko Yasuda
azure functionsでlinebotを作ってみた
azure functionsでlinebotを作ってみた
裕之 木下
Build insider testingwithvs
Build insider testingwithvs
Tomoyuki Iwade
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Building simple-app-using-.net 6 asp.net core web api-blazor web assembly-ela...
Shotaro Suzuki
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
Kazumi IWANAGA
WebIDLを見てみる
WebIDLを見てみる
takenspc
懲りずにazure functionsでlinebotを作ってみた
懲りずにazure functionsでlinebotを作ってみた
裕之 木下
LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)
拓将 平林
第12回rest勉強会 これまでの補足・展望編
第12回rest勉強会 これまでの補足・展望編
ksimoji
JAWSDAYS2017 新訳 とあるアーキテクトのクラウドデザインパターン目録 AMI Maintenance Environment
JAWSDAYS2017 新訳 とあるアーキテクトのクラウドデザインパターン目録 AMI Maintenance Environment
Jin k
Micronaut on Azure 試してみた
Micronaut on Azure 試してみた
拓将 平林
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Ai Hirano
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
Shumpei Shiraishi
Let's try to use Background sync
Let's try to use Background sync
Hirata Tomoko
IoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレス
Masahiro NAKAYAMA
Closure Toolsの紹介
Closure Toolsの紹介
Yusuke Amano
GCPだから出来た 自動Web監視システムのインフラ構築(仮)
GCPだから出来た 自動Web監視システムのインフラ構築(仮)
beyond Co., Ltd.
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
Kazumi IWANAGA
RealTimeDatabaseで チャットアプリを5分で作る話
RealTimeDatabaseで チャットアプリを5分で作る話
and factory, inc.
Apache Spark on Azure
Apache Spark on Azure
Tusyoshi Matsuzaki
WordPressで制御するこれからのIoT
WordPressで制御するこれからのIoT
Yuriko IKEDA
第5回rest勉強会 ログイン編
第5回rest勉強会 ログイン編
ksimoji
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
Takao Tetsuro
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Shumpei Shiraishi
Pro aspnetmvc3framework chap19
Pro aspnetmvc3framework chap19
Hideki Hashizume
20120425
20120425
小野 修司
Contenu connexe
Tendances
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
Kazumi IWANAGA
WebIDLを見てみる
WebIDLを見てみる
takenspc
懲りずにazure functionsでlinebotを作ってみた
懲りずにazure functionsでlinebotを作ってみた
裕之 木下
LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)
拓将 平林
第12回rest勉強会 これまでの補足・展望編
第12回rest勉強会 これまでの補足・展望編
ksimoji
JAWSDAYS2017 新訳 とあるアーキテクトのクラウドデザインパターン目録 AMI Maintenance Environment
JAWSDAYS2017 新訳 とあるアーキテクトのクラウドデザインパターン目録 AMI Maintenance Environment
Jin k
Micronaut on Azure 試してみた
Micronaut on Azure 試してみた
拓将 平林
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Ai Hirano
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
Shumpei Shiraishi
Let's try to use Background sync
Let's try to use Background sync
Hirata Tomoko
IoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレス
Masahiro NAKAYAMA
Closure Toolsの紹介
Closure Toolsの紹介
Yusuke Amano
GCPだから出来た 自動Web監視システムのインフラ構築(仮)
GCPだから出来た 自動Web監視システムのインフラ構築(仮)
beyond Co., Ltd.
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
Kazumi IWANAGA
RealTimeDatabaseで チャットアプリを5分で作る話
RealTimeDatabaseで チャットアプリを5分で作る話
and factory, inc.
Apache Spark on Azure
Apache Spark on Azure
Tusyoshi Matsuzaki
WordPressで制御するこれからのIoT
WordPressで制御するこれからのIoT
Yuriko IKEDA
第5回rest勉強会 ログイン編
第5回rest勉強会 ログイン編
ksimoji
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
Takao Tetsuro
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Shumpei Shiraishi
Tendances
(20)
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
WebIDLを見てみる
WebIDLを見てみる
懲りずにazure functionsでlinebotを作ってみた
懲りずにazure functionsでlinebotを作ってみた
LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)
第12回rest勉強会 これまでの補足・展望編
第12回rest勉強会 これまでの補足・展望編
JAWSDAYS2017 新訳 とあるアーキテクトのクラウドデザインパターン目録 AMI Maintenance Environment
JAWSDAYS2017 新訳 とあるアーキテクトのクラウドデザインパターン目録 AMI Maintenance Environment
Micronaut on Azure 試してみた
Micronaut on Azure 試してみた
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
Let's try to use Background sync
Let's try to use Background sync
IoT(Bluetooth mesh) × サーバーレス
IoT(Bluetooth mesh) × サーバーレス
Closure Toolsの紹介
Closure Toolsの紹介
GCPだから出来た 自動Web監視システムのインフラ構築(仮)
GCPだから出来た 自動Web監視システムのインフラ構築(仮)
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
【NLU祭り 場外編】コミュニケーションをより身近に、よりかしこく。LUIS と Azure AI サービスの使いどころ
RealTimeDatabaseで チャットアプリを5分で作る話
RealTimeDatabaseで チャットアプリを5分で作る話
Apache Spark on Azure
Apache Spark on Azure
WordPressで制御するこれからのIoT
WordPressで制御するこれからのIoT
第5回rest勉強会 ログイン編
第5回rest勉強会 ログイン編
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Similaire à SharePoint Onlineアクセスモニター
Pro aspnetmvc3framework chap19
Pro aspnetmvc3framework chap19
Hideki Hashizume
20120425
20120425
小野 修司
Isomorphic web development with scala and scala.js
Isomorphic web development with scala and scala.js
TanUkkii
HTML5&API総まくり
HTML5&API総まくり
Shumpei Shiraishi
Azure で Serverless 初心者向けタッチ&トライ
Azure で Serverless 初心者向けタッチ&トライ
Masanobu Sato
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
Shotaro Suzuki
densan2014-late01
densan2014-late01
Takenori Nakagawa
ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法
Kenichiro Nakamura
ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用
Yatabe Terumasa
HTML5 on ASP.NET
HTML5 on ASP.NET
Fujio Kojima
One ASP.NET の今とこれから
One ASP.NET の今とこれから
Akira Inoue
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
Yuji Takayama
Featuring Project Silk & Liike: 楽しい "モダン" Web 開発のちょっとディープなお話
Featuring Project Silk & Liike: 楽しい "モダン" Web 開発のちょっとディープなお話
Akira Inoue
ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説
Akira Inoue
Mobile Web
Mobile Web
Makoto Kato
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
Yuji Takayama
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発
Akira Inoue
20100313
20100313
小野 修司
Ajax basic
Ajax basic
Katsuyuki Seino
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Tasuku Otani
Similaire à SharePoint Onlineアクセスモニター
(20)
Pro aspnetmvc3framework chap19
Pro aspnetmvc3framework chap19
20120425
20120425
Isomorphic web development with scala and scala.js
Isomorphic web development with scala and scala.js
HTML5&API総まくり
HTML5&API総まくり
Azure で Serverless 初心者向けタッチ&トライ
Azure で Serverless 初心者向けタッチ&トライ
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
XAML と C# を使った Windows ストアアプリ(LOB)構築のためのtips Prism 4.5 & Kona project 等のご紹介
densan2014-late01
densan2014-late01
ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法
ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用
HTML5 on ASP.NET
HTML5 on ASP.NET
One ASP.NET の今とこれから
One ASP.NET の今とこれから
Data apiで実現 進化するwebの世界
Data apiで実現 進化するwebの世界
Featuring Project Silk & Liike: 楽しい "モダン" Web 開発のちょっとディープなお話
Featuring Project Silk & Liike: 楽しい "モダン" Web 開発のちょっとディープなお話
ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説
Mobile Web
Mobile Web
初めての Data api cms どうでしょう - 大阪夏の陣
初めての Data api cms どうでしょう - 大阪夏の陣
jQuery と MVC で実践する標準志向 Web 開発
jQuery と MVC で実践する標準志向 Web 開発
20100313
20100313
Ajax basic
Ajax basic
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Plus de Akihiro Ehara
Visual Studio TypeScript npm WebPack
Visual Studio TypeScript npm WebPack
Akihiro Ehara
Share point開発 勤怠管理
Share point開発 勤怠管理
Akihiro Ehara
Cloud storage light
Cloud storage light
Akihiro Ehara
エンタープライズ.Net light switch
エンタープライズ.Net light switch
Akihiro Ehara
エンタープライズ.Net RIAサービス
エンタープライズ.Net RIAサービス
Akihiro Ehara
エンタープライズ.Net DataSet
エンタープライズ.Net DataSet
Akihiro Ehara
エンタープライズ.Net RIAサービス
エンタープライズ.Net RIAサービス
Akihiro Ehara
エンタープライズ.Net 詳細設計編
エンタープライズ.Net 詳細設計編
Akihiro Ehara
エンタープライズ.Net アーキテクチャ設計編
エンタープライズ.Net アーキテクチャ設計編
Akihiro Ehara
エンタープライズ.Net 分析編
エンタープライズ.Net 分析編
Akihiro Ehara
Plus de Akihiro Ehara
(10)
Visual Studio TypeScript npm WebPack
Visual Studio TypeScript npm WebPack
Share point開発 勤怠管理
Share point開発 勤怠管理
Cloud storage light
Cloud storage light
エンタープライズ.Net light switch
エンタープライズ.Net light switch
エンタープライズ.Net RIAサービス
エンタープライズ.Net RIAサービス
エンタープライズ.Net DataSet
エンタープライズ.Net DataSet
エンタープライズ.Net RIAサービス
エンタープライズ.Net RIAサービス
エンタープライズ.Net 詳細設計編
エンタープライズ.Net 詳細設計編
エンタープライズ.Net アーキテクチャ設計編
エンタープライズ.Net アーキテクチャ設計編
エンタープライズ.Net 分析編
エンタープライズ.Net 分析編
SharePoint Onlineアクセスモニター
1.
Visual Studioで作成する SharePointアドイン開発 SharePoint Onlineアクセスモニター 2016年5月 SharePoint
Onlineカスタマイズ
2.
今回のお題 SharePoint Onlineのアクセスを リアルタイムにモニターする
3.
利用する仕組み • プロバイダーホスト型 • SignalR(Web
Socket)でリアルタイム表示 • UserCustomActions • すべてのページにJavascriptを埋め込める • ログ収集用のJavaScriptを埋め込む
4.
埋め込みスクリプト (function () { this.send
= function () { if (!SP.ClientContext) { setTimeout(this.send, 100); return; } var ctx = new SP.ClientContext.get_current(); var website = ctx.get_web(); var currentUser = website.get_currentUser(); ctx.load(currentUser); ctx.executeQueryAsync(function () { var uid = currentUser.get_email(); var r = new XMLHttpRequest(); r.open('POST', '" + actionUrl +@"', true); r.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded' ); r.send('title=' + encodeURIComponent(document.title) + '&url='+ encodeURIComponent( location.pathname + location.search + location.hash) + '&user=' + uid ); }, function () { var r = new XMLHttpRequest(); r.open('POST', '" + actionUrl +@"', true); r.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded' ); r.send('title=' + encodeURIComponent(document.title) + '&url='+ encodeURIComponent( location.pathname + location.search + location.hash) + '&user='); }); } setTimeout(this.send, 0); })(); ログ収集用のWebサービスにタイトルと URLとメールアドレスを送信するJavascript
5.
JavaScriptの埋め込み private void SetUserScript(ClientContext
ctx, string script) { var userCustomActions = ctx.Site.UserCustomActions; ctx.Load(userCustomActions); ctx.ExecuteQuery(); var action = userCustomActions.Where(x => x.Title == userScriptName).FirstOrDefault(); if (action == null) { action = userCustomActions.Add(); action.Location = "ScriptLink"; action.Title = userScriptName; ; } action.ScriptBlock = script??""; action.Sequence = 1000; action.Update(); ctx.ExecuteQuery(); //空の場合削除する if (string.IsNullOrWhiteSpace(script)) { action.DeleteObject(); ctx.Load(action); ctx.ExecuteQuery(); return; } } ctx.Site.UserCustomActionsに登録
6.
ログ受信処理 public ActionResultWrite(string user,
string title, string url) { var hubContext = GlobalHost.ConnectionManager.GetHubContext<MonitorHub>(); hubContext.Clients.All.update(new { Timestamp = DateTime.Now, User = user, Title = title, Url = url, }); return new HttpStatusCodeResult(200); } 今回はファイル等には保存せず、SignalR でブロードキャスト送信
7.
ログ表示処理 $.connection.hub.start().done(function () { $("#connection-satus").text("接続済み"); }); var
myHub = $.connection.monitorHub; myHub.client.update = function (model) { $("#messagelist tbody").prepend($('<tr class="msg2"><td colspan="3"><p class="ellipsis">' + model.Url + "</p></td></tr>")); $("#messagelist tbody").prepend($('<tr class="msg1"><td><p class="ellipsis">‘ + model.Timestamp + '</p></td><td><p class="ellipsis">‘ + model.Title + '</p></td><td><p class="ellipsis">' + model.User + '</p></td></tr>')); if ($("#messagelist tbody tr").length > 100) { $("#messagelist tbody tr:last-child").remove() $("#messagelist tbody tr:last-child").remove() } }; SignalRで送信されたデータを画面に表示
8.
できること/できないこと • できること • 表示のタイミングでログするため、リストアイ テム表示などSharePointの監査ログで収集でき ない項目もカバーできる •
できないこと • ファイルのプレビューはログ可能だが、ダウ ンロードや直接表示された場合はログはでき ない • SharePointのJavaScriptをHackingすることである 程度は対応できる
9.
まとめ • UserCustomActions を使うとログ収集は簡単にできる •
SignalRなどの技術と組み合わせことでリアルタイムに モニターすることも可能 • SharePointのJavaScriptをHackingするとさらにいろいろ でき可能性がある • サンプルコード • https://github.com/akihiroe/SharePointAccessMonitor
10.
http://www.proaxia-consulting.co.jp Azure&SharePointアプリケーション開発についてのお問合せ [担当] akihiro.ehara@proaxia-consulting.co.jp SharePoint Onlineとファイルサーバーを統合するCloud
Storage Light https://www.cloudstoragelight.com SharePoint 上のファイルをエクスプローラ感覚でサクサク操作するSharePointエクスプローラ https://www.cloudstoragelight.com/sharepointexplorer/
Télécharger maintenant