Skip to content

Commit

Permalink
Move identity docs to dedicated folder
Browse files Browse the repository at this point in the history
  • Loading branch information
scottaddie committed Sep 26, 2024
1 parent 5bd8516 commit 113a65a
Show file tree
Hide file tree
Showing 7 changed files with 60 additions and 39 deletions.
22 changes: 21 additions & 1 deletion .openpublishing.redirection.json
Original file line number Diff line number Diff line change
Expand Up @@ -1675,6 +1675,26 @@
{
"source_path": "articles/ai/passwordless-connections.md",
"redirect_url": "/azure/developer/ai/keyless-connections"
}
},
{
"source_path": "articles/java/sdk/identity.md",
"redirect_url": "/azure/developer/java/sdk/authentication/overview"
},
{
"source_path": "articles/java/sdk/identity-azure-hosted-auth.md",
"redirect_url": "/azure/developer/java/sdk/authentication/azure-hosted-apps"
},
{
"source_path": "articles/java/sdk/identity-service-principal-auth.md",
"redirect_url": "/azure/developer/java/sdk/authentication/service-principal"
},
{
"source_path": "articles/java/sdk/identity-dev-env-auth.md",
"redirect_url": "/azure/developer/java/sdk/authentication/dev-env"
},
{
"source_path": "articles/java/sdk/identity-user-auth.md",
"redirect_url": "/azure/developer/java/sdk/authentication/user"
}
]
}
1 change: 1 addition & 0 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,6 @@
/articles/azure-cli/ @alexwolfmsft

# Azure SDK authentication topics
/articles/java/sdk/authentication/ @scottaddie @g2vinay @billwert
/articles/javascript/sdk/authentication/ @scottaddie @KarishmaGhiya @maorleger
/articles/python/sdk/authentication/ @scottaddie @pvaneck @xiangyan99
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ This article covers the following subjects:
* [Default Azure credential](#default-azure-credential)
* [Managed Identity credential](#managed-identity-credential)

For troubleshooting authentication issues related to Azure-hosted applications, see [Troubleshoot Azure-hosted application authentication](troubleshooting-authentication-azure-hosted.md).
For troubleshooting authentication issues related to Azure-hosted applications, see [Troubleshoot Azure-hosted application authentication](../troubleshooting-authentication-azure-hosted.md).

## Default Azure credential

`DefaultAzureCredential` is appropriate for most scenarios where the application ultimately runs in the Azure Cloud. `DefaultAzureCredential` combines credentials that are commonly used to authenticate when deployed, with credentials that are used to authenticate in a development environment. `DefaultAzureCredential` attempts to authenticate via the following mechanisms in order:

![DefaultAzureCredential authentication flow](./media/defaultazurecredential.svg)
![DefaultAzureCredential authentication flow](../media/defaultazurecredential.svg)

* Environment - `DefaultAzureCredential` reads account information specified via [environment variables](#environment-variables) and use it to authenticate.
* Managed Identity - If the application deploys to an Azure host with Managed Identity enabled, `DefaultAzureCredential` authenticates with that account.
Expand Down Expand Up @@ -77,7 +77,7 @@ SecretClient client = new SecretClientBuilder()

The following example demonstrates authenticating the `SecretClient` from the [azure-security-keyvault-secrets][secrets_client_library] client library using `DefaultAzureCredential`, on a workstation where IntelliJ IDEA is installed, and the user has signed in with an Azure account to the Azure Toolkit for IntelliJ.

For more information on configuring your IntelliJ IDEA, see [Sign in Azure Toolkit for IntelliJ for IntelliJCredential](identity-dev-env-auth.md#sign-in-azure-toolkit-for-intellij-for-intellijcredential).
For more information on configuring your IntelliJ IDEA, see [Sign in Azure Toolkit for IntelliJ for IntelliJCredential](dev-env.md#sign-in-azure-toolkit-for-intellij-for-intellijcredential).

```java
/**
Expand Down Expand Up @@ -154,13 +154,13 @@ Configuration is attempted in this order. For example, if values for a client se

This article covered authentication for applications hosted in Azure. This form of authentication is one of multiple ways you can authenticate in the Azure SDK for Java. The following articles describe other ways:

* [Azure authentication in development environments](identity-dev-env-auth.md)
* [Authentication with service principals](identity-service-principal-auth.md)
* [Authentication with user credentials](identity-user-auth.md)
* [Azure authentication in development environments](dev-env.md)
* [Authentication with service principals](service-principal.md)
* [Authentication with user credentials](user.md)

If you run into issues related to Azure-hosted application authentication, see [Troubleshoot Azure-hosted application authentication](troubleshooting-authentication-azure-hosted.md).
If you run into issues related to Azure-hosted application authentication, see [Troubleshoot Azure-hosted application authentication](../troubleshooting-authentication-azure-hosted.md).

After you've mastered authentication, see [Configure logging in the Azure SDK for Java](logging-overview.md) for information on the logging functionality provided by the SDK.
After you've mastered authentication, see [Configure logging in the Azure SDK for Java](../logging-overview.md) for information on the logging functionality provided by the SDK.

<!-- LINKS -->
[secrets_client_library]: https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/keyvault/azure-security-keyvault-secrets
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ This article covers the following subjects:
* [IntelliJ credential](#intellij-credential)
* [Visual Studio Code credential](#visual-studio-code-credential)

For troubleshooting development environment authentication issues, see [Troubleshoot development environment authentication](troubleshooting-authentication-dev-env.md).
For troubleshooting development environment authentication issues, see [Troubleshoot development environment authentication](../troubleshooting-authentication-dev-env.md).

## Device code credential

Expand Down Expand Up @@ -197,13 +197,13 @@ SecretClient client = new SecretClientBuilder()

This article covered authentication during development using credentials available on your computer. This form of authentication is one of multiple ways you can authenticate in the Azure SDK for Java. The following articles describe other ways:

* [Authenticating applications hosted in Azure](identity-azure-hosted-auth.md)
* [Authentication with service principals](identity-service-principal-auth.md)
* [Authentication with user credentials](identity-user-auth.md)
* [Authenticating applications hosted in Azure](azure-hosted-apps.md)
* [Authentication with service principals](service-principal.md)
* [Authentication with user credentials](user.md)

If you run into issues related to development environment authentication, see [Troubleshoot development environment authentication](troubleshooting-authentication-dev-env.md).
If you run into issues related to development environment authentication, see [Troubleshoot development environment authentication](../troubleshooting-authentication-dev-env.md).

After you've mastered authentication, see [Configure logging in the Azure SDK for Java](logging-overview.md) for information on the logging functionality provided by the SDK.
After you've mastered authentication, see [Configure logging in the Azure SDK for Java](../logging-overview.md) for information on the logging functionality provided by the SDK.

<!-- LINKS -->
[secrets_client_library]: https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/keyvault/azure-security-keyvault-secrets
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@ This article provides an overview of the Java Azure Identity library, which prov

The Azure Identity library currently supports:

* [Azure authentication in Java development environments](identity-dev-env-auth.md), which enables:
* IDEA IntelliJ authentication, with the sign-in information retrieved from the [Azure Toolkit for IntelliJ](../toolkit-for-intellij/index.yml).
* [Azure authentication in Java development environments](dev-env.md), which enables:
* IDEA IntelliJ authentication, with the sign-in information retrieved from the [Azure Toolkit for IntelliJ](../../toolkit-for-intellij/index.yml).
* Visual Studio Code authentication, with the sign-in information saved in [Azure plugin for Visual Studio Code](https://code.visualstudio.com/docs/azure/extensions).
* Azure CLI authentication, with the sign-in information saved in the [Azure CLI](/cli/azure/what-is-azure-cli)
* [Authenticating applications hosted in Azure](identity-azure-hosted-auth.md), which enables:
* [Authenticating applications hosted in Azure](azure-hosted-apps.md), which enables:
* Default Azure Credential Authentication
* Managed Identity Authentication
* [Authentication with service principals](identity-service-principal-auth.md), which enables:
* [Authentication with service principals](service-principal.md), which enables:
* Client Secret Authentication
* Client Certificate Authentication
* [Authentication with user credentials](identity-user-auth.md), which enables:
* [Authentication with user credentials](user.md), which enables:
* Interactive browser authentication
* Device code authentication
* Username/password authentication
Expand All @@ -52,11 +52,11 @@ A credential is a class that contains or can obtain the data needed for a servic

The Azure Identity library focuses on OAuth authentication with Microsoft Entra ID, and it offers various credential classes that can acquire a Microsoft Entra token to authenticate service requests. All of the credential classes in this library are implementations of the `TokenCredential` abstract class in [azure-core](https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/core), and you can use any of them to construct service clients that can authenticate with a `TokenCredential`.

`DefaultAzureCredential` is appropriate for most scenarios where the application is intended to ultimately run in the Azure Cloud. `DefaultAzureCredential` combines credentials that are commonly used to authenticate when deployed, with credentials that are used to authenticate in a development environment. For more information, including examples using `DefaultAzureCredential`, see the [Default Azure credential](identity-azure-hosted-auth.md#default-azure-credential) section of [Authenticating Azure-hosted Java applications](identity-azure-hosted-auth.md).
`DefaultAzureCredential` is appropriate for most scenarios where the application is intended to ultimately run in the Azure Cloud. `DefaultAzureCredential` combines credentials that are commonly used to authenticate when deployed, with credentials that are used to authenticate in a development environment. For more information, including examples using `DefaultAzureCredential`, see the [Default Azure credential](azure-hosted-apps.md#default-azure-credential) section of [Authenticating Azure-hosted Java applications](azure-hosted-apps.md).

## Examples

As noted in [Use the Azure SDK for Java](overview.md#provision-and-manage-azure-resources-with-management-libraries), the management libraries differ slightly. One of the ways they differ is that there are libraries for *consuming* Azure services, called client libraries, and libraries for *managing* Azure services, called management libraries. In the following sections, there's a quick overview of authenticating in both client and management libraries.
As noted in [Use the Azure SDK for Java](../overview.md#provision-and-manage-azure-resources-with-management-libraries), the management libraries differ slightly. One of the ways they differ is that there are libraries for *consuming* Azure services, called client libraries, and libraries for *managing* Azure services, called management libraries. In the following sections, there's a quick overview of authenticating in both client and management libraries.

### Authenticate Azure client libraries

Expand Down Expand Up @@ -93,13 +93,13 @@ AzureResourceManager azureResourceManager = AzureResourceManager.authenticate(

## Troubleshooting

For guidance, see [Troubleshoot Azure Identity authentication issues](troubleshooting-authentication-overview.md).
For guidance, see [Troubleshoot Azure Identity authentication issues](../troubleshooting-authentication-overview.md).

## Next steps

This article introduced the Azure Identity functionality available in the Azure SDK for Java. It described `DefaultAzureCredential` as common and appropriate in many cases. The following articles describe other ways to authenticate using the Azure Identity library, and provide more information about `DefaultAzureCredential`:

* [Azure authentication in development environments](identity-dev-env-auth.md)
* [Authenticating applications hosted in Azure](identity-azure-hosted-auth.md)
* [Authentication with service principals](identity-service-principal-auth.md)
* [Authentication with user credentials](identity-user-auth.md)
* [Azure authentication in development environments](dev-env.md)
* [Authenticating applications hosted in Azure](azure-hosted-apps.md)
* [Authentication with service principals](service-principal.md)
* [Authentication with user credentials](user.md)
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ This article looks at how the Azure Identity library supports Microsoft Entra to
* [Client secret credential](#client-secret-credential)
* [Client certificate credential](#client-certificate-credential)

For more information, see [Application and service principal objects in Microsoft Entra ID](/azure/active-directory/develop/app-objects-and-service-principals). For troubleshooting service principal authentication issues, see [Troubleshoot service principal authentication](troubleshooting-authentication-service-principal.md).
For more information, see [Application and service principal objects in Microsoft Entra ID](/azure/active-directory/develop/app-objects-and-service-principals). For troubleshooting service principal authentication issues, see [Troubleshoot service principal authentication](../troubleshooting-authentication-service-principal.md).

## Create a service principal with the Azure CLI

Expand Down Expand Up @@ -108,13 +108,13 @@ SecretClient client = new SecretClientBuilder()

This article covered authentication via service principal. This form of authentication is one of multiple ways you can authenticate in the Azure SDK for Java. The following articles describe other ways:

* [Azure authentication in development environments](identity-dev-env-auth.md)
* [Authenticating applications hosted in Azure](identity-azure-hosted-auth.md)
* [Authentication with User Credentials](identity-user-auth.md)
* [Azure authentication in development environments](dev-env.md)
* [Authenticating applications hosted in Azure](azure-hosted-apps.md)
* [Authentication with User Credentials](user.md)

If you run into issues related to service principal authentication, see [Troubleshoot service principal authentication](troubleshooting-authentication-service-principal.md).
If you run into issues related to service principal authentication, see [Troubleshoot service principal authentication](../troubleshooting-authentication-service-principal.md).

After you've mastered authentication, see [Configure logging in the Azure SDK for Java](logging-overview.md) for information on the logging functionality provided by the SDK.
After you've mastered authentication, see [Configure logging in the Azure SDK for Java](../logging-overview.md) for information on the logging functionality provided by the SDK.

<!-- LINKS -->
[secrets_client_library]: https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/keyvault/azure-security-keyvault-secrets
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ This article covers the following subjects:
* [Interactive browser credential](#interactive-browser-credential)
* [Username password credential](#username-password-credential)

For troubleshooting user credential authentication issues, see [Troubleshoot user credential authentication](troubleshooting-authentication-user-credential.md).
For troubleshooting user credential authentication issues, see [Troubleshoot user credential authentication](../troubleshooting-authentication-user-credential.md).

## Device code credential

Expand Down Expand Up @@ -120,13 +120,13 @@ For more information, see [Microsoft identity platform and OAuth 2.0 Resource Ow

This article covered authentication with user credentials. This form of authentication is one of multiple ways you can authenticate in the Azure SDK for Java. The following articles describe other ways:

* [Azure authentication in development environments](identity-dev-env-auth.md)
* [Authenticating applications hosted in Azure](identity-azure-hosted-auth.md)
* [Authentication with service principals](identity-service-principal-auth.md)
* [Azure authentication in development environments](dev-env.md)
* [Authenticating applications hosted in Azure](azure-hosted-apps.md)
* [Authentication with service principals](service-principal.md)

If you run into issues related to user credential authentication, see [Troubleshoot user credential authentication](troubleshooting-authentication-user-credential.md).
If you run into issues related to user credential authentication, see [Troubleshoot user credential authentication](../troubleshooting-authentication-user-credential.md).

After you've mastered authentication, see [Configure logging in the Azure SDK for Java](logging-overview.md) for information on the logging functionality provided by the SDK.
After you've mastered authentication, see [Configure logging in the Azure SDK for Java](../logging-overview.md) for information on the logging functionality provided by the SDK.

<!-- LINKS -->
[secrets_client_library]: https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/keyvault/azure-security-keyvault-secrets

0 comments on commit 113a65a

Please sign in to comment.