Is an azure account mandatory to use the azure kinect at all? - azurekinect

Do I need to sign up for an Azure account (even the free one) if I want to use the very basic body tracking functions of the Azure Kinect? From my understanding those should be possible to use offline with just the Kinect SDK...
Or is the account really just needed in case you want to use speech recognition and other AI services that use the Azure cloud services?
I couldn't find any definitive answer on the Kinect page or in the documentation. They only advise you "should" start off with creating an Azure account.

You don't need an account, just follow instructions: download SDK, connect the camera and have at least a NVIDIA GTX 1050 running on your PC. You could plug it to older NVIDIA cards but the FPS will be very, very slow.

Related

How to implement DRM in React on VPS

I am looking to implement DRM on my learning management system React app to block unauthorized content downloads. Using VPS as web hosting as well as content hosting. The VPS is running on Ubuntu 20.04.
I am guessing you are talking about video content.
Assuming this is the case you need to either use a video hosting service which has a DRM service included, such as Vimeo, Brightcove etc, or else host and stream the video yourself, perhaps using a streaming solution - see below, and add the DRM when you stream.
For the latter you will need a service from one or all of the main DRM providers deepening on what platforms you want to cover (very high level - Widevine for Google browsers and devices, FairPlay for Apple and PlayReady for Microsoft but some exceptions and caveats) or else with a multiDRM provider who will interface with the DRM provider for you.
If you just want a simple and cheaper protection you may find a combination of authentication, secure URLs and very basic Clear Key encryption may be enough for you, but again the complexity to stream efficiently can be large so it may be worth looking at existing streaming server solutions like Wowza, AWS Media Services, Azure Media Services etc.

Is free embed token app specific or user specific?

As mentioned in Power BI Documentation,
"Embed tokens with PRO license are intended for development testing, so the number of embed tokens a Power BI master account or service principal can generate is limited".
Source: https://learn.microsoft.com/en-us/power-bi/developer/embedded-faq
So my question is...
If developer require more free tokens for testing app in developement environment, can he change master account to acquire more free tokens ? Embed token are app specific or user specific ?
Any comments are appreciated.
I am new to Power BI Embedded.
You have a couple options: You can switch to another account (master service account) if you reach the limit but you will incur the cost of another PowerBI Pro License. You can also work with Microsoft support to have your limited reached to meet your needs until you are production ready. You can reach Microsoft support by going here https://powerbi.microsoft.com/en-us/support/ and scrolling down to "CREATE SUPPORT TICKET"
Note: If you are in Production you will have to buy a capacity. There is no way around that.

IdentityServer3 vs Azure Active Directory vs AWS Directory Services

I'm evaluating the above three identity management technologies and wanted to try to find out the advantages/disadvantages and get a sense for when I should be using IdentityServer3 over the other technologies. I have three scenarios:
Internal MVC Client to Web API
External Phone Client to Web API
Internal Web API to Web API
Brock Allen's Comments:
According Brock Allen, the creator of IdentityServer:
Well, the main thing that differentiates IdentityServer is the ability
to customize the entire token service and have control of the user
data. SaaS products are very limited in customization because for the
most part they don't let you upload arbitrary code to alter or change
behavior and they often encapsulate the database of users. On the
other hand, this means you have to host IdSvr (which can be cloud
hosted) and you need to build a database for your users. So if you
need the control, IdSvr is a good choice.
Also, I should note that very often IdSvr is used in conjunction with
other identity providers (like ADFS or AAD). IdSvr is deployed in
between the apps and the ultimate IdPs, again, usually to allow the
customization that the apps need, yet still centralized and
consolidated.
Source
My Own Findings
Disclaimer: I looked into this for use by the company I work for, who had existing infrastructure I had to cater to, so the solution I chose is skewed in that direction. Even so I've tried to give an impartial summary of my own thoughts during my research.
Azure Active Directory
Azure Active Directory is a hosted identity solution, so there is far less setup (especially if like me, you discover that you are already using it for Office 365). Out of the box, it provides some very nice features that can get you started very quickly.
The premium version has monitoring and reporting capabilities (Connect Health) so you can see who is logging into your system, it has two factor authentication, an identity management website and Microsoft is monitoring logins (a bit like cloudflare for identity), so it should in theory provide some added security. However, the customization of the UI is very basic, you have to pay for the premium features and using the Azure Portal to do identity management (if you go with the free version) is kind of a pain.
The documentation is pretty good and there are samples on GitHub with Microsoft devs actively monitoring the issues which was helpful. Some links I found useful:
Documentation Home Page
Documentation for each flow
Samples covering every flow
Introduction Video 1 and Video 2.
Build Videos 1, 2, 3.
IdentityServer
IdentityServer is the Swiss Army knife of Identity management. It can do everything but does require a small amount of setup and a little more knowledge of the identity space. It can do most things that I listed above and a lot more beyond.
It has to be noted that even if you are using Azure Active Directory, there may still be reasons for choosing IdentityServer which I had not initially considered. For example, if you have more than one source of user data e.g. You are using AD and also a SQL database of users, then IdentityServer can be used to point to both of these sources of user information. In theory it should also make it easier to switch from AD to something else entirely as it decouples things.
The project is actively developed, has code samples for all the authentication flows and you can get answers from the community. Some links I found useful:
IdentityServer4 GitHub
Samples covering every flow
IdentityManager (A separate application for handling users, groups and roles).
Introduction Video
Authentication Flows
Fact: Security is hard. There are lots of different ways of doing authentication called flows. I put this link here because I found it very useful for understanding them.
(source: azurecomcdn.net)
Summary
I discounted AWS Directory Services as it's very young even though the company I work for uses AWS. We also use Office 365, so I discovered that we already had an Azure Active Directory linked to an on-premises active directory server. Even so, IdentityServer is still a valid contender for reasons I explained above. We are still trialing both solutions...
What you decide to choose depends entirely on the problem you have. Which should you choose? Well, it depends on the number of developers, time, money and effort you can expend setting this up. There is no one size fits all solution. Really, the differences in the two products above are the differences between a SaaS and PaaS solution.

Windows Series Phone 7 "Cloud"

I have been reading up on "Cloud computing" on here and still not getting it. Basically I want to develop for the WP7 http://msdn.microsoft.com/en-us/library/ff402531%28v=VS.92%29.aspx#AppPlat_Overview_Arch
Now it mentions everything as being in the "Cloud". Is any server just a cloud? If i have a WCF service or wsdl on my server. Can I consider myself that "Cloud"? Or is there something that a server emits that checks whether or not it is a cloud?
I'm sure Microsoft would prefer for you to choose their version of 'the Cloud', which is Windows Azure, but yet, the cloud can mean WCF/WSDL on your server.
The only true 'cloud' out there is telecom - everything else is basically someone or some company's implementation of services offered over the Internet.
The Windows Phone 7 dev platform fully supports the calling of web services (SOAP/REST) so for your scenario, yes, you could think of yourself as the cloud.
Having said that, I think the notion that everything is up in the cloud simply implies that all of the information you've given an installed app is most likely stored/managed using a service. This service is hopefully installed on a trusted cloud provider (that could be Microsoft Azure or any other provider). This makes sense in light of the fact that the information we put into phone applications usually is quite valuable. Having it stored on a trusted cloud provider's web site would obviously be good from a reliability/security perspective. But to reiterate, that (or any cloud service) is NOT a requirement.
I hope that answered your question.
I liken "cloud" to any service accessible via the internet. This can include the likes of Microsoft's Azure cloud offering, similar "Software/Platform as a Service" offerings from other vendors, dedicated server hosting or shared server hosting solutions which are available much cheaper.
There was some confusion for Windows Phone 7 developers when Microsoft's cloud offering was pitched to students when the "All In" campaign began, around the same time the Windows Phone 7 campaign was getting going.
For developer's the confusion was borne out of wondering how do I support the costs of Microsoft's or other Platform as a Service offerings when my app is going to be free or returning revenues of an as yet unknown quantity.
In a much needed positioning comment offered to windows phone 7 developers, Microsoft made their position clear on Cloud with respect to shared hosting services, their cloud offering and Windows Phone 7 apps.
In short it's a budgeting call. If you're service has the income to cover cloud services (could be from any provider), then it is the most scalable model. Until then, traditional hosting services are recommended.
This is explained in more detail in this post.
Azure Storage and WP7

When should one use the following: Amazon EC2, Google App Engine, Microsoft Azure and Salesforce.com?

I am asking this in very general sense. Both from cloud provider and cloud consumer's perspective. Also the question is not for any specific kind of application (in fact the intention is to know which type of applications/domains can fit into which of the cloud slab -SaaS PaaS IaaS).
My understanding so far is:
IaaS: Raw Hardware (Processors, Networks, Storage).
PaaS: OS, System Softwares, Development Framework, Virtual Machines.
SaaS: Software Applications.
It would be great if Stackoverflower's can share their understanding and experiences of cloud computing concept.
EDIT: Ok, I will put it in more specific way -
Amazon EC2: You don't have control over hardware layer. But you can take your choice of OS image, Dev Framework (.NET, J2EE, LAMP) and Application and put it on EC2 hardware. Can you deploy an applications built with Google App Engine or Azure on EC2?
Google App Engine: You don't have control over hardware and OS and you get a specific Dev Framework to build your application. Can you take any existing Java or Python application and port it to GAE? Or vice versa, can applications that were built on GAE be taken out of GAE and ported to any Application Server like Websphere or Weblogic?
Azure: You don't have control over hardware and OS and you get a specific Dev Framework to build your application. Can you take any existing .NET application and port it to Azure? Or vice versa, can applications that were built on Azure be taken out of Azure and ported to any Application Server like Biztalk?
Good question! As you point out, the different offerings fit into different categories:
EC2 is Infrastructure as a Service; you get VM instances, and do with them as you wish. Rackspace Cloud Servers are more or less the same.
Azure, App Engine, and Salesforce are all Platform as a Service; they offer different levels of integration, though: Azure pretty much lets you run arbitrary background services, while App Engine is oriented around short lived request handler tasks (though it also supports a task queue and scheduled tasks). I'm not terribly familiar with Salesforce's offering, but my understanding is that it's similar to App Engine in some respects, though more specialized for its particular niche.
Cloud offerings that fall under Software as a Service are everything from infrastructure pieces like Amazon's Simple Storage Service and SimpleDB through to complete applications like Fog Creek's hosted FogBugz and, of course, StackExchange.
A good general rule is that the higher level the offering, the less work you'll have to do, but the more specific it is. If you want a bug tracker, using FogBugz is obviously going to be the least work; building one on top of App Engine or Azure is more work, but provides for more versatility, while building one on top of raw VMs like EC2 is even more work (quite a lot more, in fact), but provides for even more versatility. My general advice is to pick the highest level platform that still meets your requirements, and build from there.
This is an excellent question. Full disclosure as I am partial to Azure but have experience with the others.
Where I think Azure stands out from the others is the quick transition from on prem to the cloud. For example -
SQL Azure - change connection string, upload DB, go!
Queues work a lot like MSMQ.
Blobs are pretty much blobs any way you shake them but they scale like crazy.
The table storage component is good because it provides incredible scalability for name/value pairs - but takes some getting used to.
Service Bus is my favorite of the services because it allows for a variety of communications paradigms. Two SB endpoints first try to connect to each other, if they cannot, then they route through the cloud - makes for very secure and scalable processing when firewalls tend to get in the way.
Access control list - paired typically with the service bus to make sure the right people access the right things - think SAML in the cloud.
I hope that helps!
My cloud experience is currently limited to Salesforce.com
For standard business operations and automation it provides a significant number of features that allow us to get apps up and running very quickly. We are particularly benefitting from the following:
Security (Administrators can control access to objects and fields)
Workflow & Approvals
Automatic UI generation
Built in reporting and dashboards
Entire system (including our custom changes) is accessible via web services
Ability to make the data in the system available through public sites (e.g. eCommerce)
Large library of third party apps to solve standard problems
The platform does NOT solve every problem.
I would not use the platform to model a nuclear power station or build the next twitter.
The major points of cloud computing is to save on costs by paying for usage and enable immediate deployment of computing resources.
The costs are not purely x amount of cents per instance per hour. The costs include maintenance, development, administration, etc. The huge benefit of cloud, in my mind is to liberate the customers from having to manage anything that is not within the realm of their core business competency. If I am an insurance business, I want my developers to concentrate on my insurance problems that help solve needs of my claims, rates, etc. I would rather avoid dealing with problems of email servers, file servers, document repositories, and administrating OS patches, service packs, etc.
Thus, in my opinion, the biggest benefits are derived from the SaaS and PaaS cloud offerings. One should go to IaaS only when PaaS or SaaS have serious restrictions to specific needs (i.e. I need to install a set of proprietary COM components and Azure does not support them).
SaaS is good for commodity type of applications that are not the core line of business for the client, but are more of a utility. These are your typical Messaging systems, Portals, Document Repositories, Email systems, CRMs, ERP's, Accounting, etc. etc. etc. Why reinvent the wheel by writing your own when you can customize a well supported third party product.
PaaS is great for core line of business software that supports companies' main business offering. Abstracts clients from having to deal with OS management and lets clients concentrate on the business system development - something that noone else can do for the client.
One can also take advantage of the benefits of PaaS (let's say, Google App Engine) and extend it, at times and if necessary, by pulling out some virtual machines from IaaS providers (e.g. Amazon) to do some number crunching then just send back the output to Google App Engine.
This way, you get the best of both worlds -- you can rapidly develop scalable apps in GAE, then you can always augment it by running any program you want from Amazon virtual machines.
This keeps changing, now Windows Azure also supports VM, so it is also an IaaS provider now.
Now how about Free Amazon EC2 for a year to do a better comparision. Check this out.
http://www.buzzingup.com/2010/10/amazon-announces-free-cloud-services-for-new-developers/

Resources