Azure AuthorizationManagementClient SDK for JavaScript
This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AuthorizationManagementClient.
Please note, this package is deprecated and not functional as it uses an older version of the Javascript SDK generator. As of April 2022, you can instead use @azure/arm-authorization-profile-2020-09-01-hybrid.
Currently supported environments
Prerequisites
You must have an Azure subscription.
How to install
To use this SDK in your project, you will need to install two packages.
@azure/arm-authorization-profile-2019-03-01-hybrid
that contains the client.@azure/identity
that provides different mechanisms for the client to authenticate your requests using Azure Active Directory.
Install both packages using the below command:
npm install --save @azure/arm-authorization-profile-2019-03-01-hybrid @azure/identity
Note: You may have used either @azure/ms-rest-nodeauth
or @azure/ms-rest-browserauth
in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
If you are on a Node.js that has LTS status, or are writing a client side browser application, we strongly encourage you to upgrade to @azure/identity
which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.
How to use
- If you are writing a client side browser application,
- Follow the instructions in the section on Authenticating client side browser applications in Azure Identity examples to register your application in the Microsoft identity platform and set the right permissions.
- Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below.
- If you are writing a server side application,
In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
Once the client is created, explore the operations on it either in your favorite editor or in our API reference documentation to get started.
nodejs - Authentication, client creation, and listForResourceGroup permissions as an example written in JavaScript.
Sample code
const { DefaultAzureCredential } = require("@azure/identity");
const { AuthorizationManagementClient } = require("@azure/arm-authorization-profile-2019-03-01-hybrid");
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
const creds = new DefaultAzureCredential();
const client = new AuthorizationManagementClient(creds, subscriptionId);
const resourceGroupName = "testresourceGroupName";
client.permissions.listForResourceGroup(resourceGroupName).then((result) => {
console.log("The result is:");
console.log(result);
}).catch((err) => {
console.log("An error occurred:");
console.error(err);
});
browser - Authentication, client creation, and listForResourceGroup permissions as an example written in JavaScript.
In browser applications, we recommend using the InteractiveBrowserCredential
that interactively authenticates using the default system browser.
Sample code
<!DOCTYPE html>
<html lang="en">
<head>
<title>@azure/arm-authorization-profile-2019-03-01-hybrid sample</title>
<script src="node_modules/@azure/ms-rest-azure-js/dist/msRestAzure.js"></script>
<script src="node_modules/@azure/identity/dist/index.js"></script>
<script src="node_modules/@azure/arm-authorization-profile-2019-03-01-hybrid/dist/arm-authorization-profile-2019-03-01-hybrid.js"></script>
<script type="text/javascript">
const subscriptionId = "<Subscription_Id>";
const credential = new InteractiveBrowserCredential(
{
clientId: "<client id for your Azure AD app>",
tenantId: "<optional tenant for your organization>"
});
const client = new Azure.ArmAuthorizationProfile20190301Hybrid.AuthorizationManagementClient(creds, subscriptionId);
const resourceGroupName = "testresourceGroupName";
client.permissions.listForResourceGroup(resourceGroupName).then((result) => {
console.log("The result is:");
console.log(result);
}).catch((err) => {
console.log("An error occurred:");
console.error(err);
});
</script>
</head>
<body></body>
</html>
Related projects