Comments
Description
Transcript
繋げられるオンラインストレージのはなし #1
Tripod Communication Day 2014 繋げられるオンラインストレージのはなし GIGAPOD API 活用事例と上手な利用法 2014-04-23 トライポッドワークス株式会社 我妻隆志 GIGAPODについて 添付メールから、簡単・あんしんのファイル転送へ。 自社ポリシーで運用可能なクラウドストレージを構築できる ファイルの保管・管理 リンクURL による共有 アップロード フォルダの 共有 ダウンロード ソフトウェアで構築できるから、 クラウドでもオンプレミスでも。 クラウド Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 2 ネットでのファイル共有に求められる機能を提供 ●ファイル転送 ファイルリンク/フォルダリンク メール添付ファイルの代替、バイク便の代替 ●外部とのファイル共有 ゲストフォルダ(私書箱機能) 取引先とのファイル共有 ●社内でのファイル共有 共有フォルダ 部署やプロジェクト単位でのファイル共有 ●管理機能 運用設定・認証管理・権限管理・ログ参照 運用管理、アクセスコントロール、監視 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 3 ビジネスで求められるオンラインストレージ 使い易い セキュリティポリシーに準拠できる システム運用ポリシーに適用できる 運用形態を選べる 管理ができる 特にユーザー管理や認証管理 監査ができる デバイスを選ばない 他システムとの連携ができる(APIがある) Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 4 A:アプリケーション P:プログラミング I:インタフェース GIGAPOD API Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 5 主な操作をAPIとして利用可能 外部システムからGIGAPODを利用可能にした新コア API主要機能 Windwosアプリ iOS/Android 認証 ユーザー状況取得 ファイル参照 サーバーサイド処理 HTML5 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. アップロード リンク作成 6 APIで繋がる関連アプリの開発状況 GIGAPOD関連アプリケーションも、APIで繋がっている GIGAPOD API ※弊社スマートデバイスソリューション ブラウザ向けUI スマホ向けUI Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. Mini For Outlook iOS/Android向け ネイティブアプリ 7 GIGAPOD APIを使うメリット 他のシステムと連携することで、個々の業務に沿ったシス テム構築を実現できる オンラインストレージも M2M 【 Machine to Machine 】 の時代 短期間で手軽にシステム開発が可能 基本機能を作る必要が無い ユーザー様の要望にスピーディーに対応 APIを使った開発案件の支援およびサポート体制がある Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 8 ご相談事例 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 9 ご相談事例① 金融機関様 月次帳票の支店配信にGIGAPODを利用 数年間、社内のファイルのやりとりをGIGAPODで行ってきた。 別支店への転送は、ほぼ定時・定型処理。 「これ自動化できないの?」→導入されたパートナー様へ相談があった。 ファイル(月次帳票)はファイルサーバーにある 各支店 今月度の月次計数ファイルです。 https://server.com/94f2bbd458818 7a7ab38de やってらんねぇ! Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. やってらんねぇ! 10 ご相談事例① 金融機関様 パートナー様にて、APIを利用した帳票のバッチ転送を実装→解決。 支店管理→ゲストフォルダ(私書箱機能)として作成。 Windowsサーバー上で動作するバッチプログラムを開発。 ファイル名規則に基づいて、格納先ゲストフォルダを判定。 ゲストフォルダ管理 ファイル(月次帳票) VBによるバッチ処理 支店A 支店B 要件・システム構成をヒヤリング 実現性の検証 APIのご説明 エラー処理やトレース方法などの助言 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 支店n 11 ご相談事例② 準大手ゼネコン様 見積(積算)業務の効率化 積算部門の方からご相談 メールでやりとりしている資材見積業務へ、ファイル転送システムの適用を検討。 業者とのファイル交換(EXCEL)にゲストフォルダ(私書箱)を提案。 「転送の自動化ができないか?」と、一歩踏み込んだ相談があった。 見積フォーマット(=資材仕様書) ゲストフォルダ 資材業者A マクロ(VBA) フォーマットに記入して返送 GIGAPOD APIによるアップロード処理マクロ (VBA)を埋め込んだEXCELブック 資材業者n マクロ(VBA) サンプル提供、他 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 12 ご相談事例③ 自治体様 SaaSパッケージのオンプレミス(プライベートクラウド)化 某メーカー様による、タブレット向けSaaSパッケージの導入案件 要件上、データのクラウド保存が禁止されているため、 GIGAPODを代替のストレージとして利用できないか? データの保存・ユーザー間 の共有はクラウドへ タブレットでデータ作成・ 加工するSaaSパッケー ジ 実現性の検討 (フィット&ギャップ) APIのご説明・サンプル提供 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. お客様要件により、スト レージをオンプレミス化す る必要があった。 13 ご相談事例④ データ調査事業者様 コアビジネスを支えるシステムに組み込み メディア情報の調査・クリッピングサービスを提供。 データの入稿・収集はシステム化されていたが、 納品作業(データ転送)のシステム化が未着手。 納品システムとしてGIGAPODを利用できないか? URLリンクでデータ納品 情報 ソース アップロード URLリンク作成 入稿システム 調査・クリッピング 入稿システムに転送機能を追加 (開発言語:PHP on Linux) Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 14 ご相談事例⑤ 写真販売事業者様 撮影から販売までのワンストップサービスに採用 既存の写真販売システムを、インターネット配信にも拡大。 インターネットレイヤー(DMZ)にGIGAPODを採用。 フロントエンドの構築、およびバックエンドシステムとの連携部分にAPIを利用。 お客様 店舗 データ配信 (URLリンク) 入稿アップロード API API API 加工・プリント工程への連携 バックエンドシステム(顧客・課金・工程管理..etc) Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 15 GIGAPOD API 詳説 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 16 開発に必要なプラットフォーム APIはHTTPベース→開発言語の選択肢が広い HTTPクライアント / JSONパーサー のある処理系ならOK 操作要求 上りはHTTPクラ イアントから HTTPクライアント (POST / GET) 開発言語 / 処理系 JSON パーサー 下りはJSONを 扱えるように。 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. API 結果応答 17 APIの仕様書(リクエスト) 認証API仕様 リクエスト仕様 URI Method Multipart/for m-data Certification /app/pb/auth/login POST No 認証不要 Parameters Name lang Description 言語ID(日、韓、中、英) エラーメッセージに反映されます。 jpn | kor | chi | eng id ユーザーID password パスワード Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 18 APIの仕様書(レスポンス) レスポンスの例 レスポンス仕様 { lang Key "lang": "jpn", "operation_authority": { "download": true, "filelink": true, "guestfolder": true, "readonly": true, "sharedfolder": true, "upload": true, "create”:true }, "password_secure": true, "password_timelimit_exceed": false, "session_id": "20110202172852024125", "success": true, "user_id": "demo", "username": "山田太郎" } user_id Description 言語ID。jpn | kor | chi | eng のいずれか。 同値のCookieが発行され、"NBoxUserLang"に格納され ます。 ユーザーID 同値のCookieが発行され、"NBoxUser"に格納されます。 user_name ユーザー名 session_id セッションID 同値のCookieが発行され、"NBoxSession"に格納されま す。 パスワードの有効期限を超過しているか否かの判定 password_timelimit _exceed password_secure |operation_authority |-create |-upload |-download |-readonly |-filelink |-guestfolder `-sharedfolder パスワードポリシーに合致しているか否かの判定 操作権限 create = フォルダ作成権限の有無。(通常ユーザーは常に true) upload = アップロード権限の有無。(通常ユーザーは常に true) download = ダウンロード権限の有無。(通常ユーザーは 常にtrue) readonly = 読み取り専用かどうかの有無。(通常ユーザー は常にtrue) filelink = リンクが利用可能かどうか guestfolder = ゲストフォルダが利用可能かどうか sharedfolder = 共有フォルダが利用可能かどうか license falseの場合、ライセンスの有効期限を超過しています。 administrator trueの場合は管理者権限です。管理者の場合のみキーが存 在します。 guestid ゲストの場合のみキーが存在します 。ゲストのIDが返されます。 同値のCookieが発行され "NBoxGuest" に格納されます。 guestkey ゲストの場合のみキーが存在します。ゲストキーが返されます。 同値のCookieが発行され "NBoxGuestSha" に格納され ます。 { "success":false, "all":"Incorrect ID or password.“ } Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 19 APIによる処理フロー ざっくりとした処理順 「フォルダを作成して、ファイルをアップロード。それをリンク転送したい」 認証 フォルダ作成 /app/pb/auth/login /app/item/folder/add 認証を行い、セッションを確立します。 ※内部的には認証Cookieを得ます。 フォルダIDとフォルダ名を指定して、フォルダを 作成します。 URLリンク作成 アップロード /app/link/edit /app/item/upload リンクのセキュリティ条件を指定して、リンク URLを取得します。 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. フォルダIDとファイルコンテンツをアップロードしま す。(Multipart形式) 20 Let’s Try Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 21 設計のアプローチ ラッパークラスとしてGIGAPOD APIを抽象化。 リクエスト処理は大別して3つ。それぞれ1カ所に。 テキストメッセージ(GET/POST) アップロード(multipart/form-data形式) ダウンロード(ローカルストレージへの保存) レスポンスとして返されるJSONデータは、必要に応じて モデルオブジェクトとして実装する。 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 22 設計のアプローチ オブジェクトモデル ユ ー ザ ー イ ン タ フ ェ ー ス GIGAPOD API ラッパーサービス (クラス) HTTP クライアント JSON パーサー API JSONオブジェクト または モデルクラス Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 23 シスアド・シスオペの方へ Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 24 GIGAPOD コマンド OSのシェルからGIGAPODを操作する新機能 共有・転送・バックアップ… クロスプラットフォームで動作 API開発のリファレンスとして近日公開予定 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 25 まとめ GIGAPODはソフトウェア同士で繋げる事ができるオンラ インストレージです。 APIの利用は、プログラムを書く必要がありますが、制約は大 きくありません。 オンラインストレージを、定型業務・定型処理のコスト削 減に役立てる事ができます。 電子ファイルの取り扱いは、弊社へご相談下さい。 これまで蓄積してきたノウハウがあります。 製品・サポート・サービスをご提供する体制があります。 Copyright (C) 2014 Tripodworks Co., Ltd. All right reserved. 26 今後とも弊社GIGAPODをよろしくお願い申し上げます。