应用许可证(4)为客户而存在

学习目标

完成本单元后,您将能够:

  • 描述用户登录及其好处。
  • 列出适用于Subscriber Login的限制。
  • 解释交互式调试和你可以使用它的地方。

进入并帮助

客户支持是软件业务的一部分。无论您是否构建了全球所见过的最好的应用程序都无所谓 – 您的客户不时需要帮助。

有时修复很容易。客户通过电子邮件,电话或服务云与您联系,并为您提供足够的信息来解决问题或帮助他们完成任务。

其他时候,这个问题更加微妙,它有助于确切了解客户组织中发生了什么。但是如何?

您可以向您的客户询问截图或视频。如果您拥有合适的软件并且可以协调您的日程安排,您甚至可以设置屏幕共享会话。但是这些方法需要来自客户的时间和精力,而且他们不会让您直接导航客户组织来探索问题。

下一个最好的事情在那里

如果您可以登录到客户的组织,找出问题并直接解决问题,那将更容易。你可以!要求您的客户授予您登录访问权限。它允许您在一段时间内以特定用户的身份登录到组织,客户可以控制该时间段。无需向客户询问用户名和密码,这是一个很大的安全禁忌。

因为您以特定用户身份登录,所以授予登录访问权有时称为LoginAs。

请求登录访问

要请求登录访问:

  1. 请求您的客户导航到他们的个人设置。
  2. 告诉他们点击 Grant Login Access.
  3. 让客户指定访问持续时间,这应该足以让您排除故障并解决问题。
  4. 点击 Save.
    The Grant Account Login Access Page, where your customer grants you access to their org
  5. 如果您的客户没有看到您的公司名称,请确保:
    • 他们的系统管理员为非管理员授予登录访问权限。
    • 客户拥有应用程序包的许可证。
    • 如果软件包已授权给整个组织,具有“管理用户”权限的管理员授予您访问权限。
    • 在组织的设置中,管理员可以以任何用户身份登录被禁用。
  6. 检查您的客户是否具有登录订户组织权限。您的客户可以直接向您的客户授予您此权限,也可以通过权限设置授予您此权限。

当您的客户成功授予您登录权限时,您就可以登录其组织:

  1. 导航到许可证管理应用程序(LMA)中的 Subscribers LMA将客户称为订户。
  2. 按名称或组织ID搜索客户的组织。
    The Subscribers Tab in the LMA, which lists orgs for subscribers
  3. 在搜索结果中点击所需的组织记录。订户组织记录页面显示组织的公司信息页面,组织标识及其实例的名称和联系信息。该页面还包含有关组织的限制,登录访问以及软件包和许可的信息。联系信息可能与您对应的LMA销售线索,客户或联系记录中的信息有点不同。
  4. 单击 Log Into Subscriber Console 以连接到组织。
    The org record in the LMA, where you click Log Into Subscriber Console

如果您没有看到 Log Into Subscriber Console 按钮,请将该按钮添加到页面布局。如果您需要对此进行更新,请阅读如何在我们的Lightning Experience Customization模块中自定义记录详细信息和页面布局。

通过限制访问来维持信任

如您所知,信任是Salesforce的重中之重。访问客户的组织意味着可以访问他们的数据,这是组织无法轻松授予的特权。只有可信赖的支持和工程人员才能请求登录访问权限,他们可以高效并谨慎地解决客户组织中的问题。使用“登录订阅者组织”权限来组织您的支持团队,并仅将权限授予需要它的人员。

登录访问如何工作

当您通过登录访问连接到订户组织时,您会得到一些非常酷的工具,以供客户使用。您可以:

  • 查看您的托管软件包代码。而此代码对最终用户是隐藏的。
  • 检查您的应用程序的调试日志。通过这些日志和可见的源代码,您可以构建客户组织中正在发生的事情的图片。
  • 使用ISV客户调试器在运行时检查和调试托管软件包代码。
你可以做什么 通过登录访问 作为客户
登录到用户组织 X X
查看托管软件包代码 X
查看托管软件包调试日志 X
查看和编辑自定义设置中的受保护数据 X
启动一个ISV客户调试器会话 X
授予OAuth访问权限 X
使用双因素认证 X X

调试日志包含可帮助您排除客户问题的调试信息。 要查看用户组织中的调试日志,请执行以下操作:

  1. 从安装程序中,在快速查找框中输入调试日志。
  2. 选择 Debug Logs.
  3. 在列表视图中查看调试日志。

日志和源代码非常好,它们可以满足客户的需求并将它们发送出去。但是如果你需要深入挖掘,我们已经涵盖了你。

在您的调用堆栈中查找针

让我们面对它 – 有时您需要观察应用程序中发生的情况以了解问题。这是调试器的用途。如果您使用调试器来查找代码中的错误,那么您知道它们是多么的方便。我们已经为您提供了一个用于调试订户组织的工具。

如果您之前没有使用过调试器,那么您需要一种享受:您可以在程序运行时正确检查数据!

ISV客户调试器是Eclipse集成开发环境的免费Lightning Platform插件。这是Salesforce Apex调试器的一种变体。

The ISV Customer Debugger, where you can follow the execution of your app’s logic in your customer’s org

这个调试器可以完成您希望调试器执行的所有任务。

也就是说,调试器有一些限制:

  • 一次只能打开一个调试会话,这意味着您一次只能调试一个客户。如果您需要同时进行多个调试会话,请联系您的合作伙伴客户经理以获取选项。
  • 调试器只能连接到沙箱组织。换句话说,你不能交互式地调试生产组织。如果客户识别生产组织中的问题,请创建沙盒组织并填写数据以重现错误。完整的沙箱提供您可以进入生产环境的最接近的体验。
  • 一次最多可以调试两个执行线程。
  • 一小时不活动后,调试会话超时。
  • 调试会话可以持续不超过4小时,而不管活动。

开始一个调试会话

要开始调试会话,请按照下列步骤操作:

  1. 按照上述步骤,让客户授予登录访问权限。
  2. 从安装程序中,在快速查找框中输入沙箱。
  3. 点击沙盒旁边的 Login ,以便正确调试问题。
  4. 如果您需要创建新的沙箱,请查看我们的更改管理模块以进行更新。
  5. 进入沙盒设置后,在快速查找框中输入Apex Debugger。
  6. 单击 Start Partner Debugging Session.
  7. 将图标拖到Force.com IDE窗口中以启动会话。
  8. 开始调试!

建立客户满意度的声誉

正确管理您的许可证并满足客户的需求,并且您可以发展业务并确认您在AppExchange上的声誉。花在扑灭火灾和追踪错误上的时间越少,您就越需要添加新功能并在新的方向上工作。

应用许可证(3)管理您的功能

学习目标

完成本单元后,您将能够:

  • 定义特征参数并描述其目的。
  • 确定您用于管理功能参数的工具。
  • 解释为什么特征参数数据类型有限。

灵活管理功能

作为Salesforce的合作伙伴,您可以使用与Salesforce一样的平台,以及所有的fixin。这包括经营自己的业务组织,并在AppExchange上销售您的解决方案 – 但不止于此。实际上,您可以像Salesforce一样运行您的业务,使用我们所做的相同工具将货物交付给客户。

您可能已经注意到,Salesforce对我们在我们平台上发布的功能拥有很多控制权。例如,我们可以选择性地为高级用户启用精巧的功能,而不会影响其他人。我们还可以对功能进行“黑暗启动”,为将来的版本实施并将其停用。

这些工具为我们部署和管理功能提供了很大的灵活性。现在,使用功能参数,您可以获得相同的灵活性。

我们仅向AppExchange合作伙伴提供功能参数。当您准备好尝试时,请在Salesforce合作伙伴社区中打开支持案例。

早些时候

并不总是如此。在功能参数出现之前,许多合作伙伴都制定了自己的方案,以便在托管软件包中选择性启用功能。通常情况下,他们使用受保护的自定义设置来启用和禁用功能。

它的工作原理如下:使用LMA登录访问功能(我们将在下一单元中介绍)登录到单个客户组织,并更新受保护的自定义设置以启用特定功能。这个系统复杂而脆弱。我们的AppExchange合作伙伴梦想有一天他们可以像使用许可证管理应用程序(LMA)一样管理许可证,轻松管理各项功能。

那一天来了。现在,功能参数允许您从安装LMA的相同组织管理应用的功能。对于个人用户,您可以选择哪些功能可见,并将您的选择立即传达给客户的用户组织。

而且因为你已经耐心等待特征参数,所以我们已经投入了一些额外的东西。除个别功能外,功能参数还可以管理自定义对象。根据您定义的特征参数,您可以隐藏或显示自定义对象。

传递数据,请

通过功能管理应用程序(FMA)管理每个客户的功能参数。 FMA扩展了LMA,使您可以像LMA管理许可证一样管理您的功能设置。

您的许可证管理组织(LMO)和您的客户订户组织使用功能参数相互通信。每个特征参数的值都在两个方向中的一个方向上传输:

  • 从您的LMO到订户的组织
  • 从订户的组织到您的LMO

您的FMA将特征参数值从一个组织传递给另一个组织。您可以使用FMA查看和修改与每个客户相关的功能参数。

功能参数的外观如何?实际上这很简单。特征参数由标识参数的名称,值和数据流方向组成。该值可以是以下任何一种类型:

  • Boolean
  • 整数
  • 日期

数据流向是LMO到订户或订户到LMO。换句话说,每个特征参数都知道它在哪里以及它在哪里。要素参数中的数据会被写入组织所在的组织中 – 接收组织的组织只能读取其值。这保证了特征参数的信息仅在一个方向上流动。

通过它们自身,特征参数非常有限 – 不允许字符串值 – 这是故意的。由于这些参数在客户组织之间传递,我们不希望他们包含任何个人身份信息。

简单的功能参数的另一个好处是它们可以存储其他类型的数据,例如使用量或激活度量。当然,您必须编写一些代码来收集指标,但在此之后,其余部分很容易。 FMA从您的用户单位自动收集指标。还有一件事你不必担心。

灵活管理功能

这里看看涉及的组织和他们交换的数据。

A diagram showing how feature parameters are passed between the LMO, subscriber orgs, and your packaging org using the FMA
  • 您可以在包装组织中定义特征参数。
  • 客户从AppExchange安装您的软件包。
  • 在订户组织中的软件包安装过程中,在LMO中会为您定义的每个功能参数(除非这样的记录已经存在)出现记录并由FMA管理。
  • 联合对象记录也出现在改性活生物体中。此联结对象将特征参数与用户组织的许可证关联。什么是联结对象?基本上,它是一个具有两种主从关系的自定义对象:一个用于特征参数,另一个用于许可证。联合对象存储特征参数的值,因为它存在于订阅者组织中。创建联结对象时,其特征参数采用由包装组织指定的默认值。
  • 改变从改性活生物体到订户单位的数据流。同时,改性活生物体从订户组织收集指标。

有关功能参数如何工作的更详细说明,请查看ISVforce指南。

定义一个特征参数

  1. 导航到您的软件包并选择功能参数选项卡。
  2. 选择您想要添加的参数的类型。
    The Feature Parameters tab of the Package Manager, where you define a feature parameter
  3. 输入新功能参数的信息:其名称,标识它的标签及其流向(LMO至订户或订户到LMO)。
    The Feature Parameters tab of the Package Manager, where you define a feature parameter
  4. 就像您为应用定义的任何其他自定义元数据一样,将参数添加到您的包中。

将数据从您的LMO移动到订户

从LMO转移到订户的特征参数只能在订户组织中的LMO中创建或修改 – 它们是只读的。例如,您可以使用LMO到订户的功能参数来:

  • 隐藏或揭示新功能
  • 控制您的订户可以使用的资源
  • 使功能在有限的试用期内可用

天空是极限。

将值分配给LMO到订户的特征参数:

  1. 在您的LMO中,打开许可证管理应用程序(LMA)。
  2. 选择要查看或修改其功能参数的客户的许可证。
    A license record window, where you view and modify feature parameters
  3. 单击要更改的参数旁边的向下箭头以编辑或删除它。

从订户收集指标

使用订户到LMO功能参数来跟踪订户组织中的活动。这些功能参数的值源于订户的一端,然后前往您的LMO。要收集这些值:

  1. 在您的LMO中,打开LMA。
  2. 选择要检查其值的功能参数的许可证。
    A license record window, where you can view feature parameter values
  3. 您可以在特征参数值字段中找到任何订户到LMO特征参数的值。

借助功能参数,您可以通过更多方式塑造客户的体验,并且可以更仔细地管理新功能的发布。但是LMA并不止于此。请继续阅读,了解如何使用支持控制台让您的客户满意。

应用许可证(2)管理许可证

学习目标

完成本单元后,您将能够:

  • 定义许可证管理应用程序及其目的。
  • 解释如何设置许可证管理应用程序。
  • 确定许可证管理应用程序的主要功能。

符合许可证管理应用程序

你已经创建了你的惊人的应用程序,并且你已经学习了许可的基础知识。也许你甚至已经决定使用什么样的许可证。现在是时候进行设置,以便您可以在AppExchange上销售应用并跟踪下载。

这就是许可证管理应用程序(LMA)的来源.LMA保留安装和许可证的记录,并提供帮助您支持客户的基本工具。 Salesforce将其作为通常驻留在业务组织中的托管软件包进行分发。

当您配置LMA时,记录许可证很简单。每当潜在客户安装您的应用程序时,LMA会在安装它的组织中创建两条记录:

  1. 确定潜在客户的潜在客户记录
  2. 根据您的应用的许可条款,该潜在客户的许可记录

LMA还提供支持控制台,帮助您与客户取得联系,帮助他们解决问题。控制台允许您查找安装应用程序的组织。它甚至可以让您登录到客户组织并调试问题,前提是客户已授予您访问权限。我们在下一个单元中更详细地讨论客户支持。

听起来很棒,不是吗?那么,你如何获得这款美妙的应用程序?只需在Salesforce合作伙伴社区记录一个案例,即可请求访问LMA。确保你签署了合作伙伴协议,然后再执行此操作。

如果您经历了作为合作伙伴注册的正常流程并获得了合作伙伴业务组织(PBO),LMA将已安装。您可以通过单击应用程序启动器App Launcher并在应用程序启动器中查找来验证是否安装了LMA。

App Launcher showing LMA

请求访问LMA

  1. 从Salesforce合作伙伴社区中选择 Support.
  2. 点击 New Case.
  3. 在AppExchange Partner(ISV)Technology下,选择 License Management Application (LMA).
  4. 子主题和说明字段预填充。填写主题。在说明字段中,提供您的业务组织的ID并提及您签署的合作伙伴合同。
    提交案件以获得LMA

    Submission of case to get LMA
  5. 点击 Submit Case.

合作伙伴运营团队会审核您的案例并通过电子邮件向您发送安装链接

安装LMA

  1. 登录到您的企业组织。通常,这是Salesforce在成为合作伙伴时为您创建的组织,通常包含您的Environment Hub。
    点击您从合作伙伴运营团队收到的电子邮件中的LMA安装链接。选择业务组织中需要访问LMA的用户。
  2. 确认LMA已安装。点击应用启动器,然后在应用启动器中查找它。

    App Launcher showing LMA

为您的应用程序设置和配置LMA

现在您已将LMA安装到您的业务组织中,您可以将其连接到您的应用程序。在你做这件事之前:

  • 您必须有权访问发布控制台。为此,您需要管理列表权限。请查看如何在我们的Salesforce合作伙伴社区模块中申请此权限。
  • 您的包装组织必须连接到发布控制台。有关连接包装组织的进一步信息,请参阅ISVforce指南。

将您的应用程序连接到LMA

  1. 从Salesforce合作伙伴社区中,选择 Publishing.
  2. 选择 Packages 以查看包装组织中的软件包。
  3. 找到您的应用程序包并在其条目旁边选择 Manage License
  4. 选择 Register 并登录到包含您的LMA的组织(通常是您的业务组织)。
  5. 选择默认使用此应用程序的许可证,然后单击 Save.

将应用程序包连接到LMA后,不需要再次执行此操作 – 稍后版本的包会自动连接到LMA。

配置LMA

像任何应用程序一样,LMA具有多种可配置设置,包括角色分配和访问权限。潜在客户和许可证为您提供关于您的收入来源的重要信息,因此值得花些时间了解这些设置。

设置对象权限

许可证 组织中的大多数用户不需要任何权限。 查看许可证的用户需要读取权限。 修改许可证记录的用户需要读取和编辑权限。
只有分配牵头经理的用户需要编辑权限。 其他用户具有读取权限或无权限。
软件包版本 所有用户都具有读取权限或无权限,因为他们不需要创建,修改或删除这些记录。

在配置文件或权限集中设置字段级安全性

许可证 您的设置取决于您希望如何管理组织中不同用户的这些字段。
使所有字段为只读。
软件包版本 使所有字段为只读。

有关配置LMA的详细信息,请查看ISVforce指南。

了解LMA自定义对象

LMA安装并维护多个自定义对象。

自定义对象 它能做什么 它如何使用
代表AppExchange上的托管软件包(用于应用程序或Lightning组件) 将客户与特定应用程序和组件关联
软件包版本 代表特定软件包的版本号 告诉您哪些客户正在使用您的应用的哪个版本
许可证 强制执行应用程序和组件的许可限制 允许您管理特定客户组织内的应用程序或组件许可证

修改您的许可证

您已经使用您的应用程序设置了LMA,并且客户正在安装它。大!如果您的应用程序足够大,则必须在以下情况下对许可证进行调整:

  • 使用免费试用版的客户需要切换到完整版本的应用程序。
  • 支付客户需要更多的许可证席位,以便他们的所有员工都能从您的工作中受益。

幸运的是,进行这些更改很容易。

修改许可证

  1. 从您的企业组织中,点击应用启动器。 App Launcher.
  2. 选择 License Management App.
  3. 在LMA中,导航到 Licenses.
  4. 选择要修改的客户许可证记录,然后单击 Modify License. 不要点击编辑 – 这是不同的。如果您没有看到 Modify License 请将其添加到页面布局中。
  5. 现在通过更改相应字段中的值来修改许可证记录。
    The License record, where you modify the terms of a customer’s license

以下是您可以在许可证记录中修改的字段的简要说明:

字段 描述
到期 这是您的应用到期的日期。在此字段中的日期之后,客户不再可以使用您的应用程序。如果您不希望许可证过期,请选择不过期。
席位 该字段定义许可席位的数量,或可以使用应用程序的客户组织中的用户数量。您可以分配多达99,000,000个座位,并且客户的管理员将这些座位分配给用户。或者,选择“站点许可”以允许客户组织中的所有用户使用您的应用。
状态 该字段控制客户是否可以访问您的应用程序。从选取列表中选择一个值:

Trial
允许客户试用您的产品长达90天。如果您将试用许可证转换为活动许可证,则无法将其更改回试用版。
Active
允许客户根据许可协议使用您的产品。
Suspended
禁止客户访问您的产品。

当客户卸载您的应用时,“状态”字段将设置为“卸载”,并且无法修改许可证。

跟踪安装获得幻想

由于LMA是构建在Salesforce平台上的托管软件包,因此它具有您期望的所有功能和灵活性。使用一点点的手肘润滑脂,您可以根据自己的需求进行定制。例如,您可以:

  • 在设置LMA之前,或者在不同组织中安装LMA之前,为安装了您的应用的客户同步许可证和潜在客户记录。
  • 创建控制Lead记录创建方式的Apex触发器,并在许可证过期或应用程序安装或卸载时通知您的团队成员。看看我们的最佳实践清单,以便记住这些事情。

例如,您可以在客户卸载您的应用程序时通知您的销售团队,或者在客户的许可证即将到期时通知您的销售代表。这有助于您与客户保持联系,并防止许可中断他们的工作 – 或与他们的关系。

简而言之,这就是授权。此时,您知道为什么我们按照我们的方式命名了许可证管理应用程序。但正如我们所提到的,LMA可以以其他方式帮助您。在下一个单元中,我们将介绍一些新工具,让您决定如何为您的应用发布新功能。