Month: June 2024
FYI | Some episodes of The Intrazone podcast now published to the Community News Desk
Hello Fellow SharePoint’ers! A quick note, we now publish posts for our regular episodes to the new Community News Desk blog. We will continue to publish the SharePoint roadmap pitstop episodes as posts to the SharePoint community blog.
Thanks for tuning in. And if you haven’t yet listened to The Intrazone podcast, or shared it with a fellow collaborator, well – no time like the present (and thanks in advance for doing so). Doing either of these two actions buys you 100 virtual credits to spend on hidden likes to any SharePoint tweet.
Yours podcastingly, Mark “Here and there” Kashman and Chris “There and here” McNulty
Hello Fellow SharePoint’ers! A quick note, we now publish posts for our regular episodes to the new Community News Desk blog. We will continue to publish the SharePoint roadmap pitstop episodes as posts to the SharePoint community blog.
Thanks for tuning in. And if you haven’t yet listened to The Intrazone podcast, or shared it with a fellow collaborator, well – no time like the present (and thanks in advance for doing so). Doing either of these two actions buys you 100 virtual credits to spend on hidden likes to any SharePoint tweet.
The Intrazone – A show about the Microsoft 365 intelligent intranet – with co-hosts: Chris McNulty and Mark Kashman. aka.ms/TheIntrazone
Yours podcastingly, Mark “Here and there” Kashman and Chris “There and here” McNulty Read More
Samsung S23Ultra locked with old Android Enterprise Account
Here a challenging situation that I put myself in!!
1. Android device was enrolled normally with Intune (Corporate Owned with Work Profile), but after Google account converted to Business account many things stopped working as Intune currently doesn’t support Google G-suite (business)
2. So, a decision was made to remove the linked existing Android Enterprise account (from Intune) and create a new personal one.
3. Before doing so, wipe existing enrolled devices initiated, then removed them, and finally unlinking Android Enterprise account.
4. Android Business account was also removed from Google.
5. Phones that was active before wipe command initiation works OK, the problem exists with those phones who was not active and after unlinking Android Enterprise account, they are stuck.
6. Performed Factory Reset on those devices, and not anymore able to make them work as phones, Google needs the owner account – registered personal account or Android Enterprise doesn’t work, and Google insists to put owners account (which I did, but for some reason it doesn’t see it as owners account). – Google account was even removed from one of the mobiles before initiating factory reset.
7. Mobiles that I did not do yet factory reset are stuck with Intune app, and I cannot remove it because I restricted it myself in the configuration. I do not want to initiate factory reset before solving this issue.
Any suggestions
Alex
Here a challenging situation that I put myself in!!1. Android device was enrolled normally with Intune (Corporate Owned with Work Profile), but after Google account converted to Business account many things stopped working as Intune currently doesn’t support Google G-suite (business) 2. So, a decision was made to remove the linked existing Android Enterprise account (from Intune) and create a new personal one. 3. Before doing so, wipe existing enrolled devices initiated, then removed them, and finally unlinking Android Enterprise account. 4. Android Business account was also removed from Google. 5. Phones that was active before wipe command initiation works OK, the problem exists with those phones who was not active and after unlinking Android Enterprise account, they are stuck. 6. Performed Factory Reset on those devices, and not anymore able to make them work as phones, Google needs the owner account – registered personal account or Android Enterprise doesn’t work, and Google insists to put owners account (which I did, but for some reason it doesn’t see it as owners account). – Google account was even removed from one of the mobiles before initiating factory reset. 7. Mobiles that I did not do yet factory reset are stuck with Intune app, and I cannot remove it because I restricted it myself in the configuration. I do not want to initiate factory reset before solving this issue. Any suggestions Alex Read More
Announcing Windows Admin Center in Azure for Windows Client machines
In 2022, we introduced Windows Admin Center in Azure, making it easy for you to manage your Windows Server Azure VMs directly from the Azure Portal. Since its release, we’ve been overwhelmed by the positive response and feature requests we’ve received. Over the last 2 years, we expanded to support Azure Arc-enabled Windows Servers and Azure Stack HCI clusters, providing you access to Windows Admin Center for your on-premises machines without. We’ve heard you and added secure, password-less authentication, giving you single sign-on using your Entra ID credentials. We also increased the performance by over 50% leveraging Azure Front Door as our content delivery network. We continue to release every month, providing you with new experiences, updates, and bug fixes.
Today, we’re excited to announce that Windows Admin Center in Azure is expanding to also support Windows 10/11 machines. When you’re running Windows 10/11 as an Azure VM, you will be able to use Windows Admin Center in Azure to manage your client machines directly from the Azure Portal. By default, the Azure Portal provides a singular view for virtual machine management and the essential elements to manage your infrastructure. With the addition of Windows Admin Center, we have supplemented this great experience with additional capabilities such as an enhanced view of virtual machine usage, performance monitoring, viewing of events, and much more. We expect this to reduce the need for you to remote desktop into your virtual machine for administration, simplifying your experience as you deploy and maintain your client machines.
Get started with Windows Admin Center
Windows Admin Center in Azure is available to all Windows client customers on Azure running Windows 10/11 in the public cloud. To get started, create a new virtual machine today or deploy Windows Admin Center on your existing infrastructure. You can begin managing your virtual machines in Azure using Windows Admin Center by navigating to the Windows Admin Center blade under Connect in the Virtual Machine Azure portal UI. You can learn more here.
Thank you for using Windows Admin Center in Azure and stay tuned for more updates and features coming soon.
Microsoft Tech Community – Latest Blogs –Read More
How to break the token theft cyber-attack chain
We’ve written a lot about how attackers try to break passwords. The solution to password attacks—still the most common attack vector for compromising identities—is to turn on multifactor authentication (MFA).
But as more customers do the right thing with MFA, actors are going beyond password-only attacks. So, we’re going to publish a series of articles on how to defeat more advanced attacks, starting with token theft. In this article, we’ll start with some basics on how tokens work, describe a token theft attack, and then explain what you can do to prevent and mitigate token theft now.
Tokens 101
Before we get too deep into the token theft conversation, let’s quickly review the mechanics of tokens.
A token is an authentication artifact that grants you access to resources. You get a token by signing into an identity provider (IDP), such as Microsoft Entra ID, using a set of credentials. The IDP responds to a successful sign-in by issuing a token that describes who you are and what you have permission to do. When you want to access an application or service (we’ll just say app from here), you get permission to talk to that resource by presenting a token that’s correctly signed by an issuer it trusts. The software on the client device you’re using takes care of all token handling behind the scenes.
The first token you get, called a session token, shows that you successfully signed into the IDP, and how you signed in. When you sign into an app, it can exchange that session token for an access token, which gives you access to a specific resource for a certain amount of time without having to reauthenticate. To use an analogy, think of an amusement park. The IDP is the ticket office, which issues a park pass that provides credits for different rides. If you want to go on the roller coaster, you go to the ticket office, show your season park pass, and receive a ticket for that ride.
Just as you might be able to buy a day pass, season pass, or lifetime pass to the park, each token has a lifetime, usually between and 24 hours. And just as a 12-month season pass may get you a one-day pass to a specific ride, session tokens can have different—and usually much longer—lifetimes than access tokens. Moreover, access token lifetimes can differ, so the roller coaster pass may last an hour while the Ferris wheel pass is good for an entire day.
Traditionally, longer lifetimes are more convenient for users and more resilient against potential IDP outages (they save round trips to the IDP and associated latency) but riskier, while shorter lifetimes are safer (the IDP checks the integrity of the request more often). Technologies such as continuous access evaluation provide continuous assessment, so a shorter token lifetime isn’t a benefit when these are in place. When a token expires or continuous access evaluation reports heightened risk, the client goes back to the IDP and requests a refresh. This process is typically invisible to users, but if a risk condition has changed, and your organization policy requires it, then you may have to reauthenticate and get a new token. One last thing to note: while it’s a bummer to lose your roller coaster ticket, it’s really bad to lose your season park pass. An attacker can use your roller coaster ticket to get on a single ride for a short while, but with your season park pass, they can get on any ride for as long as they want. It’s similar with which, if stolen, give an actor a lasting ability to get access tokens.
How token theft works
Attackers steal tokens so they can impersonate you and access your data for as long as that stolen token lives. To do this, they get access to where a token is stored (on the client, in proxy servers, or in some cases in application or network logs) to acquire it and replay it from somewhere else.
Identity provider
Ticket office
Session token
Season park pass
Access token
Individual ride ticket
When an attacker steals your session token, it’s like picking your pocket after you’ve purchased your all-access season park pass at the fair’s ticket office. Because a token is digital, token theft is like stealing the pass from your pocket, making a photocopy, and then putting the original back in your pocket. The attacker can use their copy of your session token to get unlimited new access tokens to keep stealing your data, just as they can show a copy of a valid park pass to keep getting on rides without paying.
An attacker stealing your access token is comparable to someone and stealing your ride ticket as you stand in line. They do the same copy-and-replace trick, using their copy of your token to access the resource, just as they could show a copy of a valid ticket to get on an individual ride without paying.
And because in both cases the attacker puts the original pass or ticket back in your pocket, you don’t even know an attacker is riding the rides in your name. Your token seems fine, even though an attacker is using an illegitimate copy of it, and it may take a while to determine that anything is amiss—if you ever do.
Here’s an example:
Contoso stores all their documents in a secure cloud storage service and requires all employees to verify their identity using MFA before accessing it.
One day, after starting their workday by signing into Contoso’s cloud storage service, a user inadvertently installed malware on their device by clicking on a malicious ‘phishing’ link sent to them via email. The malicious code copied the user’s session token and sent it to the attacker.
The attacker then used the stolen and MFA-validated session token, now copied to their machine, to gain access to Contoso’s environment.
The attacker then downloaded as many documents as they could access, including a bunch of confidential reports, and leaked them on the internet.
Use of malware on the client to acquire the token is one common, easy method for attackers. Other tactics used to steal tokens include:
Copying tokens from the network as they pass through a proxy or router that the attacker controls.
Extracting tokens from unsecured server logs of the relying party.
While token theft still constitutes fewer than 5% of all identity compromises, incidents are growing. alone, we detected 147,000 token replay attacks, a 111% increase year-over-year.
Protecting tokens
IDPs and clients should handle tokens as securely as possible by only transmitting them over encrypted channels and not storing them in the open. But if an attacker infiltrates the device or network channel as in the example above, they can steal tokens and use them until they expire.
Ideally, a token would only work when used from the device to which it was issued. That is, if replayed from a different device, such as one an attacker controls, the would be rejected.
A key part of Microsoft’s protections against token theft is the use of tokens that are cryptographically tied to the device they . This is often called token binding, but may also be called sender constrained tokens, or token proof of possession. Token protection makes it harder to execute the main types of attacks designed to steal tokens, including network-based attacks and those using malware on the device by restricting use of the stolen token from devices they weren’t issued to.
In Microsoft Entra, token protection binds tokens to cryptographic keys specific to the device and ties them to the device registration. Once developers enable their applications to use protected tokens, you can enforce an Entra Conditional Access policy that requires client applications to use protected tokens to access a service. This policy rejects tokens which are not cryptographically tied to the device they were issued to. In the theme park analogy, this is like the ticket office taking your picture and printing it on your ride ticket and requiring ride operators to match the picture to your face before letting you ride.
This is a large project, spanning operating system platforms, native and web applications, all our cloud services, and the full range of different tokens in use for each case. It will be released in stages for specific scenarios. The first stage, in public preview now, protects the sign-in session tokens that native applications on Windows devices use when accessing Exchange, SharePoint and Teams services.
Token protection policy is available for Windows clients today. We’ll support Azure management scenarios and web applications that access Microsoft 365 resources and extend our cross-platform capabilities to Mac, iOS, Android, and other clients over the next year.
Practical steps for countering token theft
Token protection will offer the strongest protection against token theft; however, it will take the industry time to update all applications to use bound tokens. The good news is that Microsoft offers compelling countermeasures against attacks involving token theft that you can use today to reduce their risk and impact. We recommend a systematic defense-in-depth approach:
Reduce the risk of successful token theft.
Prevent malicious use of stolen tokens.
Be prepared to detect and investigate attacks that use stolen tokens.
Reduce the risk of successful token theft
The first line of defense is to reduce the chances of attackers stealing tokens in the first place, and below are some well-established techniques for building it. It’s the equivalent of keeping your ride tickets and park passes safe from pickpockets while you’re in the theme park.
Require managed and compliant devices. Use device management and define Conditional Access policies to require that users access resources from a compliant device. Compliance policies we recommend to reduce the risk of successful token theft from devices include:
To help prevent accidental infection with token-stealing malware, require users running on Windows to run as standard users rather than with device admin rights and require that all devices run up to date anti-malware and virus tools.
Use storage encryption to protect device content, including tokens, in case someone steals the device itself.
Enable Local Security Authority (LSA) protection to help protect Entra ID tokens in LSA memory. LSA protection is on by default for new devices and can be enabled for other devices via Intune.
Use jailbreak or rooting detection for mobile devices. Jailbroken devices are more likely to expose tokens and cryptographic secrets to potential attacks.
Find step-by-step instructions for enabling credential guard in our documentation.
Turn on Credential Guard for your Windows users. If your users are running Windows 10 or later, you can prevent theft of Active Directory credentials by configuring Credential Guard, which us es virtualization-based security (VBS) to isolate local and cached credentials so that only privileged system software—and not malware—can access them. Starting in Windows 11, version 22H2, Credential Guard is on by default for devices that meet requirements. This also helps protect cloud applications and resources when hybrid-joined devices using Active Directory authentication initiate a session to access cloud applications.
Find step-by-step instructions for enabling credential guard in our documentation.
Prevent malicious use of stolen tokens
While device management and strong credentials certainly reduce the risk of token theft, not everyone has them, and they’re still not completely foolproof. The next layer of defense is to prevent attackers from using stolen tokens for ongoing access by configuring policies to reject them wherever possible, and by detecting attempted use and responding automatically.
Require token protection in Conditional Access, and where possible, choose apps and services that use token protection. Microsoft is updating our apps, identity provider, and operating systems to support token protection, so if you’re using our apps and platforms, be sure to use the latest versions. Then configure Conditional Access to require token protection for sign-in sessions so only applications and devices using bound sign in session tokens, which can’t be used if they’ve been stolen and moved to another device.
Find step-by-step instructions for creating a Conditional Access policy that requires token binding in our documentation.
Create a risk policy to disrupt token theft in your environment automatically. When a user initiates a session or attempts to access an application, ID Protection will examine user and session risk factors to see if any have changed. Configure Conditional Access policies to protect both medium and high-risk sessions by either challenging users with MFA or by requiring reauthentication. This will make it difficult or impossible for an attacker to initiate a session using a stolen session token.
Wherever available, Continuous Access Evaluation (CAE) can automatically invalidate tokens when ID Protection raises the risk for a user or a service principal. This triggers the risk-based Conditional Access policies to mitigate in real-time, requiring re-authentication.
Find step-by-step instructions for creating risk-based Conditional Access policies in our documentation.
Reduce the risk of token reuse by restricting sessions for use within network boundaries. Most attackers use stolen tokens from untrusted IP addresses. You can establish network boundaries with policies that prevent users from accessing your resources if they’re coming from unknown locations or from known bad locations.
Restrict networks with Entra Conditional Access: Conditional Access includes controls that will block requests from outside a network compliance boundary that you define. This will prevent an attacker from refreshing a stolen Entra token, restricting its use to the lifetime of the token.
Find step-by-step instructions for defining a network compliance boundary with Conditional Access in our documentation.
Enhance network controls with Microsoft’s Security Service Edge (SSE) solution: To prevent the attacker from using a token outside of a trusted network at all, Entra Internet Access and Entra Private access use agents installed on endpoints and a compliant network check (enforced in real-time via CAE) to verify whether a user is connecting from a trusted network. Find step-by-step instructions for enabling compliant network check with Conditional Access in our documentation.
CAE-capable applications and services such as Teams, Exchange Online, and SharePoint Online will continuously enforce the IP-based named location Conditional Access policies and compliant network policies to ensure that tokens can be used only from trusted networks to access services. CAE offers a strict location enforcement mode to maximize protection. Find the step-by-step instructions for enabling this in our documentation.
Revoke tokens using Continuous Access Evaluation
In addition to ensuring that the supported services can only be accessed from trusted locations, CAE can revoke tokens when admins (or users themselves) take action in response to detecting an account compromise or token theft. These include disabling accounts, changing passwords, and revoking refresh tokens. Learn more about Continuous Access Evaluation in our documentation.
Be prepared to detect and investigate attacks that use stolen tokens
Use Entra ID Protection and Microsoft Defender to monitor for token theft. When a threat actor replays a token, their sign-in event can trigger detections such as ‘anomalous token’ and ‘unfamiliar sign-in properties’ from both Entra ID Protection and Microsoft Defender for Cloud Apps. Premium detections recognize abnormal characteristics such as an unusual token lifetime, a token played from an unfamiliar location, or token attributes that are unusual or match known attacker patterns. Signals from Microsoft Defender for Endpoint (MDE) can indicate a possible attempt to access the Primary Refresh Token.
Find step-by-step instructions for investigating token theft in our documentation.
Pull all your data into one Security Information and Event Management (SIEM ), such as Microsoft Sentinel, to investigate potential token theft. If you receive an alert for an event that may indicate token theft, you can investigate it in the Microsoft Sentinel portal or in another SIEM. Microsoft Sentinel gives you important details about a specific incident, such as its severity, when it occurred, how many entities were involved, which events triggered it, and whether it reflects any MITRE ATT&CK tactics or techniques. You can then view the investigation map to understand the scope and root cause of the potential security threat.
Find step-by-step instructions for investigating incidents using Sentinel in our documentation.
Reduce the risk of successful token theft
Prevent malicious use of stolen tokens
Be prepared to detect and investigate attacks that use stole tokens
Require managed and compliant devices.
Turn on Credential Guard for your Windows users.
Create a risk policy to disrupt token theft in your environment automatically.
Reduce the risk of token reuse by restricting sessions for use within network boundaries.
Revoke tokens using Continuous Access Evaluation
Use Entra ID Protection and Microsoft Defender to monitor for token theft.
Pull all your data into one SIEM, such as Microsoft Sentinel, to investigate potential token theft.
As defenders building defenses to help everyone strengthen cybersecurity, Microsoft is in a big strategic fight against token theft. We’ll keep you updated on any advancements you can use to counter attacks that use token theft. In the meantime, to help defend your environment, configure your Conditional Access policies to take advantage of token protection wherever you can and employ the countermeasures we’ve described here.
Stay safe out there,
Alex Weinert
Learn more about Microsoft Entra
Prevent identity attacks, ensure least privilege access, unify access controls, and improve the experience for users with comprehensive identity and network access solutions across on-premises and clouds.
Microsoft Entra News and Insights | Microsoft Security Blog
Microsoft Entra blog | Tech Community
Microsoft Entra documentation | Microsoft Learn
Microsoft Entra discussions | Microsoft Community
Microsoft Tech Community – Latest Blogs –Read More
“Reflecting on OneDrive and SharePoint” 🎙 – The Intrazone podcast
You might call this episode ShareDrive or OnePoint, if you dare. It blends the focus of two product managers spanning the OneDrive and SharePoint product boundaries.
In this episode, you’ll hear from Stephen Rice (Principal product manager) from our OneDrive companion pod, Sync Up … and he chats/interviews your very own Intrazone host, me, Mark Kashman. It’s a little bit of an M365 multi-verse as we interview each other – PM-to-PM, pod-to-pod, Intrazone-to-Sync Up. You’ll hear our takes on our respective products – Stephen on OneDrive and me on SharePoint. In the end, it’s a bountiful double bonus for you – the benefit of the best of both pods and a lot of updates and insights across both products.
The Intrazone, episode 110:
Subscribe to The Intrazone podcast + show links and more below.
About Sync Up
Sync Up is your opportunity to go behind the scenes of OneDrive and get the inside scoop on the latest and greatest features! Join your hosts, Stephen Rice and Arvind Mishra, as they shed light on how OneDrive connects you to all your files in Microsoft and enables you to share and work together from anywhere, and any device! Hear from experts behind the design and development of OneDrive, as well as customers and Microsoft MVPs! Each episode will give you news and announcements, tips and best practices for your OneDrive experience, and some fun and humor! Transcripts are provided for each episode.
About Stephen
Stephen Rice, Principal Product Manager for the OneDrive team, has worked at Microsoft for the past 9 years. He focuses on enabling collaboration across Microsoft 365, whether you are working with partners inside or outside of your organization. In his free time, Stephen enjoys playing games such as Magic: The Gathering and enjoys Star Wars, which he reviews on his other podcast, the Ion Cannon podcast.
Links to important on-demand recordings and articles mentioned in this episode:
Hosts, guests, and related products
Stephen Rice (Principal product manager for OneDrive at Microsoft) | LinkedIn [guest]
SharePoint | Facebook | @SharePoint | SharePoint community blog | Feedback
OneDrive | @OneDrive | OneDrive community blog | Office Hours (sign up) | Newsletter | Feedback
Mark Kashman |@mkashman [co-host]
Chris McNulty |@cmcnulty2000 [co-host]
Articles and sites
The Sync Up crew published this same interview, plus on-the-spot quick takes from M365Con – in their new episode, “Live from M365 Conference!” + Stephen’s LinkedIn post.
“Content Management and Collaboration for the AI Era” (full on-demand session)
“The intranet of tomorrow: beautiful, flexible, and AI ready” (full on-demand session)
“OneDrive: AI at your fingertips” (full on-demand session)
Microsoft Docs – The home for Microsoft documentation for end users, developers, and IT professionals.
Microsoft Tech Community Home
Stay on top of Office 365 changes
Listen to other Microsoft podcasts
Upcoming Events
Intranets and AI on Microsoft 365 | June 19-20, 2024 – Virtual
Community Days – Chicago | July 20, 2024 – Chicago, Illinois
M365 NYC (Community Days) | July 26, 2024 – New York City, NY
TechCon365 – DC | August 12-16, 2024
CollabDays Hamburg | August 31, 2024 – Hamburg, Germany
Power Platform Community Conference | Sept. 18-20, 2024 | Las Vegas
CollabDays – NE | Oct. 18, 2024 – Burlington, Massachusetts, USA
TechCon365 – Dallas | Nov. 11-15, 2024
Microsoft Ignite (+ more info) | Nov 18-22, 2024, “Save the date,” Chicago, IL
European SharePoint Conference | Dec 2-5, 2024 – Stockholm, Sweden
+ always review and share the CommunityDays.org website to find your next event.
Subscribe today!
Thanks for listening! If you like what you hear, we’d love for you to Subscribe, Rate and Review on iTunes or wherever you get your podcasts.
Be sure to visit our show page to hear all episodes, access the show notes, and get bonus content. And stay connected to the SharePoint community blog and where we’ll share more information per episode, guest insights, and take any questions or suggestions from our listeners and SharePoint users (TheIntrazone@microsoft.com).
Get The Intrazone anywhere and everywhere
Show page
Apple Podcasts
Google Play Music
Spotify
Pandora
Stitcher
Overcast
TuneIn
RadioPublic
iHeart
RSS
+ Listen to other Microsoft podcasts at aka.ms/microsoft/podcasts.
Microsoft Tech Community – Latest Blogs –Read More
Discrepancy between simscape and analytical solution
I am trying to simulate the behaviour of an electromechanical actuator, to model the BLDC I am using the block "Permanent Magnet
Synchronous Machine" with "Mechanical input" set into Mechanical rotational port.
The output of the block comprehends the rotor velocity in rad/s between the various informations.
I also connected the Mechanical rotational port to a set of gears modeled through simscape blocks (i’ll provide an image to clarify).
When I compute the actuation speed through a direct conversion of the motor velocity from rad/s to mm/s i obtain a value which is different from the one coming from the set of simscape gears.
In the picture the green line is the mechanical rotational port of the aforementioned block, while the series of gain is the simple conversion of the motor velocity from rad/s to mm/s
Am I using some of these blocks in the wrong way? It actually would seem to me a pretty straightforward application but apparently I’m missing something.
The gear ratio are all correct and so are the units of measure of the conversion blocks of the simscape section of the image.
At the moment I was using for the feedback control the velocity computed directly with the gains (black line) while I was using the green one only to apply the load to the motor, since otherwise I don’t see a way to model an external load, could this be a correct approach to the problem?
Thank you in advance, i will be extremly greatful to the ones who will answer, if you need more details feel free to ask me anything that could make the problem more clear to understand.I am trying to simulate the behaviour of an electromechanical actuator, to model the BLDC I am using the block "Permanent Magnet
Synchronous Machine" with "Mechanical input" set into Mechanical rotational port.
The output of the block comprehends the rotor velocity in rad/s between the various informations.
I also connected the Mechanical rotational port to a set of gears modeled through simscape blocks (i’ll provide an image to clarify).
When I compute the actuation speed through a direct conversion of the motor velocity from rad/s to mm/s i obtain a value which is different from the one coming from the set of simscape gears.
In the picture the green line is the mechanical rotational port of the aforementioned block, while the series of gain is the simple conversion of the motor velocity from rad/s to mm/s
Am I using some of these blocks in the wrong way? It actually would seem to me a pretty straightforward application but apparently I’m missing something.
The gear ratio are all correct and so are the units of measure of the conversion blocks of the simscape section of the image.
At the moment I was using for the feedback control the velocity computed directly with the gains (black line) while I was using the green one only to apply the load to the motor, since otherwise I don’t see a way to model an external load, could this be a correct approach to the problem?
Thank you in advance, i will be extremly greatful to the ones who will answer, if you need more details feel free to ask me anything that could make the problem more clear to understand. I am trying to simulate the behaviour of an electromechanical actuator, to model the BLDC I am using the block "Permanent Magnet
Synchronous Machine" with "Mechanical input" set into Mechanical rotational port.
The output of the block comprehends the rotor velocity in rad/s between the various informations.
I also connected the Mechanical rotational port to a set of gears modeled through simscape blocks (i’ll provide an image to clarify).
When I compute the actuation speed through a direct conversion of the motor velocity from rad/s to mm/s i obtain a value which is different from the one coming from the set of simscape gears.
In the picture the green line is the mechanical rotational port of the aforementioned block, while the series of gain is the simple conversion of the motor velocity from rad/s to mm/s
Am I using some of these blocks in the wrong way? It actually would seem to me a pretty straightforward application but apparently I’m missing something.
The gear ratio are all correct and so are the units of measure of the conversion blocks of the simscape section of the image.
At the moment I was using for the feedback control the velocity computed directly with the gains (black line) while I was using the green one only to apply the load to the motor, since otherwise I don’t see a way to model an external load, could this be a correct approach to the problem?
Thank you in advance, i will be extremly greatful to the ones who will answer, if you need more details feel free to ask me anything that could make the problem more clear to understand. simscape, simulink, synchronous machine MATLAB Answers — New Questions
rcsSignature RCS pattern change for radarTransceiver data generation
Hi!
I’m working with radarTransceiver object and I came across an issue, when I want to change the RCS of my target to achieve weaker signal nothing happens. I’ve tried different configurations of rcsSignature patterns, but nothing works, the signal is always with the same SNR.
Am I missing something?
Example code is in attachement with my RCS pattern modifications.
I want to achieve the smaller ampitude of the received signal reflected from taget 1.
Thank you for you help!Hi!
I’m working with radarTransceiver object and I came across an issue, when I want to change the RCS of my target to achieve weaker signal nothing happens. I’ve tried different configurations of rcsSignature patterns, but nothing works, the signal is always with the same SNR.
Am I missing something?
Example code is in attachement with my RCS pattern modifications.
I want to achieve the smaller ampitude of the received signal reflected from taget 1.
Thank you for you help! Hi!
I’m working with radarTransceiver object and I came across an issue, when I want to change the RCS of my target to achieve weaker signal nothing happens. I’ve tried different configurations of rcsSignature patterns, but nothing works, the signal is always with the same SNR.
Am I missing something?
Example code is in attachement with my RCS pattern modifications.
I want to achieve the smaller ampitude of the received signal reflected from taget 1.
Thank you for you help! radar, rcs, radartransceiver, rcssignature MATLAB Answers — New Questions
Output of irf() for VAR models when estimation data is in a matrix or a timetable
Hello,
I’m estimating a K-dimensional VAR model and looking at IRFs for structural (orthogonalized shocks) using the Econometrics toolbox, specifically varm(), estimate() and irf(). For orthogonalized shocks, the order of the model variables matters, as does the decomposition method. irf() uses the lower Cholesky decomposition (which is standard in econometrics), meaning that an orthogonalized shock to variable k will only have a contemporaneous effect on variables k, …, K, but not variables 1, …, k-1.
When estimating the model, I can use an array or a (time)table for my observed data, and the output of irf() will then also be an array or (time)table respectively. My question concerns the interpretation of the entries of either return value, specifically which IRFs are found where in the data structures returned. I am finding difficult to make sense of the documentation, and I’m now thinking that the documentation for irf() (alternatively, its code) is wrong for the timetable case.
Here’s a code snippet, based on the Danish data example in the documentation, that will illustrate what I mean. The order of variables in this model is M2, Y, IB, ID, meaning that (say) a shock to Y should influence IB and ID contemporaneously but not M2.
load Data_JDanish
Mdl = varm(4, 2);
Mdl.SeriesNames = DataTable.Properties.VariableNames;
EstMdlMat = estimate(Mdl, Data);
rng(1);
ResponseMat = irf(EstMdlMat);
% "Display the IRF of the bond rate (variable 3, IB) when the log of real
% income (variable 2, Y) is shocked at time 0."
ResponseMat(:, 2, 3).’
EstMdlTab = estimate(Mdl, DataTimeTable);
rng(1);
ResponseTab = irf(EstMdlTab);
% "For example, Tbl.M2_IRF(:,2) is the IRF of M2 resulting from a
% one-standard-deviation shock on 01-Jul-1974 (period 0) to
% Mdl.SeriesNames(2), which is the variable Y."
ResponseTab.IB_IRF(:, 2).’
Here, ReponseMat(:, 2, 3) is (as indicated by the quote in the comment, which is copied verbatim from the documentation page) the IRF of IB after an orthogonalized shock to Y. When estimating the model using data in a timetable, then (as indicated by the second quote, which is also from the documentation), ResponseTab.IB_IRF(:, 2) should be the IRF of IB after an orthogonalized shock to Y, and hence be identical to ResponseMat(:, 2, 3) (possibly up to round-off error).
Except it isn’t. In fact, the first element of ResponseTab.IB_IRF(:, 2) is zero. This suggests to me that when using irf() with data in a timetable, the economic ordering of the variables should be the opposite. This would result if irf() was using the upper Cholesky decomposition in this case.
But there’s no good reason why it should do that. In fact, there is no good reason why the two methods should give different results at all. The easiest explanation (excluding silly mistakes on my part) is that the documentation for the timetable case is wrong, and ResponseTab.IB_IRF(:, 2) should be read as the IRF of variable 2 (Y) after a shock to IB.
Would be nice if someone could shed some light on this.
For the record: I’m using MATLAB R2024a Update 4, the latest version.Hello,
I’m estimating a K-dimensional VAR model and looking at IRFs for structural (orthogonalized shocks) using the Econometrics toolbox, specifically varm(), estimate() and irf(). For orthogonalized shocks, the order of the model variables matters, as does the decomposition method. irf() uses the lower Cholesky decomposition (which is standard in econometrics), meaning that an orthogonalized shock to variable k will only have a contemporaneous effect on variables k, …, K, but not variables 1, …, k-1.
When estimating the model, I can use an array or a (time)table for my observed data, and the output of irf() will then also be an array or (time)table respectively. My question concerns the interpretation of the entries of either return value, specifically which IRFs are found where in the data structures returned. I am finding difficult to make sense of the documentation, and I’m now thinking that the documentation for irf() (alternatively, its code) is wrong for the timetable case.
Here’s a code snippet, based on the Danish data example in the documentation, that will illustrate what I mean. The order of variables in this model is M2, Y, IB, ID, meaning that (say) a shock to Y should influence IB and ID contemporaneously but not M2.
load Data_JDanish
Mdl = varm(4, 2);
Mdl.SeriesNames = DataTable.Properties.VariableNames;
EstMdlMat = estimate(Mdl, Data);
rng(1);
ResponseMat = irf(EstMdlMat);
% "Display the IRF of the bond rate (variable 3, IB) when the log of real
% income (variable 2, Y) is shocked at time 0."
ResponseMat(:, 2, 3).’
EstMdlTab = estimate(Mdl, DataTimeTable);
rng(1);
ResponseTab = irf(EstMdlTab);
% "For example, Tbl.M2_IRF(:,2) is the IRF of M2 resulting from a
% one-standard-deviation shock on 01-Jul-1974 (period 0) to
% Mdl.SeriesNames(2), which is the variable Y."
ResponseTab.IB_IRF(:, 2).’
Here, ReponseMat(:, 2, 3) is (as indicated by the quote in the comment, which is copied verbatim from the documentation page) the IRF of IB after an orthogonalized shock to Y. When estimating the model using data in a timetable, then (as indicated by the second quote, which is also from the documentation), ResponseTab.IB_IRF(:, 2) should be the IRF of IB after an orthogonalized shock to Y, and hence be identical to ResponseMat(:, 2, 3) (possibly up to round-off error).
Except it isn’t. In fact, the first element of ResponseTab.IB_IRF(:, 2) is zero. This suggests to me that when using irf() with data in a timetable, the economic ordering of the variables should be the opposite. This would result if irf() was using the upper Cholesky decomposition in this case.
But there’s no good reason why it should do that. In fact, there is no good reason why the two methods should give different results at all. The easiest explanation (excluding silly mistakes on my part) is that the documentation for the timetable case is wrong, and ResponseTab.IB_IRF(:, 2) should be read as the IRF of variable 2 (Y) after a shock to IB.
Would be nice if someone could shed some light on this.
For the record: I’m using MATLAB R2024a Update 4, the latest version. Hello,
I’m estimating a K-dimensional VAR model and looking at IRFs for structural (orthogonalized shocks) using the Econometrics toolbox, specifically varm(), estimate() and irf(). For orthogonalized shocks, the order of the model variables matters, as does the decomposition method. irf() uses the lower Cholesky decomposition (which is standard in econometrics), meaning that an orthogonalized shock to variable k will only have a contemporaneous effect on variables k, …, K, but not variables 1, …, k-1.
When estimating the model, I can use an array or a (time)table for my observed data, and the output of irf() will then also be an array or (time)table respectively. My question concerns the interpretation of the entries of either return value, specifically which IRFs are found where in the data structures returned. I am finding difficult to make sense of the documentation, and I’m now thinking that the documentation for irf() (alternatively, its code) is wrong for the timetable case.
Here’s a code snippet, based on the Danish data example in the documentation, that will illustrate what I mean. The order of variables in this model is M2, Y, IB, ID, meaning that (say) a shock to Y should influence IB and ID contemporaneously but not M2.
load Data_JDanish
Mdl = varm(4, 2);
Mdl.SeriesNames = DataTable.Properties.VariableNames;
EstMdlMat = estimate(Mdl, Data);
rng(1);
ResponseMat = irf(EstMdlMat);
% "Display the IRF of the bond rate (variable 3, IB) when the log of real
% income (variable 2, Y) is shocked at time 0."
ResponseMat(:, 2, 3).’
EstMdlTab = estimate(Mdl, DataTimeTable);
rng(1);
ResponseTab = irf(EstMdlTab);
% "For example, Tbl.M2_IRF(:,2) is the IRF of M2 resulting from a
% one-standard-deviation shock on 01-Jul-1974 (period 0) to
% Mdl.SeriesNames(2), which is the variable Y."
ResponseTab.IB_IRF(:, 2).’
Here, ReponseMat(:, 2, 3) is (as indicated by the quote in the comment, which is copied verbatim from the documentation page) the IRF of IB after an orthogonalized shock to Y. When estimating the model using data in a timetable, then (as indicated by the second quote, which is also from the documentation), ResponseTab.IB_IRF(:, 2) should be the IRF of IB after an orthogonalized shock to Y, and hence be identical to ResponseMat(:, 2, 3) (possibly up to round-off error).
Except it isn’t. In fact, the first element of ResponseTab.IB_IRF(:, 2) is zero. This suggests to me that when using irf() with data in a timetable, the economic ordering of the variables should be the opposite. This would result if irf() was using the upper Cholesky decomposition in this case.
But there’s no good reason why it should do that. In fact, there is no good reason why the two methods should give different results at all. The easiest explanation (excluding silly mistakes on my part) is that the documentation for the timetable case is wrong, and ResponseTab.IB_IRF(:, 2) should be read as the IRF of variable 2 (Y) after a shock to IB.
Would be nice if someone could shed some light on this.
For the record: I’m using MATLAB R2024a Update 4, the latest version. irf, econometrics, var model, varm, econometrics toolbox, cholesky decomposition, variable ordering, irfs MATLAB Answers — New Questions
What is the meaning of the variables in the C generated code of a Linear Discriminant Analysis model trained in MATLAB?
I have trained a Linear Discriminant Analysis model in MATLAB, and I have generated the corresponding C code:
void myLDApredic(const double X[8], cell_wrap_0 label[1],double score[5])
{
static const double dv[8] = {22.242777113313874, 10091.972043688236,
18.120065167575063, 1.6703515441084688E+6,
24.467860977243351, 10578.886659888578,
19.515843697095619, 1.9037831242647208E+6};
static const double dv1[5] = {0.19444444444444445, 0.19791666666666666,
0.20254629629629631, 0.18865740740740741,
0.21643518518518517};
// rest of function body…
}
void DiagonalDiscriminant(const double X[8], double mah[5])
{
static const double dv[40] = {
92.058756510416757, 428.55436769005888, 99.445223214285761,
121.16319976993877, 28.000396891711258, 12736.000000000013,
81355.60233918138, 19612.525714285723, 16993.374233128856,
3436.1497326203244, 143.11044456845252, 72.791255482456208,
144.52926339285719, 196.37662960122714, 29.916151403743349,
5.2292266666666726E+6, 3.3097596257309979E+6, 7.8175085714285746E+6,
7.0232076564417249E+6, 894724.10695187247, 480.39411272321479,
26.045367324561425, 53.19522321428574, 239.98229006901863,
20.971883355614992, 80371.8095238096, 2976.1871345029267,
8478.720000000003, 52414.036809816, 2602.4385026737991,
325.64160156250028, 34.383543494152079, 84.338125000000034,
72.35264091257676, 33.127548462566885, 1.6916089904761918E+7,
1.5491024093567266E+6, 3.7583959771428583E+6, 4.3856852024539923E+6,
1.6065081497326223E+6};
static const double dv1[8] = {0.044958414810596169, 9.9088661331104676E-5,
0.0551874394905295, 5.9867637056829179E-7,
0.040869939588510124, 9.4527905643572937E-5,
0.051240418580971815, 5.2526991507303129E-7};
// rest of function body…
}
What is the meaning of the variables "dv", "dv1" of files "myLDApredict" and "DiagonalDiscriminant"?I have trained a Linear Discriminant Analysis model in MATLAB, and I have generated the corresponding C code:
void myLDApredic(const double X[8], cell_wrap_0 label[1],double score[5])
{
static const double dv[8] = {22.242777113313874, 10091.972043688236,
18.120065167575063, 1.6703515441084688E+6,
24.467860977243351, 10578.886659888578,
19.515843697095619, 1.9037831242647208E+6};
static const double dv1[5] = {0.19444444444444445, 0.19791666666666666,
0.20254629629629631, 0.18865740740740741,
0.21643518518518517};
// rest of function body…
}
void DiagonalDiscriminant(const double X[8], double mah[5])
{
static const double dv[40] = {
92.058756510416757, 428.55436769005888, 99.445223214285761,
121.16319976993877, 28.000396891711258, 12736.000000000013,
81355.60233918138, 19612.525714285723, 16993.374233128856,
3436.1497326203244, 143.11044456845252, 72.791255482456208,
144.52926339285719, 196.37662960122714, 29.916151403743349,
5.2292266666666726E+6, 3.3097596257309979E+6, 7.8175085714285746E+6,
7.0232076564417249E+6, 894724.10695187247, 480.39411272321479,
26.045367324561425, 53.19522321428574, 239.98229006901863,
20.971883355614992, 80371.8095238096, 2976.1871345029267,
8478.720000000003, 52414.036809816, 2602.4385026737991,
325.64160156250028, 34.383543494152079, 84.338125000000034,
72.35264091257676, 33.127548462566885, 1.6916089904761918E+7,
1.5491024093567266E+6, 3.7583959771428583E+6, 4.3856852024539923E+6,
1.6065081497326223E+6};
static const double dv1[8] = {0.044958414810596169, 9.9088661331104676E-5,
0.0551874394905295, 5.9867637056829179E-7,
0.040869939588510124, 9.4527905643572937E-5,
0.051240418580971815, 5.2526991507303129E-7};
// rest of function body…
}
What is the meaning of the variables "dv", "dv1" of files "myLDApredict" and "DiagonalDiscriminant"? I have trained a Linear Discriminant Analysis model in MATLAB, and I have generated the corresponding C code:
void myLDApredic(const double X[8], cell_wrap_0 label[1],double score[5])
{
static const double dv[8] = {22.242777113313874, 10091.972043688236,
18.120065167575063, 1.6703515441084688E+6,
24.467860977243351, 10578.886659888578,
19.515843697095619, 1.9037831242647208E+6};
static const double dv1[5] = {0.19444444444444445, 0.19791666666666666,
0.20254629629629631, 0.18865740740740741,
0.21643518518518517};
// rest of function body…
}
void DiagonalDiscriminant(const double X[8], double mah[5])
{
static const double dv[40] = {
92.058756510416757, 428.55436769005888, 99.445223214285761,
121.16319976993877, 28.000396891711258, 12736.000000000013,
81355.60233918138, 19612.525714285723, 16993.374233128856,
3436.1497326203244, 143.11044456845252, 72.791255482456208,
144.52926339285719, 196.37662960122714, 29.916151403743349,
5.2292266666666726E+6, 3.3097596257309979E+6, 7.8175085714285746E+6,
7.0232076564417249E+6, 894724.10695187247, 480.39411272321479,
26.045367324561425, 53.19522321428574, 239.98229006901863,
20.971883355614992, 80371.8095238096, 2976.1871345029267,
8478.720000000003, 52414.036809816, 2602.4385026737991,
325.64160156250028, 34.383543494152079, 84.338125000000034,
72.35264091257676, 33.127548462566885, 1.6916089904761918E+7,
1.5491024093567266E+6, 3.7583959771428583E+6, 4.3856852024539923E+6,
1.6065081497326223E+6};
static const double dv1[8] = {0.044958414810596169, 9.9088661331104676E-5,
0.0551874394905295, 5.9867637056829179E-7,
0.040869939588510124, 9.4527905643572937E-5,
0.051240418580971815, 5.2526991507303129E-7};
// rest of function body…
}
What is the meaning of the variables "dv", "dv1" of files "myLDApredict" and "DiagonalDiscriminant"? c, code, lineardiscriminantanalysis, variables, meaning MATLAB Answers — New Questions
Why do I receive a “not enough information to determine output sizes” error while compiling a model with a MATLAB Function block in R2024a?
I am getting error messages like the following when compiling a model with a MATLAB Function block:
Simulink does not have enough information to determine output sizes for this block.
Chart expects data ‘y’ to have size ‘[1 65536]’, but the propagated size is ‘[1 16]’. Fully specify all inherited properties of your inputs and outputs.
Why am I receiving this error and how can I fix this?I am getting error messages like the following when compiling a model with a MATLAB Function block:
Simulink does not have enough information to determine output sizes for this block.
Chart expects data ‘y’ to have size ‘[1 65536]’, but the propagated size is ‘[1 16]’. Fully specify all inherited properties of your inputs and outputs.
Why am I receiving this error and how can I fix this? I am getting error messages like the following when compiling a model with a MATLAB Function block:
Simulink does not have enough information to determine output sizes for this block.
Chart expects data ‘y’ to have size ‘[1 65536]’, but the propagated size is ‘[1 16]’. Fully specify all inherited properties of your inputs and outputs.
Why am I receiving this error and how can I fix this? dimensions, output, matlabfunctionblock MATLAB Answers — New Questions
No longer have access to family organizer account
I no longer have access to my family organizer account. I’m almost certain it is under an old work email. Somehow, we got everything mixed up with my son’s Xbox account. Now, the account associated with my personal email says I’m 9 years old. As a “child” account, I’m severely limited on what I can do online. It’s quite frustrating. Can someone tell me how to change the family organizer when I can’t even access the account? Can I just delete all Microsoft accounts and start over?
I no longer have access to my family organizer account. I’m almost certain it is under an old work email. Somehow, we got everything mixed up with my son’s Xbox account. Now, the account associated with my personal email says I’m 9 years old. As a “child” account, I’m severely limited on what I can do online. It’s quite frustrating. Can someone tell me how to change the family organizer when I can’t even access the account? Can I just delete all Microsoft accounts and start over? Read More
Unable to create shared bookings page
Hi, I have been trying all methods to be able to create a booking page the user is a global admin even has an premium business account i have assigned and reassigned their license. even turned of and on the bookings. created a new policy but still getting the same error “Ugh-oh, there was a problem while creating your booking page” and can’t find any solution if someone could help out. The other user can create the booking page and is also a global admin but i don’t know what’s the issue with the user who can’t.
Hi, I have been trying all methods to be able to create a booking page the user is a global admin even has an premium business account i have assigned and reassigned their license. even turned of and on the bookings. created a new policy but still getting the same error “Ugh-oh, there was a problem while creating your booking page” and can’t find any solution if someone could help out. The other user can create the booking page and is also a global admin but i don’t know what’s the issue with the user who can’t. Read More
CoPilot is not appearing in Outlook or Teams for Mac
I applied new CoPilot licenses to three Mac users today. After several hours and restarts, CoPilot is still missing from Outlook and Teams.
In Outlook I have:
– confirmed they are using the new Outlook for Mac.
– confirmed they only have the one account in Outlook that is licensed.
– refreshed the license, and then restarted Outlook.
– opened copilot.microsoft.com in Safari and made sure they were logged in. (I saw this in another article, but not sure what it was supposed to do…)
In Teams, I:
– confirmed they were logged into the licensed account.
– tried to refresh the license, but this was not an option.
Any other ideas on how to fix?
I applied new CoPilot licenses to three Mac users today. After several hours and restarts, CoPilot is still missing from Outlook and Teams. In Outlook I have:- confirmed they are using the new Outlook for Mac.- confirmed they only have the one account in Outlook that is licensed.- refreshed the license, and then restarted Outlook.- opened copilot.microsoft.com in Safari and made sure they were logged in. (I saw this in another article, but not sure what it was supposed to do…) In Teams, I:- confirmed they were logged into the licensed account.- tried to refresh the license, but this was not an option. Any other ideas on how to fix? Read More
Why is it possible to create broken 365 app config files?
I’ve been trying to configure Intune win32 deployable Office & 365 applications for my company, and it’s been driving me insane.
I used the deployment tool and the config creator to create deployments for Office, Visio, & Project.
Office worked fine, but Visio & Project have not been working at all. Just failing instantly.
I’ve just done hours of investigating and trial-and-error and have found the problem: Visio and Project are not available in en-gb language.
I tried installing through Intune (instant fail), then directly from the setup.exe with the config: instant fail. Neither gave any useful error information. I then changed the config to show the installation display (which was hidden, as it’s meant for mass deployment), which then said the language is not compatible.
I thought that had to be a mistake, why wouldn’t British English work? I then tried making it the same language as the device’s Office installation (also en-gb) using MatchInstalled, hoping it was just some bug – this seemed to work, it didn’t show the language error any more!
It was now showing a connectivity error. Ugh. I spent a while trying to diagnose this before changing the language in the config to en-us, and it worked instantly.
Why was I able to create the configs for Visio and Project using the official Microsoft tool with en-gb as the language when that was never going to work?
I’ve been trying to configure Intune win32 deployable Office & 365 applications for my company, and it’s been driving me insane. I used the deployment tool and the config creator to create deployments for Office, Visio, & Project. Office worked fine, but Visio & Project have not been working at all. Just failing instantly. I’ve just done hours of investigating and trial-and-error and have found the problem: Visio and Project are not available in en-gb language. I tried installing through Intune (instant fail), then directly from the setup.exe with the config: instant fail. Neither gave any useful error information. I then changed the config to show the installation display (which was hidden, as it’s meant for mass deployment), which then said the language is not compatible. I thought that had to be a mistake, why wouldn’t British English work? I then tried making it the same language as the device’s Office installation (also en-gb) using MatchInstalled, hoping it was just some bug – this seemed to work, it didn’t show the language error any more! It was now showing a connectivity error. Ugh. I spent a while trying to diagnose this before changing the language in the config to en-us, and it worked instantly. Why was I able to create the configs for Visio and Project using the official Microsoft tool with en-gb as the language when that was never going to work? Read More
Prompt for credentials when different user tries to login with Microsoft Single Sign On using SAML
We have a below mentioned requirement on our login screen.
User enters emailId in our application and selects Microsoft to login with that email Id.User logs in to our platform with Microsoft SSO using SAML.User then logs out from our application, not Microsoft.User again tries to login to our application with different Microsoft email Id.Now here, as soon as we hit Microsoft authentication URL, it automatically performs login with first email Id (the account that is still active in the browser).Is there a way, that we can pass the email Id to Microsoft along with authentication URL or any other way, so that if the email Id is same as the active user, it automatically signs the user in, but if the email Id passed is different from signed in accounts, then it will ask for authentication credentials?
We have a below mentioned requirement on our login screen. User enters emailId in our application and selects Microsoft to login with that email Id.User logs in to our platform with Microsoft SSO using SAML.User then logs out from our application, not Microsoft.User again tries to login to our application with different Microsoft email Id.Now here, as soon as we hit Microsoft authentication URL, it automatically performs login with first email Id (the account that is still active in the browser).Is there a way, that we can pass the email Id to Microsoft along with authentication URL or any other way, so that if the email Id is same as the active user, it automatically signs the user in, but if the email Id passed is different from signed in accounts, then it will ask for authentication credentials? Read More
Prompt Like a Pro: Transform your messages with Microsoft Copilot in Teams
Effective and efficient communication is key when it comes to managing your workday. Whether you’re collaborating with colleagues, discussing project details, or simply sharing updates in a chat, the way you convey your thoughts changes depending on who you are talking to. Microsoft Copilot in Teams’ chat and channels compose box is a powerful tool that helps take your messages to the next level. In this blog, we’ll cover what this AI-powered tool is, how to access and prompt with it, as well as an exciting new feature: Custom tone.
Rewrite your messages with Copilot in Teams chat and channels
Copilot can assist you in crafting more polished and coherent messages, straight from the text compose box in chat and channels. It goes beyond spell-checking and grammar correction; Copilot also suggests improvements, rewrites, and adjustments to enhance the clarity, tone, and impact of your messages. Whether you’re quickly responding to your coworker or sharing a detailed project update with a VP, Copilot has your back. If you have a Copilot for Microsoft 365 license, you can navigate to the message compose box anywhere in Teams and start crafting your message. To start rewriting click on the Copilot icon in your chat box, press “Rewrite,” and watch your message instantly transform!
Get more specific rewrites with “Adjust”
With just a couple of clicks, I was able to improve my message before sending it to my team, all thanks to Copilot. But this is just the beginning. Next to the “Rewrite” button is the “Adjust” option, which lets you specify how you want your message to be altered. This allows you to adapt that message to whatever audience you are talking to, from a co-worker to a friend, your larger team, or even your manager. Simply choose from the range of options in the “Adjust” menu and change the length (concise or longer) or the tone (casual, professional, confident, or enthusiastic) of your message.
Not only is this an easy way to perfect your messages, but it does so without requiring you to type in any prompts. Just choose how you want to modify your message and Copilot does the work for you! If you need further editing, you can always refine your message by stacking different tones and lengths together. “Rewrite” is available for times when you don’t have any specific asks in mind for Copilot and want to use it more like a proofreader, and “Adjust” is there to give you specificity on what you want to change in your message. And remember, Copilot is the foundation of your message, but it is always important to proofread and confirm any generated content before you hit send.
Now available: Custom tone
While having Copilot do the work with those pre-set adjustment options is a great, no-prompt way to rewrite your messages quickly and efficiently, there is a new feature that allows you to tell Copilot exactly how you want to turn your writing into the best version of itself: Custom tone.
Custom tone takes everything touched upon with the “Adjust” feature and gives you the freedom to pick how Copilot can rewrite a message for you via an open prompt. With that comes the freedom to ask for multiple changes to be made, which Copilot will complete simultaneously in your rewrite. Do you want to add persuasive language to make your message more compelling? Or add additional context to your tone to give the right impression? Or turn a long sentence into a bulleted list before sharing it with your team? With custom tone, prompting how to change your message gives you the reins to make Copilot work exactly how you want it to.
Custom tone even allows you to bridge language barriers between global coworkers! Simply ask Copilot to translate your message to a specific language. For example, you can prompt that you want Copilot to make your message “longer and cheerful and in Spanish” and Copilot can apply those changes while translating instantly in the compose box – without you needing to leave your flow of work. Now, Copilot in Teams allows you to reach global audiences like never before, making it easier to write and receive messages adapted to you.
Teams messages – your next superpower
A lot of our workday is spent responding to messages in Teams. That may mean you are swamped with messages waiting to be responded to, some that are truly urgent and get buried by all your other unread chats and channels. With Copilot, you can respond faster and more effectively, driving collaboration forward. It helps reduce complexity for you as a writer, making it easier to land your message with each audience, faster. And you benefit as the message’s receiver, too – a message that is easier to understand allows you to act on it more deliberately. Thanks to Copilot, writing messages in Teams has never been easier, and it’s all thanks to an AI feature – powered by you.
Additional resources
For more examples of prompts that Copilot can help you with, check out Copilot Lab! Filter by specific Microsoft 365 apps to learn what prompts to use for meetings, in chats, and get tips for better optimized prompts with Copilot!
What’s coming next
If you’re already using Copilot in Teams, share your favorite prompts in the comments for the chance to get featured in a future “Prompt Like a Pro” blog spotlighting some community favorites! And be sure to follow the Teams MTC site so you never miss upcoming blogs. Before you know it, you will be prompting like a pro as well!
Copilot in Teams is constantly evolving and improving thanks to your input and feedback. If a Copilot prompt does not work the way you expect it to, let us know how by using the thumbs-down button that appears after a response.
Microsoft Tech Community – Latest Blogs –Read More
Catch Me If You Can: Uncovering Malicious Threats in Container Images
What do Frank Abagnale Jr., the notorious con artist from “Catch Me If You Can”, the Golden Snitch from “Harry Potter,” and the Higgs boson from physics have in common? They’re all extremely difficult to catch. Whether it’s outsmarting the FBI, eluding a Quidditch player, or taking physicists almost 50 years to discover, each represents a challenge of capturing something elusive. This analogy perfectly illustrates the nature of sophisticated cyber threats targeting container environments today – they are designed to evade detection, making them incredibly hard to catch.
What do Frank Abagnale Jr., the notorious con artist from “Catch Me If You Can”, the Golden Snitch from “Harry Potter,” and the Higgs boson from physics have in common? They’re all extremely difficult to catch. Whether it’s outsmarting the FBI, eluding a Quidditch player, or taking physicists almost 50 years to discover, each represents a challenge of capturing something elusive. This analogy perfectly illustrates the nature of sophisticated cyber threats targeting container environments today – they are designed to evade detection, making them incredibly hard to catch. Read More
Deleting Breakpoint Table in Simulink
When I hover over breakpoint table in Simulink, I’m simply unable to get rid of the table. Secondly, the values shown in the screenshot no longer represent the new breakpoint values that I’ve updated within the 2-D lookup table block. Thank you in advance for any tips or help.When I hover over breakpoint table in Simulink, I’m simply unable to get rid of the table. Secondly, the values shown in the screenshot no longer represent the new breakpoint values that I’ve updated within the 2-D lookup table block. Thank you in advance for any tips or help. When I hover over breakpoint table in Simulink, I’m simply unable to get rid of the table. Secondly, the values shown in the screenshot no longer represent the new breakpoint values that I’ve updated within the 2-D lookup table block. Thank you in advance for any tips or help. simulink, 2-d lookup table block, breakpoint MATLAB Answers — New Questions
Running a loop of inputting tables into MatLab
Hi, I have this code:
[data]=loadScopeData(‘/Volumes/usb/table_5.csv’,[1,inf]);
max_col2_5=max(data.pvdf_v)
max_col3_5=max(data.cell_v)
and I have tables for each trial 5-40 and I was wondering if there was a way that I could run this in a loop so import each table (table_5, table_6, table_7…), and to find the max of each of the second two columns labeled (max_col2_5, max_col2_6, max_col2_7…) matching the number of the table, so that I can later make a table out of these values. I have bolded the numbers that would need to increase by one each time, the rest of teh script would stay the same. I am thinking that a while loop could work for this, but I’m not sure how I can integrate that into the file name when loading the data. Turning this into a loop would be a lot faster and easier to run that having this script for each trail, especially as I start doing more. Thanks.Hi, I have this code:
[data]=loadScopeData(‘/Volumes/usb/table_5.csv’,[1,inf]);
max_col2_5=max(data.pvdf_v)
max_col3_5=max(data.cell_v)
and I have tables for each trial 5-40 and I was wondering if there was a way that I could run this in a loop so import each table (table_5, table_6, table_7…), and to find the max of each of the second two columns labeled (max_col2_5, max_col2_6, max_col2_7…) matching the number of the table, so that I can later make a table out of these values. I have bolded the numbers that would need to increase by one each time, the rest of teh script would stay the same. I am thinking that a while loop could work for this, but I’m not sure how I can integrate that into the file name when loading the data. Turning this into a loop would be a lot faster and easier to run that having this script for each trail, especially as I start doing more. Thanks. Hi, I have this code:
[data]=loadScopeData(‘/Volumes/usb/table_5.csv’,[1,inf]);
max_col2_5=max(data.pvdf_v)
max_col3_5=max(data.cell_v)
and I have tables for each trial 5-40 and I was wondering if there was a way that I could run this in a loop so import each table (table_5, table_6, table_7…), and to find the max of each of the second two columns labeled (max_col2_5, max_col2_6, max_col2_7…) matching the number of the table, so that I can later make a table out of these values. I have bolded the numbers that would need to increase by one each time, the rest of teh script would stay the same. I am thinking that a while loop could work for this, but I’m not sure how I can integrate that into the file name when loading the data. Turning this into a loop would be a lot faster and easier to run that having this script for each trail, especially as I start doing more. Thanks. loop, data import MATLAB Answers — New Questions
Excel Gitch
Hi all,
Has anyone else come across these issues with excel:
-When inserting a row the page below the line moves but no line is inserted.
-Formula work perfectly then stop calculating, calculate now, etc do not work, have to click in the cell and hit enter to recalculate.
– Cutting – nothing seems to paste.
Thanks!
Hi all, Has anyone else come across these issues with excel:-When inserting a row the page below the line moves but no line is inserted.-Formula work perfectly then stop calculating, calculate now, etc do not work, have to click in the cell and hit enter to recalculate.- Cutting – nothing seems to paste. Thanks! Read More