文件名称:
Patterns and Principles for CRM Online Solution Builders.pdf
开发工具:
文件大小: 724kb
下载次数: 0
上传时间: 2019-05-24
详细说明:Patterns and Principles for CRM Online Solution BuildersMicrosoft cloud for government
门oce365(2
Documents
Email Cal Tasks
Search
Azure
▲ Microsoft Dynamics CRM
Relational cata
Customizations
Microsoft azure
Data warehouse
Elevated Code
Architecturally, Microsoft Azure active directory is a The following sections discuss the areas you ll need
foundational component of a solution built on the
to evaluate when building a solution for microsoft
Microsoft cloud. It provides a single identity for a user Dynamics CRM Online(or converting a solution that
that works across microsoft Dynamics crm online
was originally built for Microsoft DynamiCs CRM on-
Office 365, and custom applications you've built in premises). While it is likely that not every category
Azure. It also provides the capability for a hybrid
will be relevant for every solution, this guidance is
cloud solution and for single sign-on with an on
designed to help you begin thinking about how to
premises Active Directory deployment by offering the design your solution for Microsoft DynamiCs CRM
option to federate with Active Directory on-premises. Online-whether you have an existing on-premises
solution or are starting from scratch
Many robust business systems require things like data
warehousing, interoperability with external systems,
also recommend taking a look at the presentation
and certain advanced coding scenarios. all of these
from microsoft Convergence 2014 Europe titled
things are available to users through azure
"Design for cloud with microsoft Dynamics Crm"
The presenters, Amir Jafri and lan Smith, walk
It's been wisely stated that a mobile application that
through many of the same principles covered in this
simply takes something you used to do at your desk,
paper, and you may glean additional insights by
and allows you to do that same thing walking around
hearing them discuss these topics from a different
is of little value. The true value in mobility is in letting
perspective
people do things that weren't possible at all without
mobile computing. A similar principle is true with the
cloud. Simply taking something that used to be on
Cloud principles
premises and making it run in the cloud is of limited
value Using the complementary cloud services
There are some principles that, while they dont
Microsoft puts at your fingertips makes it possible for translate directly into detailed rules for what you
users to do something that wasnt possible without
should and shouldn 't do in microsoft dynamics crm
the cloud. If you're mindful of the possibilities, you
Online, still deserve serious consideration when
can build much more value into your cloud solutions. designing this type of cloud solution We'll start with
Keep the value of complementarity in mind as you
these principles before we get down to the details
read on
1SeeCyriacRoeding,"yoUHavetoBreaktheEggstaNfordUniversitye-cornEr.http://ecorner.stanford.edu/authormateriallnfo.html?mid=3174
http://convergence.evo-td.com/library/bkcrm406
M Microsoft Dynar
Scale and shared resources
way transactions lock the database and optimize
Microsoft DynamiCS CRM Online instances use a
your code accordingly. In Microsoft Dynamics
pool of shared resources, such as web server, async
CRM Online, the strict timeout limits mean you
service, report server, disk l/, and compute power.
can't afford to have a transaction which waits for
This is important to understand because it has both
minutes while the database is locked for other
an upside and a downside. We'll discuss the details
transactions ahead in the queue
of the downside first: no portion of these shared
Regarding database performance, you should
resources are dedicated strictly to the instance
also understand that while you don ' t have access
running your solution they re shared that means
to the database to create your own indexes, you
that you must design your solution to accommodate
can submit a request to microsoft dynamics crm
potential scenarios where these resources dont
Online to have(an)index(es) created for you
perform your requests immediately. For example
An asynchronous workflow doesnt run
Now, lets discuss the upside: In an on-premises
immediately. Asynchronous workflows are sent
deployment, your solution has access to exactly
to the async queue on the async server, a shared
the amount of resources that your customer has
resource. Your worktlow job may have to wait its
allocated to it. In microsoft dynamics Crm online
turn in the queue before it executes; although
you don' t have to worry about these shared resources
the execution time is often very quick, there's no
Microsoft invests in hardware to provide the
guarantee that it will be
necessary capacity for your workload. As the needs
for your deployed solution grow, the Microsoft
o If the impact of a workflow will be small
ynamics CRM Online service can provide the
enough, use a synchronous workflow instead resources to help meet those needs
of asynchronous to avoid the possibility
of having to wait for the workflow job to
Also, it's important to be aware of the published
complete Synchronous workflows don't
limits that do exist in microsoft DynamicS CRM
get sent out to the async server-they're
Online, as well as the fact that you can get around
processed immediately by the web server
these limits, if your customer requires it, by working
resources utilized by the user s session When
with your Microsoft contacts and crm service
creating a workflow, therefore, you have to
Engineering. These limits include obvious things like
weigh the potential delay from the async
storage space, entity count, and workflow count,
service from an asynchronous workflow with
as well as more obscure measurements such as the
the possible impact on performance from a
ExecuteMultiple resource governor that may slow
synchronous workflow
down data migrations. If these published limits
o Also, be aware that while there are no strict
pose a challenge for a customer, you can work with
Microsoft to meet your customers' needs
limits on the amount of workflow jobs you
can send to the queue, if you or any of your
neighbors sharing the resource are using an
Enforced best Practices
inordinate amount of resources, you may have Everybody has felt a little guilty when they wrote
a governor placed on your usage
some bad code in the past. Well, in Microsoft
Dynamics CRm Online the temptation to write
You need to be aware of database transaction
icky code has been removed in a lot of places,
volume. The database is the biggest bottleneck
especially where it comes to resource utilization
in both an on-premises deployment and
The reason for enforcing certain good practices i
Microsoft Dynamics CRM Online. Being aware
Microsoft Dynamics CRM Online solutions is simple
of database transaction volume is important not
and, we hope you'll agree, legitimate. Certain types
only when you re importing data, but in typical
f customizations, written the wrong way, could
CRM usage scenarios as well. Understand the
adversely impact the performance and stability of
Ifyouwanttounderstandtheonlineservicearchitectureinmoredetailsee:http://convergence.evo-td.com/library/ddcrm407
M Microsoft Dynar
the microsoft Dynamics cRm online service for
Online and azure share data centers -which means
other customers. In an on- premises environment
the communication between your app and microsoft
the customizations you write execute on resources
Dynamics CRM Online can be super-fast if you put it
you control. But because resources are shared in
in the right place
Microsoft Dynamics CRM Online, if your async plugin
were able to take 15 minutes to execute there would
Also, be aware of the fact that you can write code in
be less of the async service resource during that time
Azure that performs single-sign-on with Microsoft
for other customers' workflows and async plug
Dynamics CRM Online. You can also give your code
ins- which means your icky code is degrading the
access to the microsoft dynamics CRm online web
performance of other customers
service via the signed-in user (in which case, your
code will run under the signed-in user's account
This is closely related to the last point about shared
resources-but in this case, we re listing the things
Configure Where possible
you're flat-out not allowed to do
Since we've been talking code, let's now talk about
proper restraint. Don't write code just because you
Plug-ins
2 minute timeout
know how. Consider the long-term maintenance
requirements and use the declarative tools in
SQL
30 second timeout for
database transactions
CRM for building business logic when possible
Configurations are easier for others to analyze and
Running workflow
Fair use- no specific hard
understand without having to open up microsoft
limits. but the resource is
Visual Studio. They are also a more integrated part of
jobs
balanced across organizations
the CRM solution packaging model, which means that
they'll be checked for compatibility during solution
Direct database
import-which is very helpful given the frequency
Not allowed
with which Microsoft Dynamics CRM Online is
access
released (approximately every 6 months). And while
it's easy to write code that doesnt follow Microsoft's
So what do you do if you need to do perform some
guidelines for staying supported, it's really hard to do
logic that takes longer to execute? Clear your mind
that with a configuration
of that bad thought you were thinking-the answer
is not to abandon plans to build for microsoft
Dynamics Crm Online and stick with on-premises
Finally, you can also control the amount of tinkering
forever. The answer is to put that code in the proper
a customer can do with Crm components in a
place in the cloud. Read on
solution package and while these controls are not
an overwhelmingly articulate instrument, you can
choose whether customers can make modifications to
Use PaaS or laas in Azure when Necessary
the properties of some types of solution components
Of course there are times when your data processing
requirements will require more time and resources
Some examples of choosing configuration over
than are typically available in a Saas application like writing code are using workflows instead of plug-ins
Microsoft Dynamics CRM Online. No worries-you
and business rules instead of JavaScript. Choosing
can run this code in Azure. By passing the code off
configuration can potentially improve performance,
to Azure, you remove the resource limits and gain
require less maintenance, and decrease the amount
the ability to configure the size and power of the
of bugs in your solution
resources that will run your code. When you do this,
make sure that your Azure service runs in the same
region as your Microsoft Dynamics CRM Online org
Dont Copy On-Premises Design-use
Paas Instead
to ensure minimal latency. Microsoft DynamiCs CRM
A Instructions for doing single sign-on between Dynamics CRM Online and your code deployed to Azure, as well as authorizing your code to call the
DynamicsCrmOnlinewebservicesforthelogged-inusercanbefoundherehttp://andrewbschultzcom/2014/11/26/how-to-authorize-an-azure-app-
o-use-crm-online-web-services-without-asking-the-user-to-authenticatel
Microsoft Dynal
There are two main ways to deploy your code to
The caveat is that you need to develop your
Azure -using Infrastructure as a Service(laaS),and
application in a certain way to run it in Paas as a cloud
Platform as a Service(PaaS). Here are some quick
service. You can't take a web application you built for
heuristics to help you understand the difference
an on-premises lIS server and deploy it whole cloth as
an Azure cloud service. PaaS is the more sophisticated
laas
option, though -it scales more easily than laaS
With Azure laas, you can put your code on a virtua
(simply scale the web role up or out if your web site is
getting more hits than expected or scale the worker
machine (vm) in the cloud and run it just like it was
on your own server. You turn on Microsoft Internet
role up or out if your background processing tasks
are more onerous than you expected). It also requires
nformation Services(IS), create a virtual directory,
less maintenance
set bindings, etc -whatever steps you would take to
configure your complementary web application in an
on-premises environment. If you're looking to just
Design for the Azure sla
dump some legacy code in the cloud then laas will
One of the great things about azure is its service
give you the environment most similar to the on
level agreement (SLA). Since you're not managing
premises one from which it came
the hardware, you might wonder how you're going
to make sure your service is stable by using good
However, you probably shouldn't just indiscriminately
disaster recovery, high availability, and geo-replication
take an on-premises code base and put it in the
deployment practices to be subject to the Azure SLa,
cloud. There are better ways. If you have an azure vm
there are certain conditions you need to meet in the
running web services, Windows services, or scheduled
way you deploy your code and other assets to the
console tasks, you're not taking advantage of the
service. For instance, you need to deploy your code to
cloud' s unique architecture. these things can all be
at least two instances of the web/ worker roles or laas
accomplished in PaaS
VMs, so if the hardware in the datacenters is serviced
or a fault occurs in one datacenter, you still have a
Paas
working instance It's important to understand how
to deploy your code to take advantage of the azure
With Azure PaaS, more low-level management tasks
SLA, and to meet goals for high availability disaster
are handled for you-you don't have to configure IIS, recovery, and geo-replication
or patch the operating system on the machine. You
just write your code and deploy it as a cloud service
In the background, web-facing code can go in a web
Customizing for the cloud
role or an azure Website and non- web facing code
can go in a worker role. PaaS also includes other
Unsupported customizations Bad idea. Not only
services available to your code, such as storage as
are there fewer opportunities for you to make
a service( like the SQL Database feature or a nosQl unsupported modifications in Microsoft Dynamics
database called Azure Table Storage), Azure Active
CRM Online, there is also a greater incentive to avoid
Directory(which is Active Directory as a service),
making them. The purpose of Microsoft's guidance
machine learning as a service, big data analysis as a on supported and unsupported customizations is
service, scheduling as a service- you get the idea
to allow your modifications to continue to work
hrough new releases of microsoft dynamics Crm
5 Worker roles and web roles are two types of cloud services available in Azure. Under the covers, they are simply VMs that are created automatically for
you and require no maintenance or interaction. The main difference is that web roles come with lIS enabled by default, although a worker role can have
IiSturnedonaswellTheyaremonitoredbyAzureandyourapplicationismaintainedontheseVmsbyAzureSeehttp://azure.microsoft.com/en-us/
documentation/articles/fundamentals-application-models/# Cloud Services
6 The services listed here in, like SQL Database and Azure Active Directory, can be accessed from code running in laaS as well as Paas
7Foramorein-depthcomparisonofPaasandlaasseethisblogposthttp://blogs.msdn.com/b/hanuk/archive/2013/12/03/which-windows-azure
cloud-architecture-paas-or-iaasaspx
8Seehttp://azure.microsoftcom/en-us/documentation/articles/virtual-machines-manage-availability/andhttp://azure.microsoftcom/en-us/suppor
legal/slal to understand the terms and underlying principles of
e Azure
9SupportedextensionsforMicrosoftDynamicsCrmhttps://'msdn.microsoft.com/library/qg328350.aspx
Microsoft Dynal
In Microsoft Dynamics CRM Online, these releases
Finally, there is also another reason to stick with
happen approximately every 6 months. The Microsoft supported customizations. With an accelerated
Dynamics CRM platform could change in ways that
release cadence, your time to prepare is short
break an unsupported customization, but supported It's much better spent bringing the new features
customizations should continue to work through
and functionality into your solution than fixing
upgrades. While in an on-premises deployment, you unsupported code so it doesnt break a customer's
may have been able to delay an upgrade indefinitely deployment. this new functionality may include the
to avoid having to remediate your unsupported
ability to configure modifications that previously
modifications, in Microsoft Dynamics CRM Online
required custom code
that's not an option. You should expect unsupported
modifications to break at some point
Part of your effort every to"get current"with each
release may be the identification of areas where code
So what if you're deployed to Microsoft Dynamics
is no longer needed to achieve the functionality
CRM Online, and you want to test some
you've built. This would have been possible in
customizations before deploying them? Microsoft
recent releases including the 2014 Spring wave
Dynamics CRM Online allows you to add additional
and Fall Wave releases. If you have the discipline to
instances to a subscription, which can be designated proactively replace your code with configuration as it
as"sandbox"instances. In certain scenarios, sandbox becomes available, you may see a general lessening
instances may even be included with a microsoft
of the maintenance burden for your application as
Dynamics CRM Online subscription. You can copy
Microsoft Dynamics crm becomes more and more
a production instance of microsoft Dynamics crm
configurable
into a sandbox instance(including production data,
if desired). You can also reset a sand box instance
Dont Jump to customization
to wipe out any customizations you've made and
prepare it for testing next time
has often been to write code as the first step to
In the past, the approach of CRM solution builder
solving any problem. Today, the configuration
Staying current
capabilities of Microsoft DynamiCs CRM provide
The release schedule of microsoft dynamics crm
more productive ways to solve problems. We should
Online is frequent. This is good and bad -it's a
evaluate these configuration options before deciding
rapid development pace with great new functionality to write code. Custom code is harder to maintain
being delivered frequently-but it's also necessary for than configuration, harder to understand, more likely
SVs and other solution builders to stay current with
to break and more likely to prevent upgrades of
the release schedule. While supported customizations other system components ("yea, the custom code
should not break with a new release, it's still possible depends on that other thing It's complicated code
that an update requires changes to your application. we'd rather not mess with it, so that means we cant
For example the release of microsoft dynamics
change this thing ") There are great advantages to
CRM 2013 introduced a new UI that was significantly being able to write custom code when it's necessary
different than that of the previous version. This
but it can be a great weakness to do so unnecessarily
required iSvs to make sure that their products made the crm platform has been changing over the
sense and were usable within the new Ul paradigm
last several releases to allow solution builders to
accomplish more with less custom code
It may be possible for individual customers to
postpone the upgrade for a finite time period, but
Avoiding too much complexity in your solution is
you shouldn't make your customers do so in order
always a good idea, but with the update cycle in
to give yourself more time to get ready. Any given
Microsoft Dynamics CRm online, it's critical. the less
customer could potentially have many ISV solutions, complex your solution is, the simpler your regression
and the other solutions may be ready for the update testing and maintenance will be for each release. Be
to the crm platform when it's released You don ' t
kind to yourself, and don't over-code your solution
want to be the one holding the customer back.
10Getreadyforthenextreleasehttp://www.microsoft.com/en-us/dynamics/crm-customer-center/getready-for-the-next-release.aspx
M Microsoft Dynar
UI Customizations
instead. With a cloud application, it's important to
It's helpful to have a list of some of thi
be cross-device compatible. You likely don't have
customizations that people do to the Ul in Microsoft
an environment where t mandates all the devices
Dynamics CRM on-premises that cannot be done
that can be used by the end-users
in Microsoft Dynamics CRM Online, as well as the
alternatives that may exist. Here is just such a list
Server-Side Code
Machine Resources: you cant use the web
Custom ASP. NET pages: if you had a button
config in CRM code. You dont have access to
that would open up a custom ASP. NeT page
and retrieve or submit information from/to the
the file system. You don't have access to a user's
Microsoft dynamics crm web service you cant
authentication credentials. Use the supported
put that in Microsoft Dynamics CRM Online
patterns for accomplishing these things in the
Cloud
There's no place for it. Are you sure you can't
accomplish what your page is doing through the
Plug-ins
client-side scripting available with web resources
If you can do it. If not, use the azure approach
o If you're accustomed to deploying your plug
mentioned under the heading"Use Paas or
ins to disk in on-premises, you will need to
laaS in Azure When Necessary"in the"Cloud
deploy them to the sandbox 2 in Microsoft
Principles"section of this paper, along with the
Dynamics CRM Online
instructions linked in an earlier footnote for
configuring sso between microsoft dynamics
o If you use 3rd-party libraries in your CRM
CRM Online and azure
code, you' re probably accustomed to
deploying those libraries to the global
Changes to the dom in CRM: Ill-advised in the
assembly cache(GAC)on the machine where
on-premise solution, even more so in Microsoft
your code runs. There's no GAC in Microsoft
Dynamics CRM Online, and unsupported in
Dynamics CRM Online, and hence no way for
both types of deployments. If you need to do
you to authorize those third-party libraries
something crazy to the way fields on a form are
Use immerge to merge those libraries into
presented, try embedding a web resource on
your own assembly. 13
the form that presents the fields in the way yo
desire. the web resource can retrieve and send
Azure: as mentioned elsewhere in this paper,
the data for the fields from/to the crm web
long-running code and components like ASP.
service. If your desired changes are to parts
NET Web applications that can't be deployed
to microsoft dynamics crm online should
of CRM other than forms, sitemap areas, and
toolbars, then you're out of luck
utilize Azure. Also, this is true for any code that
needs to execute with full trust. 4 Code running
Silverlight: is only supported on Windows and
n microsoft Dynamics CRM Online runs in the
Mac clients So write your UI bling in HTML
sandbox-if your code needs more, then you
can deploy it to azure and call it from microsoft
11Foranexampleseehttp://blogs.msdn.com/b/devkeydet/archive/2012/02/11/displaying-a-lookup-as-a-dropdown-in-a-crm-2011-form.aspx
12Formoreaboutsandboxisolationseehttp://msdn.microsoft.com/en-us/librarylgg334752.aspx
3FormoreonIlMeRge,seehttp://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx
14 As the Microsoft Dynamics CRM 2015 SDK explains, "Microsoft Dynamics CRM 2015 and Microsoft Dynamics CRM Online support the execution of
lug-ins and custom workflow activities in an isolated environment. In this isolated environment, also known as a sandbox, a plug-in or custom activity
can make use of the full power of the Microsoft Dynamics CRM SDK to access the organization web service. Access to the file system, system event log,
certain network protocols, registry, and more is prevented in the sandbox. However, sandbox plug-ins and custom activities do have access to external
endpoints like the Microsoft Azure cloud service
worker process that hosts this custom code exceeds threshold CPU, memory, or handle limits or is otherwise unresponsive, that process will be killed by
the platform. At that point any currently executing plug-in or custom workflow activity in that worker process will fail with exceptions. However, the next
time that the plug-in or custom workflow activity is executed it will run normally. There is one worker process per organization so failures in one organi
zation will not affect another organization
In summary, the sandbox is the recommended execution environment for plug-ins as it is more secure, supports run-time monitoring and statistics
reporting, and is supported on all Microsoft Dynamics CRM deployments
M Microsoft Dynar
DynamiCS CRM Online. Azure Service Bus may
Deploying in Hybrid Scenarios with On
also be helpful here
Premises Components
Customers often have much of their infrastructure
Reports
on-premises. They may be reluctant to use key
FetchXML only: When building reports for
applications in the cloud, because they dont
Microsoft Dynamics CRm Online, you need
understand the potential for hybrid scenarios. But
to write SSRS report queries in FetchXML But
there are many ways that microsoft Dynamics CRM
once the query is written and the data is in your Online can operate as part of a hybrid It portfolio
possession, you can build your report using the
Using Microsoft DynamicS CRM Online doesnt mean
Business Intelligence Design Studio(BIDS) just
the customer has to move its whole t stack into the
like in on-premises. Upload the rdl to Microsoft
cloud
DynamiCS CRM Online just like in on-premises
Interoperability with Systems behind the
Size Scope of Data: There is a limit to the
Firewall
amount of data it's technically feasible to store
and report on in Microsoft Dynamics CRM Online. You have a lot of options when building
Or, your reporting needs may require mashing
interoperability between your code in Azure,
up crm data with other data sources. In any
Microsoft DynamiCs CRM Online, and other
case, there will be times when you want to use
applications. While any application that has the
a reporting database that lives somewhere else
ability to call out to the internet can call the microsoft
ike a data warehouse running in Azure sQl
Dynamics Crm Online web services, azure also
Database, for instance. You can pull data out of
provides several tools that can structure or simplify
Microsoft Dynamics CRM Online and report on it the way you build interoperability
there. It's possible to move the data from crm to
Azure with standard etl tools such as sQl Server
Azure Service Bus enables your code in azure to
Integration Services and Scribe, which can run in
connect to other devices or services that would
an azure laaSvm
otherwise be difficult or impossible to reach and
communicate with
Power bl While there are these limitations
involved with reporting on data in the cloud,
Azure virtual Network allows you to create a
there are also benefits. microsoft power bl is a
network where laaS Vms and paas services such
suite of tools that allows you to pull data from
as web roles can communicate with each other
online and offline sources and easily analyze
and with firewalled systems as if they were on the
it, using the powerful capabilities of an online
same network
service
Azure BizTalk services is a cloud-based service
that allows you to pass data back and forth
Custom Workflow Activities
between applications in different locations
You can deploy these to Microsoft DynamiCS CRM
Online just as you can to on-premises. They have to
It's possible to set up a VM in Azure laaS and run
run in the sandbox though -no full-trust code
any data transfer application you would normally
install locally
In addition, Microsoft Dynamics CRM Online only supports execution of custom workflow activities if they are registered in the sandbox. Sandboxed
plug-ins and custom workflow activities can access the network through the Http and Https protocols for more information see the Sdk topic"plug-
inisolationtrustsandstatisticshttp:/msdn.microsoftcom/en-us/library/gg334752.aspx
15FormoreonAzureServiceBus,seehttp://azure.microsoftcom/en-us/documentation/articles/fundamentals-service-bus-hybrid-solutions/
16ForahelpfulresourceonfEtchxmlreportsseehttp://blogs.msdn.com/b/devkeydet/archive/2012/06/04/converting-a-5ql-report-to-fecthxml.aspx
17 Power BI will not be available for the Offce 365 Government Community Cloud initially, which means that customers who want their entire footprint of
applications to be confined to the government Community Cloud will not be able to use the Power Bl service. However, many of the capabilities grouped
under"Power BI"are actually features of Microsoft Excel, such as Power Query, which allows you to query Dynamics CRM Online data to build advanced
analytics and mashups with data from other sources in an Excel spreadsheet. Excel spreadsheets can be uploaded as reports in DynamiCs CRM Online
M Microsoft Dynar
Email router
will block you from doing what you need to do
You can deploy the email router to Azure laaS if
For example, if you want to copy your production
you need to. However, server-side synchronization
instance into your non-production instance to test
is a better alternative that simplifies crm and email
some customizations you' re developing but you
interoperability by allowing you to configure it
dont have enough open storage space for another
without installing the email router component
copy of your production instance, you'll be unable to
perform the copy
Being aware of How Your
Database Indexes
Customer will administer
As mentioned elsewhere, it's possible to set indexes
on the database but it has to be accomplished by
your Solution
Microsoft dynamics Crm Online service engineering
through a support request
Storage
Customers only get 5 GB when they sign up for
How Authentication is different
Microsoft DynamiCS CRM Online. This number goes
up based on the number of user licenses the instance
in the cloud
consumes, and extra storage can also be purchased
for a reasonable monthly price. When you're
Claims-based authentication
building Microsoft DynamiCS CRM Online solutions
however, it's crucial to remember that your customer
When you build solutions for Microsoft Dynamics
will pay for extra storage. Consider saving things
CRM Online, you have to use claims-based
like documents or other storage-intensive objects
authentication. Know this. But you should also
consider the benefits of having single-sign-on
elsewhere, where storage is cheaper(sharePoint
Online and azure storage are two good candidates)
capabilities with Office 365 and apps you've deployed
to Azure. This may be something that makes your
solution much more useful, 19
As a solution developer, there are tools you can use
to estimate the storage you will have available to
Microsoft Dynamics CRm Online uses azure active
you before you start building, so you can design
your solution to work with the storage available to it
Directory as its Identity Provider. Azure Active
Directory is administered by the azure customer,
The Sure Step materials include a sizing worksheet
and the customer owns the relationship with the
that can help you estimate the storage a customer
users in Azure active directory just like it would with
solution will require. Also, make sure you understand
that storage for a tenant (i.e. a single customer
on-premises Active Directory. One of the benefits of
subscription to Microsoft Dynamics CRM Online) is
having Azure active Directory as your cloud identity
provider is that it allows you to tie in to on-premises
shared across instances of Microsoft Dynamics CRM
Online. In other words, if you have a production
identity providers(henceforward"on-prem IDPs")if
you so desire- Active Directory most easily, but also
instance, and several non-production instances,
others. There are different levels of interoperability
or more than one production instance running
possible between Azure Active Directory and an on
under the same microsoft Dynamics CRm online
prem idP some of which are discussed briefly in the
subscription, the storage available to your tenant has
sections below
to supply all of those instances
Cloud identity
It's important to stay on top of this, because it's
possible to run into situations where a lack of storage
You have the option to house your identity
18formoreinfoonSurestep,seehttps://mbs2.microsoft.com/surestep/default.aspx
19 See instructions for having your Azure cloud application perform SSO with Dynamics CRM Online, and authorizing your application to call the web
ervicethroughtheauthenticateduserherehttp://andrewbschultz.com/2014/11/26/how-to-authorize-an-azure-app-to-use-crm-online-web-service
ithout-asking-the-user-to-authenticate/
M Microsoft Dynar
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.