다음을 통해 공유


Invoke-AzRestMethod

Azure 리소스 관리 엔드포인트에 대한 HTTP 요청 생성 및 수행만

Syntax

Invoke-AzRestMethod
      -Path <String>
      [-Method <String>]
      [-Payload <String>]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Invoke-AzRestMethod
      [-SubscriptionId <String>]
      [-ResourceGroupName <String>]
      [-ResourceProviderName <String>]
      [-ResourceType <String[]>]
      [-Name <String[]>]
      -ApiVersion <String>
      [-Method <String>]
      [-Payload <String>]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Invoke-AzRestMethod
      [-Uri] <Uri>
      [-ResourceId <Uri>]
      [-Method <String>]
      [-Payload <String>]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

Azure 리소스 관리 엔드포인트에 대한 HTTP 요청 생성 및 수행만

예제

예 1

Invoke-AzRestMethod -Path "/subscriptions/{subscription}/resourcegroups/{resourcegroup}/providers/microsoft.operationalinsights/workspaces/{workspace}?api-version={API}" -Method GET

Headers    : {[Cache-Control, System.String[]], [Pragma, System.String[]], [x-ms-request-id, System.String[]], [Strict-Transport-Security, System.String[]]…}
Version    : 1.1
StatusCode : 200
Method     : GET
Content    : {
               "properties": {
                 "source": "Azure",
                 "customerId": "{customerId}",
                 "provisioningState": "Succeeded",
                 "sku": {
                   "name": "pergb2018",
                   "maxCapacityReservationLevel": 3000,
                   "lastSkuUpdate": "Mon, 25 May 2020 11:10:01 GMT"
                 },
                 "retentionInDays": 30,
                 "features": {
                   "legacy": 0,
                   "searchVersion": 1,
                   "enableLogAccessUsingOnlyResourcePermissions": true
                 },
                 "workspaceCapping": {
                   "dailyQuotaGb": -1.0,
                   "quotaNextResetTime": "Thu, 18 Jun 2020 05:00:00 GMT",
                   "dataIngestionStatus": "RespectQuota"
                 },
                 "enableFailover": false,
                 "publicNetworkAccessForIngestion": "Enabled",
                 "publicNetworkAccessForQuery": "Enabled",
                 "createdDate": "Mon, 25 May 2020 11:10:01 GMT",
                 "modifiedDate": "Mon, 25 May 2020 11:10:02 GMT"
               },
               "id": "/subscriptions/{subscription}/resourcegroups/{resourcegroup}/providers/microsoft.operationalinsights/workspaces/{workspace}",
               "name": "{workspace}",
               "type": "Microsoft.OperationalInsights/workspaces",
               "location": "eastasia",
               "tags": {}
             }

경로별로 로그 분석 작업 영역을 가져옵니다. 관리 평면 API만 지원하며 Azure 환경 설정에 따라 Azure Resource Manager의 호스트 이름이 추가됩니다.

예제 2

Invoke-AzRestMethod https://graph.microsoft.com/v1.0/me

Headers    : {[Date, System.String[]], [Cache-Control, System.String[]], [Transfer-Encoding, System.String[]], [Strict-Transport-Security, System.String[]]…}
Version    : 1.1
StatusCode : 200
Method     : GET
Content    : {"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users/$entity","businessPhones":["......}

MicrosoftGraph API를 통해 현재 로그인한 사용자를 가져옵니다. 이 예제는 .에 해당합니다 Get-AzADUser -SignedIn.

예 3

$subscriptionId = (Get-AzContext).Subscription.ID
Invoke-AzRestMethod -SubscriptionId $subscriptionId -ResourceGroupName "test-group" -ResourceProviderName Microsoft.AppPlatform -ResourceType Spring,apps -Name "test-spring-service" -ApiVersion 2020-07-01 -Method GET

Headers    : {[Cache-Control, System.String[]], [Pragma, System.String[]], [Vary, System.String[]], [x-ms-request-id,
             System.String[]]…}
Version    : 1.1
StatusCode : 200
Method     : GET
Content    : {"value":[{"properties":{"public":true,"url":"https://test-spring-service-demo.azuremicroservices.io","provisioni
             ngState":"Succeeded","activeDeploymentName":"default","fqdn":"test-spring-service.azuremicroservices.io","httpsOn
             ly":false,"createdTime":"2022-06-22T02:57:13.272Z","temporaryDisk":{"sizeInGB":5,"mountPath":"/tmp"},"pers
             istentDisk":{"sizeInGB":0,"mountPath":"/persistent"}},"type":"Microsoft.AppPlatform/Spring/apps","identity
             ":null,"location":"eastus","id":"/subscriptions/$subscriptionId/resourceGroups/test-group/providers/Microsoft.AppPlatform/Spring/test-spring-service/apps/demo","name":"demo"},{"properties":{"publ
             ic":false,"provisioningState":"Succeeded","activeDeploymentName":"deploy01","fqdn":"test-spring-service.azuremicr
             oservices.io","httpsOnly":false,"createdTime":"2022-06-22T07:46:54.9Z","temporaryDisk":{"sizeInGB":5,"moun
             tPath":"/tmp"},"persistentDisk":{"sizeInGB":0,"mountPath":"/persistent"}},"type":"Microsoft.AppPlatform/Sp
             ring/apps","identity":null,"location":"eastus","id":"/subscriptions/$subscriptionId/r
             esourceGroups/test-group/providers/Microsoft.AppPlatform/Spring/test-spring-service/apps/pwsh01","name":"pwsh0
             1"}]}

Spring Service "test-spring-service"에서 앱 나열

예시 4

$subscriptionId = (Get-AzContext).Subscription.ID
Invoke-AzRestMethod -SubscriptionId $subscriptionId -ResourceGroupName "test-group" -ResourceProviderName Microsoft.AppPlatform -ResourceType Spring -Name "test-spring-service","demo" -ApiVersion 2020-07-01 -Method GET

Headers    : {[Cache-Control, System.String[]], [Pragma, System.String[]], [Vary, System.String[]], [x-ms-request-id,
             System.String[]]…}
Version    : 1.1
StatusCode : 200
Method     : GET
Content    : {"properties":{"public":true,"url":"https://test-spring-service-demo.azuremicroservices.io","provisioningState":"
             Succeeded","activeDeploymentName":"default","fqdn":"test-spring-service.azuremicroservices.io","httpsOnly":false,
             "createdTime":"2022-06-22T02:57:13.272Z","temporaryDisk":{"sizeInGB":5,"mountPath":"/tmp"},"persistentDisk
             ":{"sizeInGB":0,"mountPath":"/persistent"}},"type":"Microsoft.AppPlatform/Spring/apps","identity":null,"lo
             cation":"eastus","id":"/subscriptions/$subscriptionId/resourceGroups/test-group/pr
             oviders/Microsoft.AppPlatform/Spring/test-spring-service/apps/demo","name":"demo"}

Spring 클라우드 서비스 "test-spring-service"에서 앱 "데모" 가져오기

예시 5

# Replace *** with real values
$payload = @{principalId="***"; resourceId="***"; appRoleId="***"} | ConvertTo-Json -Depth 3
Invoke-AzRestMethod -Method POST -Uri https://graph.microsoft.com/v1.0/servicePrincipals/***/appRoleAssignedTo -Payload $payload

Microsoft Graph API를 호출하여 해시 테이블을 생성하고, JSON 문자열로 변환하고, 페이로드를 전달하여 앱 역할을 할당합니다 Invoke-AzRestMethod.

매개 변수

-ApiVersion

API 버전

형식:String
Position:Named
기본값:None
필수:True
Accept pipeline input:False
Accept wildcard characters:False

-AsJob

백그라운드에서 cmdlet 실행

형식:SwitchParameter
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

형식:SwitchParameter
Aliases:cf
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

형식:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-Method

Http 메서드

형식:String
허용되는 값:GET, POST, PUT, PATCH, DELETE
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

대상 리소스 이름 목록

형식:String[]
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

대상 리소스 URL의 경로입니다. Resource Manager의 호스트 이름을 추가하면 안 됩니다.

형식:String
Position:Named
기본값:None
필수:True
Accept pipeline input:False
Accept wildcard characters:False

-Payload

JSON 형식 페이로드

형식:String
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

대상 리소스 그룹 이름

형식:String
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceId

호출하는 REST API에서 지정한 식별자 URI입니다. Azure Resource Manager의 리소스 ID가 되어서는 안 됩니다.

형식:Uri
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceProviderName

대상 리소스 공급자 이름

형식:String
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceType

대상 리소스 종류 목록

형식:String[]
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-SubscriptionId

대상 구독 ID

형식:String
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

-Uri

Azure 리소스의 균일한 리소스 식별자입니다. 대상 리소스는 Azure AD 인증을 지원해야 하며 액세스 토큰은 리소스 ID에 따라 파생됩니다. 리소스 ID가 설정되지 않은 경우 해당 값은 현재 Azure Environment의 기본 제공 서비스 접미사에 따라 파생됩니다.

형식:Uri
Position:1
기본값:None
필수:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
Aliases:wi
Position:Named
기본값:None
필수:False
Accept pipeline input:False
Accept wildcard characters:False

입력

System.string

출력

PSHttpResponse