Update federatedIdentityCredential
命名空间:microsoft.graph
重要
Microsoft Graph版本下的 /beta API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
更新 federatedIdentityCredential 对象的 属性。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
Application.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
Application.ReadWrite.All |
| 应用程序 |
Application.ReadWrite.OwnedBy、Application.ReadWrite.All、Directory.Read.All |
HTTP 请求
PATCH /applications/{applicationId}/federatedIdentityCredentials/{federatedIdentityCredentialId}
PATCH /applications/{applicationId}/federatedIdentityCredentials/{federatedIdentityCredentialName}
| 名称 |
说明 |
| Authorization |
Bearer {token}。必需。 |
| Content-Type |
application/json. Required. |
请求正文
在请求正文中,仅 提供应更新的属性的值。未包含在请求正文中的现有属性将保留其以前的值或根据对其他属性值的更改重新计算。
下表指定可更新的属性。
| 属性 |
类型 |
说明 |
| 观众 |
字符串集合 |
可在颁发的令牌中显示的受众列表。 建议的值为 api://AzureADTokenExchange. |
| 说明 |
String |
用户提供的 federatedIdentityCredential 的用途说明。 |
| 发行 |
String |
传入的受信任颁发者 (安全令牌服务) 的 URL。 匹配访问令牌的颁发者声明。 例如,在客户托管密钥方案中,Azure AD 是颁发者,有效值为 https://login.microsoftonline.com/{tenantid}/v2.0。 颁发者 和 主题 的值的组合在应用中必须是唯一的。 |
| subject |
String |
对于 Azure AD 颁发者, objectId servicePrincipal (可以表示可模拟应用的托管标识) 。 与此 GUID 关联的对象需要存在于租户中。对于所有其他颁发者,没有附加验证的字符串
颁发者 和 主题 的值的组合在应用中必须是唯一的。 |
响应
如果成功,此方法返回 204 No Content 响应代码。
示例
请求
PATCH https://graph.microsoft.com/beta/applications/bcd7c908-1c4d-4d48-93ee-ff38349a75c8/federatedIdentityCredentials/15be77d1-1940-43fe-8aae-94a78e078da0
Content-Type: application/json
{
"name": "testing02",
"issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
"subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
"description": "Updated description",
"audiences": [
"api://AzureADTokenExchange"
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var federatedIdentityCredential = new FederatedIdentityCredential
{
Name = "testing02",
Issuer = "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
Subject = "a7d388c3-5e3f-4959-ac7d-786b3383006a",
Description = "Updated description",
Audiences = new List<String>()
{
"api://AzureADTokenExchange"
}
};
await graphClient.Applications["{application-id}"].FederatedIdentityCredentials["{federatedIdentityCredential-id}"]
.Request()
.UpdateAsync(federatedIdentityCredential);
const options = {
authProvider,
};
const client = Client.init(options);
const federatedIdentityCredential = {
name: 'testing02',
issuer: 'https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0',
subject: 'a7d388c3-5e3f-4959-ac7d-786b3383006a',
description: 'Updated description',
audiences: [
'api://AzureADTokenExchange'
]
};
await client.api('/applications/bcd7c908-1c4d-4d48-93ee-ff38349a75c8/federatedIdentityCredentials/15be77d1-1940-43fe-8aae-94a78e078da0')
.version('beta')
.update(federatedIdentityCredential);
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/beta/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/applications/bcd7c908-1c4d-4d48-93ee-ff38349a75c8/federatedIdentityCredentials/15be77d1-1940-43fe-8aae-94a78e078da0"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphFederatedIdentityCredential *federatedIdentityCredential = [[MSGraphFederatedIdentityCredential alloc] init];
[federatedIdentityCredential setName:@"testing02"];
[federatedIdentityCredential setIssuer:@"https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0"];
[federatedIdentityCredential setSubject:@"a7d388c3-5e3f-4959-ac7d-786b3383006a"];
[federatedIdentityCredential setDescription:@"Updated description"];
NSMutableArray *audiencesList = [[NSMutableArray alloc] init];
[audiencesList addObject: @"api://AzureADTokenExchange"];
[federatedIdentityCredential setAudiences:audiencesList];
NSError *error;
NSData *federatedIdentityCredentialData = [federatedIdentityCredential getSerializedDataWithError:&error];
[urlRequest setHTTPBody:federatedIdentityCredentialData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
FederatedIdentityCredential federatedIdentityCredential = new FederatedIdentityCredential();
federatedIdentityCredential.name = "testing02";
federatedIdentityCredential.issuer = "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0";
federatedIdentityCredential.subject = "a7d388c3-5e3f-4959-ac7d-786b3383006a";
federatedIdentityCredential.description = "Updated description";
LinkedList<String> audiencesList = new LinkedList<String>();
audiencesList.add("api://AzureADTokenExchange");
federatedIdentityCredential.audiences = audiencesList;
graphClient.applications("bcd7c908-1c4d-4d48-93ee-ff38349a75c8").federatedIdentityCredentials("15be77d1-1940-43fe-8aae-94a78e078da0")
.buildRequest()
.patch(federatedIdentityCredential);
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewFederatedIdentityCredential()
name := "testing02"
requestBody.SetName(&name)
issuer := "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0"
requestBody.SetIssuer(&issuer)
subject := "a7d388c3-5e3f-4959-ac7d-786b3383006a"
requestBody.SetSubject(&subject)
description := "Updated description"
requestBody.SetDescription(&description)
requestBody.SetAudiences( []String {
"api://AzureADTokenExchange",
}
applicationId := "application-id"
federatedIdentityCredentialId := "federatedIdentityCredential-id"
graphClient.ApplicationsById(&applicationId).FederatedIdentityCredentialsById(&federatedIdentityCredentialId).Patch(requestBody)
Import-Module Microsoft.Graph.Applications
$params = @{
Name = "testing02"
Issuer = "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0"
Subject = "a7d388c3-5e3f-4959-ac7d-786b3383006a"
Description = "Updated description"
Audiences = @(
"api://AzureADTokenExchange"
)
}
Update-MgApplicationFederatedIdentityCredential -ApplicationId $applicationId -FederatedIdentityCredentialId $federatedIdentityCredentialId -BodyParameter $params
响应
HTTP/1.1 204 No Content