HomeVideos

AEM Assets: Workflows, Permissions & DAM Integrations | Adobe for Business

Now Playing

AEM Assets: Workflows, Permissions & DAM Integrations | Adobe for Business

Transcript

383 segments

0:08

Hello everyone. Welcome to the Skill Exchange session on Asset Master class. Today we will

0:14

discuss on the key pillars that truly unlock the efficiency and control of your Digital Asset

0:19

Management strategy. My name is Deepak and I'm working as a Principal Engineer Software at Palo

0:25

Alto Networks. Here is a brief introduction of me. I am privileged to be part of Adobe community

0:31

from a long period of time, and I am currently an Am champion. Here is the brief agenda of what we

0:38

will cover today. We will first discuss on the power of assets in the digital landscape.

0:45

Then we will discuss into the automation core of automation that is workflows.

0:52

Then we will discuss into access and permissions. We will now connect all the dots. That is

0:59

integration strategies will be discussed. We will discuss at the end. Best practices

1:05

and key takeaways from this session. Then we will open the floor up for Q&A.

1:12

Assets are not just a simple place where you can dump your images and videos. Think of it as a

1:18

central hub. A place to manage all your digital content and a single source of truth for that

1:26

entire lifecycle of an asset right from ingestion that is, upload to approval. Reviewer, archiver

1:33

or daily churn is maintained by assets. It helps to make sure that every

1:40

team member, every campaign follows the same version of the assets, hence improving brand

1:45

consistency and reusability of the asset. It makes sure that the different

1:51

team can collaborate for assets in a single unified platform, removing that chaos and

1:57

confusion of emails and all. It improves efficiency. It makes sure that the

2:04

different renditions are compatible for web mobile leveraging multichannel

2:11

delivery. It leverages smart tags via intelligent tagging as well as provides

2:18

full text and metadata search. It makes sure that the millions of

2:24

assets are being placed at one place, and they are rendered to the user in real time, removing

2:31

any performance lag. Now we will discuss the workflows. Workflows

2:38

are the core of automation. So what are them? They are automated sequence of steps to process and

2:44

manage assets. Why workflows are so important for assets. They help to automate repetitive tasks, for

2:51

example, sending notifications, generating render renditions, or extracting metadata. They

2:58

enforce business rules, so all the complaints will be followed by using workflows.

3:04

Since all the assets follow a particular predefined path, it helps to enhance the quality

3:10

of the assets and consistency is maintained. The time to market for the campaigns

3:17

is reduced using this automation, which is a real world requirement. All the manual efforts

3:23

are reduced and it frees up the time for providing and maintaining strategy by our team

3:29

members. Now in this slide, we will discuss on an example scenario where a new marketing image is

3:34

being created. The designer uploads that initial draft to a particular folder which is being

3:39

reviewed by marketing manager once he gets the notification of that. Once the feedback is left,

3:46

the designer make changes appropriately and it's routed to a concerned person like a brand

3:52

director. Once it is approved, the asset is automatically uploaded or moved to a different

3:58

folder. Done with the different steps as per the business requirement, and then it can be published

4:03

downstream to website or different social channels. And once the campaign is finished, the

4:09

asset can be deleted or moved to an archive folder. There are some

4:16

out-of-the-box workflows in damn I want to cover. I will start with the most important and

4:21

fundamental one. Dam update asset workflow. This is triggered whenever the asset is uploaded or

4:28

updated. Some of the key steps with this workflow are rendition generation or different touchpoints

4:34

like web mobile. Metadata extraction. Processing. Smart tags. It basically makes your assets

4:41

ready for a multi-channel uses. One difference in cloud service is heavy lifting for asset

4:48

processing. That is, metadata extraction and rendition generation are offloaded to asset

4:53

compute microservice. This helps for performance scalability. Now Dam Update asset is

5:00

a transient workflow for clouds where its instance is not persisted in the JCR

5:07

repository, hence providing for a superior scalability. Here is the flow in the cloud service.

5:12

Whenever an asset is uploaded, the binary is uploaded to the cloud storage and all the

5:19

requests like metadata extraction and rendition generation are taken care by asset compute

5:25

microservices and once it is done, Am is notified and Am updates the reference with the new

5:31

renditions. Some other workflows I want to discuss one is Dam metadata right back.

5:38

It makes sure that the consistency is achieved between the asset metadata and the original file.

5:45

Any changes in the metadata. This workflow writes back to the binary file. Dynamic media

5:52

process. Asset workflow is very powerful one it helps to handle different image sets like your

5:58

spin images, 360 images, flipped images, and helps for video encoding. Whenever the video is uploaded

6:05

in different bitrates and resolution, it is encoded and served to the user, reducing the

6:11

lagging. And all other important workflow I want to discuss is request for activation, so it takes

6:17

care of two steps. One is concerned the group is sent for review, and once it is reviewed, then it

6:23

is published to life. These out-of-the-box workflows are very robust foundation, but in most

6:29

of the cases we should extend them or optimize as per the business needs for customizing workflows,

6:36

workflow console is very important. It can be found under tools. You go to workflows and then

6:42

you can create your models. So here you can customize it using out-of-the-box component and

6:48

multiple components provided by assets. Some core workflow components I want to discuss. One this

6:55

process steps, all the Java code can be implemented using Workflow Process Interface

7:02

or Figma scripts to handle complex logics. For example, doing an integration with external system

7:08

we can achieve using this process step. Next is the participant step. If there is a some

7:15

task for review, it is assigned to a specific users or groups. With this participant step and

7:20

post approval only, it will go to the next step. Other important step is dynamic participant step.

7:27

Here, the group to which the task is to be assigned is computed at runtime. For example, if an

7:34

asset is belonging to a German domain, then it will be assigned to a German manager group and

7:41

if asset is belonging to the English or US site, then it will be assigned to the US manager.

7:48

Or an end splits are very helpful or is used for conditional branching. For example, an asset is

7:55

sent for approval, then either it will be published or it will be sent back for the changes

8:02

and split is helpful for parallel processing, for example, for an asset to be published to life. We

8:09

should make sure that the SEO that is the metadata is proper and the content and imagery is

8:14

proper. Post. Both steps are taken care. Then only it will go to the next step with an split.

8:22

Other important step I want to mention is the container step for example of a workflow is very

8:26

complex, so group of related steps can be moved to a different workflow and that workflow can be

8:33

used as a container step. This helps to clean up our already complex workflow. There are a lot of

8:40

real world customization examples. Some of the important examples I have mentioned here like

8:44

applying dynamic watermarking. Integrating notifications with Slack or Teams whenever it is

8:50

sent for renewal steps and we can push the metadata into different downstream like PIM and

8:56

others. I also want to discuss some of the advanced workflows which are event

9:03

driven. Whenever there are changes in JCR properties, for example, a node is created or a

9:10

node is updated, or an asset is moved to a different folder or an replication event is

9:16

triggered. Workflow launches can be initiated. Workflow launches will internally call the model,

9:22

and it can take care of the proper steps. And for more advanced steps, we can use a custom event

9:28

listeners and invoke them programmatically using the workflow API. So I have also shared the

9:33

screenshots of the different types how it is there. The path is basically a payload and asset

9:39

path where the launcher is triggered based on the events like created, deleted, replicated, or moved

9:45

to a different folder. Now I also want to discuss on some of the best practices of

9:52

workflow we should follow. One is we should always optimize the performance. The workflow is a

9:57

sequence of large number of steps, and some steps can take a longer time. Hence, we should use the

10:03

async execution so that that long thread can be running separately and it avoids to block the

10:09

workflow engine. Since CPU and memory is very important, we should make sure that our Java code

10:15

is very lightweight and we should not traverse the whole node to find the asset. We should use

10:20

psql or Query builder for traversals. We should make sure that only needful renditions are being

10:27

processed to optimize the asset processing. We should make sure that our workflow models are

10:34

versioned. For example, the workflow model path might be either conf or wear, and we should push

10:40

it to git so that it can be tracked and people can make the changes appropriately and know the

10:46

history when it was updated or modified. We should always make sure we are resilient with error

10:52

handling. Sometimes external systems may be down, so we should always implement a retrial logic. We

10:58

should make sure that our logs are very robust so it can be easily debugged by the team. We always

11:03

should have a fallback mechanisms in place so that any failures can be handled at our end. And

11:09

at the last we should use workflow exception. So we know that this workflow is a failure and a

11:13

notification can be sent to a group, or a logic can be updated as per the need.

11:22

Now we will be discussing on one of the important aspects of governance how to control the access,

11:28

which is the foundation for asset security where permissions are so much important for Dam. First,

11:34

it makes sure that our assets are safeguarded and only confidential assets can be accessed

11:41

by appropriate users and groups. It makes sure that the approved assets are being

11:47

published. So for example, if a logo is outdated. It will not be published because it will not be

11:53

accessible. It will help to enforce regulatory compliance with different rules like GDPR and

11:59

other privacy laws. It makes sure that unauthorized deletions and changes are not being

12:05

done since a proper users have proper permissions. What is the

12:12

permission framework behind it? It is based on your jackrabbit Access control list mechanism,

12:17

which offers granular control, but we should have a great understanding of the same. It is managed

12:22

through users, groups and privileges, which we will be discussing in the next slide. So now

12:29

we will discuss on what are the key or the building blocks of our asset security. First is

12:35

users and groups. Users are very simple. The individual accounts that log into our Am asset

12:40

instance are named as users. What are groups? Groups a collection of the users. They can be

12:45

either system groups or they can be custom groups as per our need and department, and we

12:52

should always take a note to always assign the permissions to groups, not individuals. So if some

12:58

new user has come, we can remove it from the group and add accordingly if the new user comes.

13:05

So what are privileges? Privileges are basically permissions assigned to those users and groups.

13:09

What they can do so they can read, write, add the child nodes, remove nodes, manage the versions,

13:15

replicate. So these are some of the privileges for users and groups. Now most important are

13:22

access control lists are the permissions which are provided. So what are they. They are rules

13:27

which are specified to a specific path. So that path can be either a folder or an asset itself.

13:33

Internally they contains asset control entities which allows like grant or deny

13:40

privileges to users or groups like what they can access, read or write is decided

13:46

by AC ACS, that is, access control entities which are part of our ACLs. A few points to note

13:53

that permissions are always inherited down the content tree, and denial rule takes precedence

13:58

over the allow rule, which we'll discuss in the further slides. Here is the UI

14:05

for permissions I wanted to explain. So for the group dam users you will see ACS listed

14:11

here. And on the right side you can like add a new path and they provide the privileges like JCR,

14:17

read, etc. and the type is also whether it's allow or deny. So how we

14:24

can access it, we can go to tools, security, users and group. There we can create a custom groups or

14:30

update the ACS for the current groups for the asset folder levels. Setting permissions is very

14:37

important and how we can achieve is listed here. So we should go to that particular folder. Then we

14:43

should go to the properties tab. And from properties we should open the permissions tab as

14:48

we can see in the right hand side screenshot. There we can add a user or a group and the roles

14:53

we can add it whether it's an owner, editor or a viewer. So this helps to manage our assets. And as

14:59

we discuss that the permissions are inherited down the content tree. So for a parent folder

15:04

permissions will be inherited by all the child folders and assets. The permission evaluation

15:10

logic works like deny always takes precedence over allow. More specific paths will always take

15:17

precedence over the general paths. For example, if the parent folder is slash content, slash them,

15:23

then a child path like slash content slash slash a dot jpg will take a precedence over the parent

15:29

and its permissions will be used. We should always consider the orders of access control

15:36

entities in our permission design, so we should make sure that our orders are proper in there

15:41

since first match wins for the same set of permissions. Now we will discuss on some of the

15:47

core principles for the permission. First important is principle of least privileges. If a

15:54

user needs read, just give him the read permission. Don't give him the right permission. We should

15:59

always have the group based permission. So it's very easy and if someone is new,

16:06

then we can add him to the group and if someone we want to remove, we can easily remove. So it's

16:10

very simplification of our audit process and we should always keep this permission simple. You

16:17

should not make it complex, since by default all the users and groups have a denied permission by

16:22

assets, so we should selectively give them an allow based permission one we should use deny

16:28

only when it's sparingly urgent, and we want to provide a very specific group

16:35

or a user a deny permission, then only use deny. As always, use allow. From

16:42

an operational point of view, there are some best practices which we should be taking a note of. We

16:47

should make sure that our permissions are audited regularly, so any permissions which we are not

16:52

needing, we can remove it. We should make sure that all our environments have the same permissions, so

16:58

that it can be properly tested, and issues are not carried forward to the higher environments. We

17:03

should document our permissions. So it's very helpful for the team and new. Our team members can

17:08

also easily understand. We should always make sure that our permissions are replicated to the

17:13

publisher, since they will be serving the content downstream to different platform like websites or

17:19

social. Since we have discussed on the workflows and permissions, now comes the

17:25

integration which is the most important point. So think of your assets as a central hub.

17:32

It's not a silo, it's a connector. And it should be integrated with different marketing and

17:38

technological stack. Why integration is so much a needful one is all the assets

17:45

are aligned across all the systems in real time, which helps for a consistent brand experience

17:51

since the same visuals are delivered to each and every channel. Content delivery is very fast. With

17:58

this, we can make sure that our already great metadata are enriched by integration with

18:04

different systems like PIM, CRM or AI services. It also ensures that workflows are optimized for

18:10

other systems, also like CMS and PIM or other e-commerce platforms.

18:19

So integration is possible with large number of the systems. In this slide, I mentioned some of the

18:23

important systems which we are using in our projects. Like PIM, we can integrate to sync the

18:29

product images descriptions. We can use a CRM for personalized asset delivery. We can use an ERP

18:36

for enriching the assets with business data. We can use a marketing automation platform

18:43

integration for Marketo to feed campaign ready assets directly. We can now integrate with

18:49

CDP to provide the customized assets based on the user past history. We

18:56

can integrate with CDM to deliver the assets in very fast manner. We can integrate with Creative

19:03

Cloud like Photoshop's and others. There are some integration patterns for assets. I will be

19:09

discussing on the three four important ones which we are using. First is M as the master dam. So

19:16

Am is a single source of truth and authoritative source for all your contents. All the assets flow

19:21

from Am to the downstream like web social. So this is happening for all the new projects as well as

19:28

for the large enterprises. Where Am is the primary content hub? There are some legacy projects, like

19:34

very old projects which were not earlier in Am that can be having M as a consumer or a slave dam.

19:40

So where assets are present in that system like a legacy dam, and they are slowly ingested into

19:47

Am and that Am acids are served downstream to the website and other socials. So slowly they are

19:54

moving from the external systems to am. Other important model which is used in most

20:01

of the projects is the hybrid model, where some of the assets are managed by Am and some are managed

20:06

by the external systems, and one is optimization. Why CDM is very

20:12

helpful. So can if it is dynamic media already a dynamic media takes care for rendering those

20:18

assets. Else we can use the CDM like Akamai or Cloudflare to make sure that the assets are

20:24

served to the users in very fast speed. For example, if a user from India requests the assets

20:30

and the server is in US, then an ad server near India should serve that content. Now I want

20:37

to discuss on some of the use cases for integration. After discussing all the integration

20:42

pattern. One is we can sing the content from the platforms to. Am for example

20:48

PIM we can use the product images, SKU details and user workflow internally by process step

20:55

so that Am assets are linked to that PIM metadata. We

21:02

can make sure that Am assets are served to different platforms like Marketo or Social, so all

21:08

the approved assets can be served for marketing campaigns. We should have a

21:15

integration with Dynamic Media and CDN, as I have mentioned previously.

21:22

And although also we should have a integration currently with most of the tools like Photoshop,

21:27

illustrator, where the photographer can directly make the updates to Am,

21:33

and then they can integrate and leverage those after checking in the Photoshop.

21:41

Now discussing on the integration. There are some of the governance which we should learn, take and

21:46

incorporate into our asset projects. We should regularly do troubleshooting

21:52

and do an operational visibility. We should see like which workflows are active, which are

21:59

completed. We should regularly monitor the logs. We should always monitor the queue health. We should

22:05

see which workflows are stuck which are slow so we can optimize and make them better. We should

22:11

use a SKL to end query builder queries instead of traversals, and we should use the slink console to

22:18

do the diagnostics. We should make sure that the proper lifecycle of an asset is being implemented

22:25

at our end, using any needful workflow and process. We should make sure that the folder follows a

22:31

proper regular convention and the asset usage is being reviewed. So if an asset is redundant, we

22:37

should get rid of it. We should always make sure that performance tuning is done by using Lucene

22:43

or queries wherever we have to faster asset search or infrastructure. CPU memory should be

22:50

always advanced, and we should always leverage dispatcher and CDN for delivery in very high

22:56

speed. Now I want to mention some of the key takeaways from the session. One is

23:03

workflows which are a source of automation are very powerful and we should leverage them into

23:08

our asset projects. We should make sure that the proper governance is taken care

23:15

with applying proper permissions. We should make sure that integration is there for

23:22

assets to all available digital ecosystem to enhance the maximum potential of assets.

23:30

We should make sure that we always do a regular monitoring, regular troubleshooting, and we

23:36

optimize our current Am assets implementation so that it is more efficient and performant in

23:43

future. We should always establish the clear policies for asset

23:50

management and security, since governance helps and is very useful. Now we will open

23:56

the floor for Q&A.

24:04

Thank you so much, Deepak for that presentation. I love how you made some complex and technical

24:09

topic topics feel so manageable. Thanks for having me in this session. It was very nice. I'm

24:15

thankful to you, Adobe and my team at Palo Alto Networks for encouraging me and having in this

24:20

collection session. At any time, of course, so that we know the drill. Let's take some questions. Make

24:27

sure to drop yours in the chat if you haven't already. So we're going to get started with a

24:31

question from Leanne. And she's asking how does the workflow notification come through to the

24:37

approver. Is that coming through via email or some other channel? Uh, sure. So once we

24:43

configure a participant step, uh, we assign a user or a group, uh, where the notification should come.

24:49

So normally, uh, it goes to the inbox, they will receive the mail notification. So in M console

24:54

they can go to the inbox and check. Getting email is also a good practice. So for this we separately

25:01

need to configure a mail service basic mail service and make sure that our email

25:06

notifications are in place. So that email goes to the proper concerned users or groups and they can

25:12

take the action. But if it is not configured, it will by default go to m, uh inbox. They can go to

25:19

the bell notifications and see them and they can uh, take an action. If it is fine them, they can

25:24

approve and it will go to the next step or and as per the configuration appropriately then. Gotcha.

25:31

Okay. Thank you. Next up we have a question from someone using Am assets on prem 6.5.

25:38

Um and this person is asking what can be done when assets get stuck in a workflow. They're not

25:44

sure why that occurs. And is it possible to set up or track a clear failed status? And for

25:51

more context, their use case is multiple uploads share the same sh one hash. They're not

25:57

duplicates, but they end up failed sometimes. Anything you can share on that note? Yeah, that's a

26:04

nice question. And it can happen sometimes. Um, so sometimes our workflow, um,

26:11

assets can get stuck. So the recommended um steps will be which will go to the workflow instance

26:17

console, which will check for the workflows which are in your running or suspended state.

26:23

And uh we should click on them. We we will check the history like the logs where they are

26:30

feeling. So either we should terminate or suspend them. And uh, if we see the proper

26:36

reasoning, we get why it's failed. Then we can reprocess the workflow. We can again run the

26:42

workflow on that asset and it should be fine. We can like trace our logs. And if we are

26:49

constantly seeing that it's failing. So it might be a code issue that it's a permission level

26:54

issue or some repository access issue. So that should be rectified. And depending upon the use

27:00

case you mentioned so you can share. We can discuss more on this in detail during our skill

27:07

post office hours. But yeah, it should be for sure related to some functionality at the end and can

27:13

be debugged and fixed and to and for the initial question mention, you can go to the workflow

27:19

instance console, check for all the workflows in the running and suspended state, and take a look

27:24

at your logs and the appropriate actions. Perfect. Thank you. Yeah, that series of steps you

27:31

detailed for troubleshooting is super helpful. So I appreciate that. And also great shout out

27:38

if there's anything, um, extra technical requires more nuance or context. These those follow up

27:43

sessions in September that we've been dropping links for throughout the day is a great time. Um,

27:50

to dig deeper into some of those questions from this session. So that's a great call out to Deepak.

27:55

Yeah. Um, another question about, is it a best practice to maintain all permissions as code

28:02

artifacts in OCI config file? That's a great question. In the

28:09

previous versions of Am, we were handling permissions with your package manager. With the

28:16

newer versions of M on prem and cloud, it is recommended for a best practice to do it

28:23

with your repository repo unit script. So that is recommended and the best practice as compared to

28:29

the OCI configuration mentioned. So and this repo init script will help in one other way that it

28:36

will be the same across your environment, so you can deploy the same in your lower environments

28:43

like int or in the higher environments like, uh, author and production. Like in the past, we used

28:50

to also handle with the package manager. That is also fine, but since it's a repository level

28:55

config and more granular, so it's better in a recommended way to have the basic, um, permissions

29:01

within your appointed script. Gotcha, gotcha. Thank you.

29:07

Um, few more questions coming in. Michael is wondering if you have anything you can share

29:14

around how you're tuning your queries. Sure. That's a nice

29:21

question. So we should make sure that we have properly added, uh, indexes to make sure

29:28

that our queries are fine tuned and we don't traverse the whole, uh, demo assets, for example,

29:34

whenever we are implementing a custom Java code using a process. Whether it's a process step or

29:41

your participant step, make sure that the query is fine tuned, like whether it's a query builder or

29:46

your sequel to. We should use it efficiently. For example, we should not traverse through all the

29:52

assets. We should just, uh, traverse the needful nodes. And we should also make sure that the

29:58

indexes are added so that the results and retrieval are faster. But yeah, it's very important

30:03

to make sure we use the proper queries, whether it's equal to a query builder. And we should just

30:09

target tool to the appropriate asset. So in AMM workflow there is a one good leverage. You have a

30:14

workflow payload. So you should just play around it rather than traversing the whole repository

30:21

or assets because the payload will give you an appropriate path. For example, if you are

30:25

triggering it on an asset A, so you will get the asset a path in the payload and in the back end

30:31

you can do computation accordingly rather than traversing through old repository. And just make

30:36

sure that proper indexes are at. Yeah, that's a nice question. Gotcha, gotcha. Thank you.

30:43

Um, another great question here from Eric. Um, Deepak, how do you modify, uh, rendition pixel sizes

30:49

on cloud, if you're familiar with that? Um, and as a follow up to that, if there are multiple

30:54

renditions, is it possible select just one type of those renditions to download or does it need. Um,

30:59

or does one need to download the full rendition pack for multiple rendition sizes? Sure. So like, uh,

31:06

on cloud have not worked like much like we have explored mainly via sandbox currently. Uh, I'm

31:13

using, uh, on prem, but I've explored like cloud sandbox and, uh, know the differences between cloud

31:18

and on prem, like how we are handling. So this is one good like in our workflow models, we have a

31:23

step so we can define the renditions there itself. For example, if you are using the customized, uh,

31:29

data set workflow or an out of the box workflow which you are going to extend and customize so

31:35

that you can configure the renditions which step you want. So if you already have a dynamic media

31:39

you can configure in the dynamic media step the renditions, or if you just want in the thumbnail

31:45

rendition something so you can update in that step whatever the rendition size you want. And if

31:51

you want to rerun it after updating or your workflow model, then you can just reprocess your

31:58

assets with that and it will take care. And if you are working on prem and you don't have in on prem,

32:04

we basically are used or seen seven for dynamic media assets. So if you have seen seven

32:08

configuration set, so whatever the dynamic renditions you are doing, the M will basically

32:15

push those assets after applying the workflow to scene seven. So in that way, the whatever we

32:20

configure in that workflow model, step renditions for the dynamic media, it will take into place. So

32:25

it's possible and I can in my post office hours also show you the configuration and detailed

32:31

steps how we do atm. So yeah, I love that use case. That sounds great.

32:38

I'm seeing another question that I really like from Priya, who's asking about the right way to

32:43

set up groups in assets. So she's asking, um, for creating groups. Is it creating them directly in

32:50

Adobe IMS, or should she be leveraging, uh, Active Directory, creating them in Active Directory? Uh,

32:56

and then it gets synced to IMS and AUM. Yeah, I think that's a great

33:03

question. And how it's being evolving from the versions of I am on the past versions like on

33:09

Am on prem. Basically we used to set in the console itself, you know, so we created the new

33:16

groups and exported with Package Manager and with the newer versions of M on prem and

33:23

cloud. Uh, as I mentioned, like initial um permissions we are handling with repo in it. So

33:28

you give you we can configure using that IMS and it can sink to a cloud. So that is

33:35

also being one of the way. Or if you are someone admin level access who is drawing on cloud so he

33:41

can manage. So yeah, I think both these things are feasible that I have also heard a lot of things

33:46

that, uh, you use IMS and it is getting synced those groups to your cloud. So yeah, that is also

33:52

fine way. And as I mentioned, the if some super admin is doing that is helpful and we should make

33:58

sure that our init script are properly configured and pushed to the code base. So that's a

34:05

fine, fine question. And I can, I think, cover more about it in a post. Uh, champion officers

34:12

also like a detailed use case for this. Awesome. Yeah, I love that. Um, another

34:19

great question from Rajesh here. He's wondering how he can better troubleshoot asset ingestion

34:25

issues. Um, so in your session, Deepak, you mentioned asset compute service used in in CS to

34:32

process asset renditions. So what's the way one. What's your advice for troubleshooting asset

34:38

ingestion issues? And then how are you monitoring that over time? Uh, sure.

34:45

So to it also it depends on how we are doing asset ingestion. Like in traditional way we can, uh,

34:51

bulk select the assets and upload them to a particular folder. And with the advancement of

34:57

higher m version. So and cloud we are doing it via Azure. Also we can have the assets in Azure and

35:04

we can do ingestion into Am. So one thing I will always recommend it do asset

35:11

ingestion in batches not do in bulk like um and also monitor like for example if there are

35:17

some things uh, which is not needed in your business context, for example, you don't need uh

35:23

metadata right back functionality, you don't need a large number of metadata or renditions for your

35:28

business use case. You just extend the workflow and omit those steps. So if your business use case

35:35

says that you don't need so it's better and advisable, and then you can do your ingestion in

35:41

batches. Not all the assets at work, whether you do directly upload or you do it via Azure and then

35:47

importing to or am. So I think it's done and it's very doable. I think most

35:54

of the organizations are doing it, so asset ingestion in batches is fine and should not be a

36:00

issue. We should monitor. And we should also make sure what our business priorities are. As I

36:04

mentioned that unnecessarily steps we should omit. Yep. Gotcha. And following up, speaking

36:11

of workflows, a follow up question to that specifically in managed services, if you're

36:16

familiar, but Priya's asking, is it possible to offload workflow processing to a different server

36:22

in managed services? Yeah, so it will be done, I think

36:29

with customization only, for example, in cloud I mentioned that you can do to asset compute

36:33

microservice in ACM on prem. Also I think we can if we have some custom logic, we can do it like

36:39

what we can do, we can override or extend or out of the box workflow, handle all the logic by

36:45

ourselves like in the back end, and do it like how we want to do as per. We can also think to

36:51

integrate with the APIs and check with our Adobe wrap. Like for example, if a compute microservice

36:57

can be given it as a package, or how we can leverage that. But yeah, it's a good use case. How

37:02

we can do in prem to improve the performance of the workflows. Yeah that's a nice perspective.

37:09

Excellent. And I think we'll have time for maybe 1 or 2 more. Um, but I'm curious Deepak specifically

37:16

in in work throws. Is there anything any best practice you can share about optimizing workflows

37:23

out of the box? Yeah, I think some steps I covered in the

37:29

questions. Like, we should understand our business need. For example, if we don't need extra

37:36

renditions or metadata right back, we should omit our steps. If we don't have seen

37:43

seven, for example, then we should just remove that thing instead of it throwing the error. And same

37:48

with the smart text. Like if we need the smart text, then we should configure that model and use.

37:53

And if we don't need, we should just remove it. So one thing will be like always optimize your

37:59

workflow, whatever is per business need and context. And most probably I will try to leverage

38:04

like clone extend out of the box workflow and use it. Second should be like I will make sure of my

38:10

launchers. I will track my launchers that sometimes on any JCR event like modification and

38:15

all my out-of-the-box workflow launchers can get triggered. So that creates a chaos and unnecessary

38:20

processing. So I should monitor my launchers, just have the needful ones and see like which

38:26

workflows it is triggering. Thirdly, I will make sure that my workflow code is committed to the

38:32

code base so that the changes are not lost when moving from a lower environment to a higher

38:37

environment. With m higher versions, we have the config available in conf, so that can be pushed to

38:44

the higher environments. And fourthly, as I mentioned, like we should have a proper governance

38:49

and follow a proper logging practice like code practices should be there. Proper lag logging,

38:54

retry mechanism should be there so that our workflows are more robust and possible. Workflows

38:59

are super important for automation, and we should leverage it in a good way. And we should always

39:05

see our business use case. So yeah I think it's very powerful future. Amazing. And that's perfect

39:12

timing. Deepak, thank you so much for joining us and for sharing your efforts with all of us today.

39:18

Yeah, thanks a lot for having me. Thanks to the entire Adobe team and Palo Alto Networks team for

39:23

supporting me. Thank you all. Bye.

Interactive Summary

The session focuses on key pillars of Digital Asset Management (DAM). It establishes assets as a central hub for digital content, crucial for brand consistency and reusability. Workflows are highlighted as the core of automation, enabling repetitive task automation, business rule enforcement, and efficiency gains. The presentation details access and permissions, emphasizing their role in asset security, regulatory compliance, and controlled access through group-based permissions and the principle of least privileges. Integration strategies are also discussed, positioning DAM as a vital connector within the digital ecosystem for metadata enrichment, fast content delivery, and system alignment. Best practices for optimizing workflows, managing permissions, and operational governance are provided to ensure a robust and efficient DAM strategy.

Suggested questions

6 ready-made prompts