Namespace: microsoft.graph
Adiciona uma senha forte ou segredo a um aplicativo. Você também pode adicionar senhas ao criar o aplicativo.
Essa API está disponível nas seguintes implantações de nuvem nacional.
| Serviço global |
Governo dos EUA L4 |
US Government L5 (DOD) |
China operada pela 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Permissões
Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.
| Tipo de permissão |
Permissões menos privilegiadas |
Permissões com privilégios mais elevados |
| Delegado (conta corporativa ou de estudante) |
Application.ReadWrite.All |
Directory.ReadWrite.All |
| Delegado (conta pessoal da Microsoft) |
Application.ReadWrite.All |
Indisponível. |
| Application |
Application.ReadWrite.OwnedBy |
Application.ReadWrite.All, Directory.ReadWrite.All |
Importante
Para acesso delegado usando contas corporativas ou de estudante, o usuário conectado deve receber uma função do Microsoft Entra com suporte ou uma função personalizada que conceda as permissões necessárias para esta operação. Esta operação dá suporte às seguintes funções internas, que fornecem apenas o menor privilégio necessário:
- Um usuário membro não administrador com permissões de usuário padrão - para aplicativos que possuem
- Desenvolvedor de Aplicativos - para aplicativos que possuem
- Administrador de Aplicativos de Nuvem
- Administrador de Aplicativos
Solicitação HTTP
Você pode abordar o aplicativo usando sua id ou appId.
id e appId são chamados de ID do Objeto e ID do Aplicativo (Cliente), respectivamente, em registros de aplicativo no centro de administração do Microsoft Entra.
POST /applications/{id}/addPassword
POST /applications(appId='{appId}')/addPassword
| Nome |
Descrição |
| Autorização |
{token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-Type |
application/json. Obrigatório. |
Corpo da solicitação
No corpo da solicitação, forneça um objeto opcional passwordCredential com as propriedades a seguir.
| Propriedade |
Tipo |
Descrição |
| displayName |
Cadeia de caracteres |
Nome amigável para a senha. Opcional. |
| endDateTime |
DateTimeOffset |
A data e a hora em que a senha expira representada no formato ISO 8601 e está sempre no horário UTC. Por exemplo, meia-noite UTC em 1 de janeiro de 2014 é 2014-01-01T00:00:00Z. Opcional. O valor padrão é "startDateTime + 2 years". |
| startDateTime |
DateTimeOffset |
A data e hora em que a senha se torna válida. O tipo Timestamp representa informações de data e hora usando o formato ISO 8601 e está sempre no horário UTC. Por exemplo, meia-noite UTC em 1 de janeiro de 2014 é 2014-01-01T00:00:00Z. Opcional. O valor padrão é "agora". |
Resposta
Se for bem-sucedido, esse método retornará um código de 200 OK resposta e um novo objeto passwordCredential no corpo da resposta. A propriedade secretText no objeto de resposta contém as senhas/segredos fortes gerados pelo Microsoft Entra ID que têm de 16 a 64 caracteres de comprimento. Não há como recuperar essa senha no futuro.
Exemplos
O exemplo a seguir mostra como chamar essa API.
Solicitação
O exemplo a seguir mostra uma solicitação. A id especificada na solicitação é o valor da propriedade id do aplicativo, não o valor da propriedade appId .
POST https://graph.microsoft.com/v1.0/applications/{id}/addPassword
Content-type: application/json
{
"passwordCredential": {
"displayName": "Password friendly name"
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Applications.Item.AddPassword;
using Microsoft.Graph.Models;
var requestBody = new AddPasswordPostRequestBody
{
PasswordCredential = new PasswordCredential
{
DisplayName = "Password friendly name",
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Applications["{application-id}"].AddPassword.PostAsync(requestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphapplications "github.com/microsoftgraph/msgraph-sdk-go/applications"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphapplications.NewAddPasswordPostRequestBody()
passwordCredential := graphmodels.NewPasswordCredential()
displayName := "Password friendly name"
passwordCredential.SetDisplayName(&displayName)
requestBody.SetPasswordCredential(passwordCredential)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
addPassword, err := graphClient.Applications().ByApplicationId("application-id").AddPassword().Post(context.Background(), requestBody, nil)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.applications.item.addpassword.AddPasswordPostRequestBody addPasswordPostRequestBody = new com.microsoft.graph.applications.item.addpassword.AddPasswordPostRequestBody();
PasswordCredential passwordCredential = new PasswordCredential();
passwordCredential.setDisplayName("Password friendly name");
addPasswordPostRequestBody.setPasswordCredential(passwordCredential);
PasswordCredential result = graphClient.applications().byApplicationId("{application-id}").addPassword().post(addPasswordPostRequestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const passwordCredential = {
passwordCredential: {
displayName: 'Password friendly name'
}
};
await client.api('/applications/{id}/addPassword')
.post(passwordCredential);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Applications\Item\AddPassword\AddPasswordPostRequestBody;
use Microsoft\Graph\Generated\Models\PasswordCredential;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new AddPasswordPostRequestBody();
$passwordCredential = new PasswordCredential();
$passwordCredential->setDisplayName('Password friendly name');
$requestBody->setPasswordCredential($passwordCredential);
$result = $graphServiceClient->applications()->byApplicationId('application-id')->addPassword()->post($requestBody)->wait();
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Import-Module Microsoft.Graph.Applications
$params = @{
passwordCredential = @{
displayName = "Password friendly name"
}
}
Add-MgApplicationPassword -ApplicationId $applicationId -BodyParameter $params
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.applications.item.add_password.add_password_post_request_body import AddPasswordPostRequestBody
from msgraph.generated.models.password_credential import PasswordCredential
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = AddPasswordPostRequestBody(
password_credential = PasswordCredential(
display_name = "Password friendly name",
),
)
result = await graph_client.applications.by_application_id('application-id').add_password.post(request_body)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Resposta
O exemplo a seguir mostra a resposta.
HTTP/1.1 200 OK
Content-type: application/json
{
"customKeyIdentifier": null,
"endDateTime": "2021-09-09T19:50:29.3086381Z",
"keyId": "f0b0b335-1d71-4883-8f98-567911bfdca6",
"startDateTime": "2019-09-09T19:50:29.3086381Z",
"secretText": "[6gyXA5S20@MN+WRXAJ]I-TO7g1:h2P8",
"hint": "[6g",
"displayName": "Password friendly name"
}