SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
AWSとSalesforceをつかったエコシステム
ファイル編
吉澤
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
Amazon S3って何?
2
Amazon Simple Storage Serviceの略で、AWSが提供しているスト
レージサービスの事。
特徴
・高い堅牢性:データ消失確率が0.000000001%
・高い可用性:99.99%
・安い:1GBあたり$0.3(約3円)
・APIがよい
・細かなセキュリティ設定も可能
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
Force.com for Amazon WebServices
3
URL:http://wiki.developerforce.com/page/Amazon_Toolkit
Force.com上からAWS(EC2,S3)を操作するパッケージ
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
Force.com for Amazon WebServices
4
AWSアクセスキーの設定
S3 AWS Credentialオブジェクトに登録
このCredentialNameを
各Cls内に設定し、認
証に使用します。
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
東京リージョン対応
5
東京リージョンのS3を扱うため、いくつかの設定が必要になります。
1. S3.clsのエンドポイントを書き換え
public String endpoint_x =
'https://s3-ap-northeast-1.amazonaws.com/soap';
2. 上記サイトをリモートサイトに登録
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
システム構成イメージ
6
S3オブジェクト
(バケット、ファイル情報)
実ファイルブラウザ
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
登録時の困ったこと
7
トラブル1:100KB以上のファイルがアップロードできない
※SalesforceのWebサービスAPIの制限
解決:ブラウザから直接S3へアップロードを行う
S3Bucket
①ページ表示時に必要
な情報をAPEXで生成し、
格納
②直接アップロード
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
登録時の困ったこと
8
トラブル2:ファイル名が重複した場合、上書きされてしまう・・・
解決:SalesforceId/ファイル名で一意にした
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
登録時の困ったこと
9
ブラウザによってファイル名入力フィールドで入力される値が異な
る
Firefox:ファイル名
Chrome:c:¥fakepath¥ファイル名
解決:Javascriptで解決
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
最終的な登録イメージ
10
S3オブジェクト
(バケット、ファイル情報)
実ファイル
⑤レコード作成更新(ファイル
名等)
④結果ページ表示
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
ダウンロード時イメージ
11
S3オブジェクト
(バケット、ファイル情報)
実ファイル
①ダウンロードボタン押下
②APEX内部で期限付き、認証キー
付URLを発行し、WindowOpen
※期限は1時間 AWS認証情報オブジェクト
(アクセスキー、シークレット
キー)
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
ダウンロード時で困ったこと
12
日本語ファイルの場合、正しい期限付き認証キー付URLが発行で
きなかった。
・キー発行時にファイル名をパラメータに使用しているが、エンコー
ドされていないとNGという事が判明
→キー発行前にエンコードし解決。
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
削除イメージ
13
S3オブジェクト
(バケット、ファイル情報)
実ファイル
①削除ボタン押下
②JSよりAPEX WebService呼出 AWS認証情報オブジェクト
(アクセスキー、シークレット
キー)
③AWS API Callout
④削除実行
⑤S3オブジェクトのレコード削除
⑥画面表示
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
S3ファイル削除で困ったこと
14
ファイル削除をトリガーにAWSのAPIをCalloutできる?
外部WebService呼出はトリガーからはNG(同期の場合)。
(エラーメッセージ:System.CalloutException: Callout from triggers
are currently not supported”)
解決:Javascriptを実行するカスタムボタンを作成、Apex
WebServiceからAWSのAPIをたたいて実ファイルを削除。
その後S3オブジェクトのレコードを削除。
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
ファイル削除関連
15
・もっとSalesforceっぽくゴミ箱を有効活用したい。
↓
1. S3オブジェクトの削除をキーにゴミ箱オブジェクト(カスタムオブ
ジェクト)にクローンを作成。
2. ゴミ箱オブジェクトをAPEXスケジュールで削除(&実ファイル
削除)
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
セキュリティについて
16
S3の仕様について
・S3のACLはPrivate,PublicRead,FullControll等の設定できる
・署名付き期限付きURLは、生成に使用したアクセスキーのセキュ
リティ権限が適用される。(IAMで設定)
・署名付き期限付きURLの構成は、
【https://ファイルパス? AWSAccessKeyId=アクセスキー& Expires=有効期限(ミリ
秒)& Signature=暗号化キー】
となる。
IAMについて
・IAMとはAWSの1組織に対してユーザー、グループを作成し、管
理するサービス。
・IAMで設定できるもの(S3)
特定バケットへのアクセス権限、IPアドレス制限等
・5000ユーザまで設定可能
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
セキュリティについて
17
こんな時は?
他のユーザーには非公開にしたい。
• Salesforceオブジェクトの公開設定で制限をかければOK
また、各ユーザごとのIAMアカウントを発行し、そのアカウントを
使ってS3へアクセスすることも可能
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
セキュリティについて
18
こんな時は?
アクセスキーはURLに直接書かれているけど大丈夫?
• シークレットキーが漏えいしない限りほぼ大丈夫です。
キーはSalesforceのオブジェクトで管理しています。
キーを月次で更新することでより高いセキュリティが保たれます。
組織外ユーザーからは見えない?
• S3のデフォルトアクセス権をPrivateにしているため、署名付き期
限付きURLでないとアクセスができません。(これは組織内ユー
ザーも同様です。)
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
セキュリティについて
19
どこら辺まで強化できる?
• IAMの設定で許可IPアドレスを指定できるので、社外からのア
クセスを遮断することが可能です。
• この場合指定IPアドレス以外から、該当のアクセスキーにて生
成した、署名付き期限付きURLでアクセスしても、アクセスでき
ません。
• なお、IP制限の他に、時刻でも制限可能です。
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
セキュリティについて
20
万が一アクセスキーとシークレットキーが漏れてしまったら
1. IAMユーザーのキーを削除
※本キーでのアクセスは遮断されます
2. 同一IAMユーザーのキーを新規発行
3. Salesforceに新しいキーを登録
※ 作業時間5分
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
監視について
21
S3は専用の形式でアクセスログが発行されます。
アクセス解析ツールのようなものはないので自作する必要があり
ますが、Access等で解析ツールを作れば解析は可能。
出力項目例
• バケット名
• 日時
• ユーザ
• IP
• 対象ファイル
• 処理内容 等
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
有効なケース
22
• 動画ファイルを管理したい。
• とにかく膨大な量のファイルがあり、その一部をSalesforceで使
いたい。
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
こんなことも・・・
23
• S3の画像ファイルを認証キー付URLとIMG関数を使って
Salesforceで表示する。
IMG関数
認証キー付URL
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
まとめ
24
• S3の設定はprivateで設定
• 共有設定等はSalesforceに任せる。
• 実ファイルはS3に配置してコストを削減。
Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.
25

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Amazon SNS+SQSによる Fanoutシナリオの話
Amazon SNS+SQSによる Fanoutシナリオの話Amazon SNS+SQSによる Fanoutシナリオの話
Amazon SNS+SQSによる Fanoutシナリオの話
 
20200526 AWS Black Belt Online Seminar AWS X-Ray
20200526 AWS Black Belt Online Seminar AWS X-Ray20200526 AWS Black Belt Online Seminar AWS X-Ray
20200526 AWS Black Belt Online Seminar AWS X-Ray
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
 
サーバーワークスのAWS構築自動化の仕組み
サーバーワークスのAWS構築自動化の仕組みサーバーワークスのAWS構築自動化の仕組み
サーバーワークスのAWS構築自動化の仕組み
 
20210119 AWS Black Belt Online Seminar AWS CloudTrail
20210119 AWS Black Belt Online Seminar AWS CloudTrail20210119 AWS Black Belt Online Seminar AWS CloudTrail
20210119 AWS Black Belt Online Seminar AWS CloudTrail
 
20180221 AWS Black Belt Online Seminar AWS Lambda@Edge
20180221 AWS Black Belt Online Seminar AWS Lambda@Edge20180221 AWS Black Belt Online Seminar AWS Lambda@Edge
20180221 AWS Black Belt Online Seminar AWS Lambda@Edge
 
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化
 
MuleSoft Anypoint Platformのコンセプトとサービス
MuleSoft Anypoint PlatformのコンセプトとサービスMuleSoft Anypoint Platformのコンセプトとサービス
MuleSoft Anypoint Platformのコンセプトとサービス
 
AWS Black Belt Online Seminar 2018 AWS Well-Architected Framework
AWS Black Belt Online Seminar 2018 AWS Well-Architected FrameworkAWS Black Belt Online Seminar 2018 AWS Well-Architected Framework
AWS Black Belt Online Seminar 2018 AWS Well-Architected Framework
 
Migrating Monoliths to Microservices -- M3
Migrating Monoliths to Microservices -- M3Migrating Monoliths to Microservices -- M3
Migrating Monoliths to Microservices -- M3
 
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
 
AWS Black Belt Online Seminar 2017 AWS WAF
AWS Black Belt Online Seminar 2017 AWS WAFAWS Black Belt Online Seminar 2017 AWS WAF
AWS Black Belt Online Seminar 2017 AWS WAF
 
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
 
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
 
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
20190312 AWS Black Belt Online Seminar AWS Well-Architected Frameworkによるコスト最適化
 
CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現
CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現
CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現
 
AWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoTAWS Black Belt Online Seminar 2016 AWS IoT
AWS Black Belt Online Seminar 2016 AWS IoT
 
ZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native JourneyZOZOTOWNのCloud Native Journey
ZOZOTOWNのCloud Native Journey
 

Similar a 01 awsとsalesforceを使ったエコシステム ファイル編

Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例
Yuuki Namikawa
 
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
Yasuhiro Horiuchi
 

Similar a 01 awsとsalesforceを使ったエコシステム ファイル編 (20)

AWSを用いたWebホスティング
AWSを用いたWebホスティングAWSを用いたWebホスティング
AWSを用いたWebホスティング
 
20130326 aws meister-reloaded-windows
20130326 aws meister-reloaded-windows20130326 aws meister-reloaded-windows
20130326 aws meister-reloaded-windows
 
AWS Nightschool20180618
AWS Nightschool20180618AWS Nightschool20180618
AWS Nightschool20180618
 
S3 -ほぼ週刊AWSマイスターシリーズ第2回-
S3 -ほぼ週刊AWSマイスターシリーズ第2回-S3 -ほぼ週刊AWSマイスターシリーズ第2回-
S3 -ほぼ週刊AWSマイスターシリーズ第2回-
 
Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例Amazon EC2を使った実践SaaS運用事例
Amazon EC2を使った実践SaaS運用事例
 
Cloud on the_beach_aws入門_公開
Cloud on the_beach_aws入門_公開Cloud on the_beach_aws入門_公開
Cloud on the_beach_aws入門_公開
 
20191125 Container Security
20191125 Container Security20191125 Container Security
20191125 Container Security
 
AWSを用いた耐障害性の高いアプリケーションの設計
AWSを用いた耐障害性の高いアプリケーションの設計AWSを用いた耐障害性の高いアプリケーションの設計
AWSを用いた耐障害性の高いアプリケーションの設計
 
2013/08 JAWS_UG北九州 AWSを使った儲け方
2013/08 JAWS_UG北九州 AWSを使った儲け方2013/08 JAWS_UG北九州 AWSを使った儲け方
2013/08 JAWS_UG北九州 AWSを使った儲け方
 
20180704 AWS Black Belt Online Seminar Amazon Elastic File System (Amazon EFS...
20180704 AWS Black Belt Online Seminar Amazon Elastic File System (Amazon EFS...20180704 AWS Black Belt Online Seminar Amazon Elastic File System (Amazon EFS...
20180704 AWS Black Belt Online Seminar Amazon Elastic File System (Amazon EFS...
 
仮想サーバーEC2 & EBS詳細 -ほぼ週刊AWSマイスターシリーズ "Reloaded"-
仮想サーバーEC2 & EBS詳細 -ほぼ週刊AWSマイスターシリーズ "Reloaded"- 仮想サーバーEC2 & EBS詳細 -ほぼ週刊AWSマイスターシリーズ "Reloaded"-
仮想サーバーEC2 & EBS詳細 -ほぼ週刊AWSマイスターシリーズ "Reloaded"-
 
20180704(20190520 Renewed) AWS Black Belt Online Seminar Amazon Elastic File ...
20180704(20190520 Renewed) AWS Black Belt Online Seminar Amazon Elastic File ...20180704(20190520 Renewed) AWS Black Belt Online Seminar Amazon Elastic File ...
20180704(20190520 Renewed) AWS Black Belt Online Seminar Amazon Elastic File ...
 
20120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s320120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s3
 
20120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s320120319 aws meister-reloaded-s3
20120319 aws meister-reloaded-s3
 
AWS 資格試験対策講座
AWS 資格試験対策講座AWS 資格試験対策講座
AWS 資格試験対策講座
 
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
 
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
 
【IVS CTO Night & Day】AWS Cloud Security
【IVS CTO Night & Day】AWS Cloud Security【IVS CTO Night & Day】AWS Cloud Security
【IVS CTO Night & Day】AWS Cloud Security
 
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
 
20120303 jaws summit-meister-03_s3
20120303 jaws summit-meister-03_s320120303 jaws summit-meister-03_s3
20120303 jaws summit-meister-03_s3
 

Más de TerraSky

12 power night2014 miyanishi
12 power night2014 miyanishi12 power night2014 miyanishi
12 power night2014 miyanishi
TerraSky
 
11 power nignt_furuta
11 power nignt_furuta11 power nignt_furuta
11 power nignt_furuta
TerraSky
 
10 power night2014_uematsu
10 power night2014_uematsu10 power night2014_uematsu
10 power night2014_uematsu
TerraSky
 
9 power night2014_iwai
9 power night2014_iwai9 power night2014_iwai
9 power night2014_iwai
TerraSky
 
8 power night2014_nakamura
8 power night2014_nakamura8 power night2014_nakamura
8 power night2014_nakamura
TerraSky
 
7 power night2014_kanbayashi
7 power night2014_kanbayashi7 power night2014_kanbayashi
7 power night2014_kanbayashi
TerraSky
 
6 power night2014_sasaki
6 power night2014_sasaki6 power night2014_sasaki
6 power night2014_sasaki
TerraSky
 
5 power night2014_totsuka
5 power night2014_totsuka5 power night2014_totsuka
5 power night2014_totsuka
TerraSky
 
4 power night2014_yoshikawa
4 power night2014_yoshikawa4 power night2014_yoshikawa
4 power night2014_yoshikawa
TerraSky
 
3 power nignt2014_yamamoto
3 power nignt2014_yamamoto3 power nignt2014_yamamoto
3 power nignt2014_yamamoto
TerraSky
 
2 power night2014_erp
2 power night2014_erp2 power night2014_erp
2 power night2014_erp
TerraSky
 
1 power night2014_imaoka
1 power night2014_imaoka1 power night2014_imaoka
1 power night2014_imaoka
TerraSky
 
13 power nignt2014_yanase
13 power nignt2014_yanase13 power nignt2014_yanase
13 power nignt2014_yanase
TerraSky
 

Más de TerraSky (20)

TerraSky PowerNight - Salesforce is ready for ERP -
TerraSky PowerNight - Salesforce is ready for ERP -TerraSky PowerNight - Salesforce is ready for ERP -
TerraSky PowerNight - Salesforce is ready for ERP -
 
TerraSky PowerNight myEinstein
TerraSky PowerNight  myEinsteinTerraSky PowerNight  myEinstein
TerraSky PowerNight myEinstein
 
TerraSky PowerNight Soql performance explained
TerraSky PowerNight  Soql performance explainedTerraSky PowerNight  Soql performance explained
TerraSky PowerNight Soql performance explained
 
セールスフォース的開発メソッドのススメ 須山洋輔
セールスフォース的開発メソッドのススメ 須山洋輔セールスフォース的開発メソッドのススメ 須山洋輔
セールスフォース的開発メソッドのススメ 須山洋輔
 
Xivelyで楽々IoT 岩井哲郎
Xivelyで楽々IoT 岩井哲郎Xivelyで楽々IoT 岩井哲郎
Xivelyで楽々IoT 岩井哲郎
 
これだけは押さえておきたいDreamforceを楽しむための英語力 下川原章仁
これだけは押さえておきたいDreamforceを楽しむための英語力 下川原章仁これだけは押さえておきたいDreamforceを楽しむための英語力 下川原章仁
これだけは押さえておきたいDreamforceを楽しむための英語力 下川原章仁
 
Dreamforce2016から読み解く、これからのit 大友幹
Dreamforce2016から読み解く、これからのit 大友幹Dreamforce2016から読み解く、これからのit 大友幹
Dreamforce2016から読み解く、これからのit 大友幹
 
12 power night2014 miyanishi
12 power night2014 miyanishi12 power night2014 miyanishi
12 power night2014 miyanishi
 
11 power nignt_furuta
11 power nignt_furuta11 power nignt_furuta
11 power nignt_furuta
 
10 power night2014_uematsu
10 power night2014_uematsu10 power night2014_uematsu
10 power night2014_uematsu
 
9 power night2014_iwai
9 power night2014_iwai9 power night2014_iwai
9 power night2014_iwai
 
8 power night2014_nakamura
8 power night2014_nakamura8 power night2014_nakamura
8 power night2014_nakamura
 
7 power night2014_kanbayashi
7 power night2014_kanbayashi7 power night2014_kanbayashi
7 power night2014_kanbayashi
 
6 power night2014_sasaki
6 power night2014_sasaki6 power night2014_sasaki
6 power night2014_sasaki
 
5 power night2014_totsuka
5 power night2014_totsuka5 power night2014_totsuka
5 power night2014_totsuka
 
4 power night2014_yoshikawa
4 power night2014_yoshikawa4 power night2014_yoshikawa
4 power night2014_yoshikawa
 
3 power nignt2014_yamamoto
3 power nignt2014_yamamoto3 power nignt2014_yamamoto
3 power nignt2014_yamamoto
 
2 power night2014_erp
2 power night2014_erp2 power night2014_erp
2 power night2014_erp
 
1 power night2014_imaoka
1 power night2014_imaoka1 power night2014_imaoka
1 power night2014_imaoka
 
13 power nignt2014_yanase
13 power nignt2014_yanase13 power nignt2014_yanase
13 power nignt2014_yanase
 

Último

Último (12)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 

01 awsとsalesforceを使ったエコシステム ファイル編

  • 1. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. AWSとSalesforceをつかったエコシステム ファイル編 吉澤
  • 2. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. Amazon S3って何? 2 Amazon Simple Storage Serviceの略で、AWSが提供しているスト レージサービスの事。 特徴 ・高い堅牢性:データ消失確率が0.000000001% ・高い可用性:99.99% ・安い:1GBあたり$0.3(約3円) ・APIがよい ・細かなセキュリティ設定も可能
  • 3. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. Force.com for Amazon WebServices 3 URL:http://wiki.developerforce.com/page/Amazon_Toolkit Force.com上からAWS(EC2,S3)を操作するパッケージ
  • 4. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. Force.com for Amazon WebServices 4 AWSアクセスキーの設定 S3 AWS Credentialオブジェクトに登録 このCredentialNameを 各Cls内に設定し、認 証に使用します。
  • 5. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 東京リージョン対応 5 東京リージョンのS3を扱うため、いくつかの設定が必要になります。 1. S3.clsのエンドポイントを書き換え public String endpoint_x = 'https://s3-ap-northeast-1.amazonaws.com/soap'; 2. 上記サイトをリモートサイトに登録
  • 6. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. システム構成イメージ 6 S3オブジェクト (バケット、ファイル情報) 実ファイルブラウザ
  • 7. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 登録時の困ったこと 7 トラブル1:100KB以上のファイルがアップロードできない ※SalesforceのWebサービスAPIの制限 解決:ブラウザから直接S3へアップロードを行う S3Bucket ①ページ表示時に必要 な情報をAPEXで生成し、 格納 ②直接アップロード
  • 8. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 登録時の困ったこと 8 トラブル2:ファイル名が重複した場合、上書きされてしまう・・・ 解決:SalesforceId/ファイル名で一意にした
  • 9. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 登録時の困ったこと 9 ブラウザによってファイル名入力フィールドで入力される値が異な る Firefox:ファイル名 Chrome:c:¥fakepath¥ファイル名 解決:Javascriptで解決
  • 10. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 最終的な登録イメージ 10 S3オブジェクト (バケット、ファイル情報) 実ファイル ⑤レコード作成更新(ファイル 名等) ④結果ページ表示
  • 11. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. ダウンロード時イメージ 11 S3オブジェクト (バケット、ファイル情報) 実ファイル ①ダウンロードボタン押下 ②APEX内部で期限付き、認証キー 付URLを発行し、WindowOpen ※期限は1時間 AWS認証情報オブジェクト (アクセスキー、シークレット キー)
  • 12. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. ダウンロード時で困ったこと 12 日本語ファイルの場合、正しい期限付き認証キー付URLが発行で きなかった。 ・キー発行時にファイル名をパラメータに使用しているが、エンコー ドされていないとNGという事が判明 →キー発行前にエンコードし解決。
  • 13. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 削除イメージ 13 S3オブジェクト (バケット、ファイル情報) 実ファイル ①削除ボタン押下 ②JSよりAPEX WebService呼出 AWS認証情報オブジェクト (アクセスキー、シークレット キー) ③AWS API Callout ④削除実行 ⑤S3オブジェクトのレコード削除 ⑥画面表示
  • 14. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. S3ファイル削除で困ったこと 14 ファイル削除をトリガーにAWSのAPIをCalloutできる? 外部WebService呼出はトリガーからはNG(同期の場合)。 (エラーメッセージ:System.CalloutException: Callout from triggers are currently not supported”) 解決:Javascriptを実行するカスタムボタンを作成、Apex WebServiceからAWSのAPIをたたいて実ファイルを削除。 その後S3オブジェクトのレコードを削除。
  • 15. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. ファイル削除関連 15 ・もっとSalesforceっぽくゴミ箱を有効活用したい。 ↓ 1. S3オブジェクトの削除をキーにゴミ箱オブジェクト(カスタムオブ ジェクト)にクローンを作成。 2. ゴミ箱オブジェクトをAPEXスケジュールで削除(&実ファイル 削除)
  • 16. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. セキュリティについて 16 S3の仕様について ・S3のACLはPrivate,PublicRead,FullControll等の設定できる ・署名付き期限付きURLは、生成に使用したアクセスキーのセキュ リティ権限が適用される。(IAMで設定) ・署名付き期限付きURLの構成は、 【https://ファイルパス? AWSAccessKeyId=アクセスキー& Expires=有効期限(ミリ 秒)& Signature=暗号化キー】 となる。 IAMについて ・IAMとはAWSの1組織に対してユーザー、グループを作成し、管 理するサービス。 ・IAMで設定できるもの(S3) 特定バケットへのアクセス権限、IPアドレス制限等 ・5000ユーザまで設定可能
  • 17. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. セキュリティについて 17 こんな時は? 他のユーザーには非公開にしたい。 • Salesforceオブジェクトの公開設定で制限をかければOK また、各ユーザごとのIAMアカウントを発行し、そのアカウントを 使ってS3へアクセスすることも可能
  • 18. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. セキュリティについて 18 こんな時は? アクセスキーはURLに直接書かれているけど大丈夫? • シークレットキーが漏えいしない限りほぼ大丈夫です。 キーはSalesforceのオブジェクトで管理しています。 キーを月次で更新することでより高いセキュリティが保たれます。 組織外ユーザーからは見えない? • S3のデフォルトアクセス権をPrivateにしているため、署名付き期 限付きURLでないとアクセスができません。(これは組織内ユー ザーも同様です。)
  • 19. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. セキュリティについて 19 どこら辺まで強化できる? • IAMの設定で許可IPアドレスを指定できるので、社外からのア クセスを遮断することが可能です。 • この場合指定IPアドレス以外から、該当のアクセスキーにて生 成した、署名付き期限付きURLでアクセスしても、アクセスでき ません。 • なお、IP制限の他に、時刻でも制限可能です。
  • 20. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. セキュリティについて 20 万が一アクセスキーとシークレットキーが漏れてしまったら 1. IAMユーザーのキーを削除 ※本キーでのアクセスは遮断されます 2. 同一IAMユーザーのキーを新規発行 3. Salesforceに新しいキーを登録 ※ 作業時間5分
  • 21. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 監視について 21 S3は専用の形式でアクセスログが発行されます。 アクセス解析ツールのようなものはないので自作する必要があり ますが、Access等で解析ツールを作れば解析は可能。 出力項目例 • バケット名 • 日時 • ユーザ • IP • 対象ファイル • 処理内容 等
  • 22. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 有効なケース 22 • 動画ファイルを管理したい。 • とにかく膨大な量のファイルがあり、その一部をSalesforceで使 いたい。
  • 23. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. こんなことも・・・ 23 • S3の画像ファイルを認証キー付URLとIMG関数を使って Salesforceで表示する。 IMG関数 認証キー付URL
  • 24. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. まとめ 24 • S3の設定はprivateで設定 • 共有設定等はSalesforceに任せる。 • 実ファイルはS3に配置してコストを削減。
  • 25. Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved.Copyright © 2014 TerraSky Co.,Ltd. All Rights Reserved. 25