Lightning Component公開への道 ~「Multi-View Calendar」開発で分かったこと~

21
Lightning Component 公開 への Multi - View Calendar 」開発で分かったこと~ Salesforce DUG Meetup #9 2015/06/30 株式会社テラスカイ 吉田

Transcript of Lightning Component公開への道 ~「Multi-View Calendar」開発で分かったこと~

Page 1: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

Lightning Component 公開への道~「Multi-View Calendar」開発で分かったこと~

Salesforce DUG Meetup #9

2015/06/30

株式会社テラスカイ

吉田寛

Page 2: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

自己紹介

所属:株式会社テラスカイ製品開発部 マネージャー

吉田寛(Hiroshi Yoshita)@xlouder

2 / 21

Page 3: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

3 / 21

うるう秒の準備はできていますか?

http://jjy.nict.go.jp/QandA/data/leapsec-rep2012.html

Page 4: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

4 / 29Chapter 4 - Build Mobile Apps Faster - Dreamforce 2014 Opening Keynote

https://www.youtube.com/watch?v=SUNWau6G6gI

Page 5: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

Salesforce1 Lightningがもたらす次世代プラットフォームの全貌

エコシステムを利用することでより多くのUIが活用可能に

開発者は作成したLightningコンポーネントをAppExchangeマーケットプレイスに公開し、より多くのユーザに配布することができます。現在すでにいくつかのコンポーネントがAppExchange上に掲載されていますが、今後より数多くのコンポーネントが提供される予定です。

このAppExchange上のコンポーネントエコシステムによって、Lightningアプリケーションの部品は増え続け、ユーザは豊富なコンポーネントの中から、好みのコンポーネント選択し、クリックですぐにインストールして利用することができます。

5 / 21

「Salesforce1 Lightningがもたらす次世代プラットフォームの全貌」から抜粋

http://www.salesforce.com/jp/socialenterprise/innovation/salesforce_lightning.jsp

Page 6: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

6 / 21

Lightningコンポーネント掲載数は?

での

Page 7: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

日本のAppExchangeサイト

7 / 21

掲載数: 2(2015/6/28現在)

Page 8: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

グローバルのAppExchangeサイト

8 / 21

掲載数:27(2015/6/28現在)

リリースしました。

Page 9: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

「Multi-View Calendar」Lightning Component

9 / 21

Month View Week View Day View

「無料」です優しい心でお試しください

Page 10: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

セキュリティレビュー をしたことありますか?

10 / 21

Page 11: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

セキュリティレビュープロセス

11 / 21

1. アプリケーション

の準備

• セキュリティチェック

• with sharing、CRUD、FLS

• 一般的なセキュリティ対策

• Force.com以外のシステムは、プ

ラットフォームのセキュリティ

• OWASP(Open Web Application

Security Project)準拠

• ソースコード、アプリケーションス

キャナ

2.レビュー依頼

• ISVパートナー締結?

• AppExchangeサイト設定

• レビュー費用支払

3.公開

•LMA設定

•AppExchangeサイト公開設定

Page 12: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

セキュリティレビュードキュメント

詳細はこれらのドキュメントを参照ください。

Force.com ISVセキュリティレビューhttps://developer.salesforce.com/page/JP:Security_Review

AppExchange/OEMセキュリティレビュー認定 FAQhttps://developer.salesforce.com/page/JP:Security_Review_FAQ

Lightning Securityhttps://developer.salesforce.com/page/Lightning_Security

12 / 21

Page 13: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

13 / 21

どんなことが指摘されるのか?

Page 14: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

AppExchangeパッケージのレビュー(1/2)

• 一般的なWebセキュリティチェック

【共通】• XSS脆弱性

• JavaScript等の不正実行によるセッションハイジャックや情報不正搾取が可能か• CSRF

• リクエストの偽装が可能か• S(O)QLインジェクション

• アプリケーションが想定しないS(O)QLの実行が可能か

【force.com外システム】• ディレクトリ・トラバーサル

• 意図しないディレクトリへのアクセス• WebサーバーでのHttpOnly属性対応可否

• Cookieの設定をJavaScriptから読み込めないことの確認• SSL(TLS)暗号方式

• 暗号方式が古いものの許可確認

14 / 21

Page 15: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

AppExchangeパッケージのレビュー(2/2)

• force.comのセキュリティチェック•共有ルール

• with sharingが設定されているか、FLSが反映されているか

• CRUD• オブジェクト、FLSの権限通りにApexクラス単体で制御されているか。

Visualforceからは呼び出せないようにボタンを非表示にしていてもNG

15 / 21

Page 16: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

Lightningコンポーネントのレビュー

Major Issues① Salesforce1とCSSが大きく異る

16 / 21

修正後修正前

• ボタンの角を丸に• フォントを変更• 色を白ベースに

→ Salesforce1 style guide により近く

http://sfdc-styleguide.herokuapp.com/

• 入力欄を横幅100%に• 文字サイズを大きく

修正前 修正後

Page 17: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

Lightningコンポーネントのレビュー

Some Issues① コンポーネントが複数ある場合の説明が不足している。

② 日付フォーマットがUS表示ではない

③ コンポーネントの名前はフレンドリーにした方が良い

④ 複数コンポーネントは近い配置になるようにネーミングを

⑤ デフォルト以外のコンポーネントアイコンを使いなさい

17 / 21

③, ④, ⑤

Page 18: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

【※注意】

今後チェック内容が変更される可能性があります。

最新情報はSalesforceのドキュメントを参照してください。

特に「Lightning コンポーネント」はこれから作られていくと思います。

18 / 21

Page 19: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

レビューでの注意点

1. セキュリティレビューの期間を長めに設定する• 「20から25営業日程度の日時で完了」とありますが、アプリケーション次第によって長期になる可能性がある

2. レビューの更新時期と開発(パッケージ化)時期を調整する[年次レビュー]

• 新規レビューと同等のチェックが年次で実施される

• 指摘がある場合、一定期間内に反映する必要がある

• 次期バージョン開発中の場合、レビュー指摘内容の反映ができなくなる可能性がある

19 / 21

Page 20: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

20 / 21

頑張っていきましょう…!

Page 21: Lightning Component公開への道  ~「Multi-View Calendar」開発で分かったこと~

Hiroshi Yoshita

@xlouder