はじめてのappexchangeアプリ開発 第2回

Post on 16-Apr-2017

240 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

はじめての AppExchange アプリ開発 – 第 2 回

小西 由通 Yoshimichi Konishi 株式会社セールスフォース・ドットコム

アライアンス本部テクニカルエバンジェリストykonishi@salesforce.com

ソーシャルアカウント

録画ビデオは Youtube 及びWebinar詳細ページにて公開されます ( 参加登録 URL と同じです )

本 Webinar は録画されています

Salesforce Developers Japan

Heroku JP@herokujp

@salesforcedevjp

質問がある場合には ?

質問は最後まで待つ必要はありません ! Question の機能を使って質問をして下さい可能な場合は別のスタッフが質問について解答しますすぐに解答出来ない場合は、後ほどスピーカーが解答します

ライブ Q&A を最後に行います時間の許す限り、 Webinar の最後に Q & A の時間を設けます

開発者フォーラムを活用しましょうよりたくさんの質問がある場合は ?こちらをご利用下さいhttp://developer.salesforce.com/jp/forums

Question 機能で質問をお願いします

本日の話題

第 1 回のおさらい開発環境、開発したコンポーネントの構造、コードの概要

パケージング・ソースコード管理・アップグレード管理パッケージと未管理パッケージの違い、ソースコード管理ツールを使ったコード管理、バージョンアップのための開発の流れ

セキュアなコンポーネントの開発セキュリティリビュー

第 1 回のおさらい

開発環境

3種類の組織 開発組織 – 開発・単体のための組織 テスト組織 – インストールテスト・セキュリティリビューテスト環境用パッケージング組織 – AppExchange 登録用組織

組織の命名ルール複数組織を整理するために命名ルールを定めることをおすすめします。

開発・管理用ツール( MavensMate, GitHub )別組織へのコードのデプロイ、ソースコード管理にはツールを使うと便利です。

開発環境

パッケージ組織

開発組織

テスト組織

MavensMate GitHubyk-lsd

yk-lsp

yk-lst

開発環境

1. Lightning Experience 有効化

2. 私のドメイン設定

3. Lightning Experience のアプリケーションビルダー(パイロット)有効化

開発の流れ

1. コンポーネントの属性・ UI を定義  .cmp 2. コンポーネントのパラメタを定義  .design3. ローカルコントローラー・ヘルパーの定義  .js4. リモートコントローラーの定義  .js5. リモートコントローラーテストの定義  .js

パッケージング

パッケージ組織へのコードのデプロイ MavensMate を使って開発組織のコードをダウンロード。パッケージ組織にデプロイします。

パッケージングパッケージ組織で、管理パッケージを作成します。

テスト環境構築パッケージ組織の管理パッケージを、 URL を使ってインストールしテスト環境を構築します。

パッケージング

ソースコード管理

アップグレード

未管理パッケージ・管理パッケージ

無償

アップグレード不可

著作権保護不可

無償または有償 アップグレード可能 著作権保護可能 ISV パートナー向け機能 - ライセンス管理 - プッシュアップグレード

管理パッケージ未管理パッケージ

ソースコード管理

GitHub を使ったソースコード管理の例MavensMate を使って開発組織からソースコードをダウンロードしましたが、そのコードを GitHub を使って管理します。ローカルのリポジトリ管理、リモートリポジトリの同期には、 GitHub Desktop を使います。

• Mavens Mate の役目: 組織からコードをダウンロード、異なる組織へローカルのコードをデプロイ

• GitHub の役目: ソースコード管理、チーム開発支援

セキュアなコンポーネントの開発

Trustセールスフォースのコアバリューの 1 つが Trust (信頼)です。安全・安心なエンタープライズ・クラウドサービスをお客様へ提供するために、セキュアなコードを開発することはとても重要であると考えています。

セールスフォースのプラットフォームを活用して流通するコンポーネントに対してもセキュリティ上同様な品質が求められます。

AppExchange にコンポーネントを登録するためには、「セキュリティリビュー」という審査を受ける必要があります。

セールスフォースセキュアコーディングガイドラインhttps://developer.salesforce.com/page/JP:Secure_Coding_Guidelineセキュリティ早見表http://developerforcejp.s3.amazonaws.com/developer/cheatsheets/JP_SF_security_cs-2Pg_HR.pdf

セキュアなコンポーネントの開発

教育

デザイン開発

テスト

リリース

アプリケーション開発ライフサイクル

• セキュア・コーディング教育

• デザイン時における、セキュリティの考

• セキュリティテストの自動化

教育

セキュリティ Fix

オブジェクトレベルアクセス権限( CRUD) 、フィールドレベルアクセス権限( FLS)

ユーザーがオブジェクトやフィールドに対して適切な権限をもっているかどうかをチェックする。

- ユーザープロファイルへの参照が可能か、更新が可能かSchema.SObjectType.User.isAccessible()Schema.SObjectType.User.isUpdateable()

- ユーザープロファイルのフィールドへの参照が可能か、更新が可能かSchema.SObjectType.User.Fields.LanguageLocaleKey.isAccessible()Schema.SObjectType.User.Fields.LanguageLocaleKey.isUpdateable()

tyoshikawa1106 のブログ - SFDC : Apex とセキュリティチェックhttp://tyoshikawa1106.hatenablog.com/entry/2015/01/18/002051

thank y u

top related