Skip to content

Commit

Permalink
add openid connect in authentication settings (#4233)
Browse files Browse the repository at this point in the history
  • Loading branch information
solankisamir authored and hovsepm committed Oct 15, 2018
1 parent ef8946d commit 46689b8
Show file tree
Hide file tree
Showing 4 changed files with 295 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,9 @@
},
"ApiManagementCreateApiRevision": {
"$ref": "./examples/ApiManagementCreateApiRevision.json"
},
"ApiManagementCreateApiWithOpenIdConnect": {
"$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json"
}
},
"consumes": [
Expand Down Expand Up @@ -3740,7 +3743,7 @@
{
"value": "soap",
"description": "Imports the Soap API having a SOAP front end.",
"name": "SoapPassThrough"
"name": "SoapPassThrough"
}
]
}
Expand Down Expand Up @@ -3905,7 +3908,7 @@
},
"apiRevisionDescription": {
"type": "string",
"description": "Description of the Api Revision.",
"description": "Description of the Api Revision.",
"maxLength": 256
},
"apiVersionDescription": {
Expand Down Expand Up @@ -4104,6 +4107,14 @@
"oAuth2": {
"$ref": "#/definitions/OAuth2AuthenticationSettingsContract",
"description": "OAuth2 Authentication settings"
},
"openid": {
"$ref": "#/definitions/OpenIdAuthenticationSettingsContract",
"description": "OpenID Connect Authentication Settings"
},
"subscriptionKeyRequired": {
"type": "boolean",
"description": "Specifies whether subscription key is required during call to this API, true - API is included into closed products only, false - API is included into open products alone, null - there is a mix of products."
}
},
"description": "API Authentication Settings."
Expand All @@ -4121,6 +4132,44 @@
},
"description": "API OAuth2 Authentication settings details."
},
"OpenIdAuthenticationSettingsContract": {
"properties": {
"openidProviderId": {
"type": "string",
"description": "OAuth authorization server identifier."
},
"bearerTokenSendingMethods": {
"description": "How to send token to the server.",
"type": "array",
"items": {
"$ref": "#/definitions/BearerTokenSendingMethodsContract"
}
}
},
"description": "API OAuth2 Authentication settings details."
},
"BearerTokenSendingMethodsContract": {
"type": "string",
"description": "Form of an authorization grant, which the client uses to request the access token.",
"enum": [
"authorizationHeader",
"query"
],
"x-ms-enum": {
"modelAsString": true,
"name": "bearerTokenSendingMethods",
"values": [
{
"value": "authorizationHeader",
"description": "Access token will be transmitted in the Authorization header using Bearer schema"
},
{
"value": "query",
"description": "Access token will be transmitted as query parameters."
}
]
}
},
"OperationCollection": {
"properties": {
"value": {
Expand Down Expand Up @@ -4511,7 +4560,7 @@
"description": "Text describing the issue."
},
"createdDate": {
"type":"string",
"type": "string",
"format": "date-time",
"description": "Date and time when the issue was created."
},
Expand Down Expand Up @@ -4608,7 +4657,7 @@
"description": "Comment text."
},
"createdDate": {
"type":"string",
"type": "string",
"format": "date-time",
"description": "Date and time when the comment was created."
},
Expand Down Expand Up @@ -4663,7 +4712,7 @@
"description": "Filename by which the binary data will be saved."
},
"contentFormat": {
"type":"string",
"type": "string",
"description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property."
},
"content": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
{
"parameters": {
"serviceName": "apimService1",
"resourceGroupName": "rg1",
"api-version": "2018-01-01",
"subscriptionId": "subid",
"apiId": "tempgroup",
"parameters": {
"properties": {
"displayName": "Swagger Petstore",
"description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.",
"serviceUrl": "http://petstore.swagger.io/v2",
"path": "petstore",
"protocols": [
"https"
],
"authenticationSettings": {
"openid": {
"openidProviderId": "testopenid",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
}
},
"subscriptionKeyParameterNames": {
"header": "Ocp-Apim-Subscription-Key",
"query": "subscription-key"
}
}
}
},
"responses": {
"201": {
"body": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230",
"type": "Microsoft.ApiManagement/service/apis",
"name": "58da4c4ccdae970a08121230",
"properties": {
"displayName": "Swagger Petstore",
"apiRevision": "1",
"description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.",
"serviceUrl": "http://petstore.swagger.io/v2",
"path": "petstore",
"protocols": [
"https"
],
"authenticationSettings": {
"openid": {
"openidProviderId": "testopenid",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
}
},
"subscriptionKeyParameterNames": {
"header": "Ocp-Apim-Subscription-Key",
"query": "subscription-key"
},
"isCurrent": true
}
}
},
"200": {
"body": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230",
"type": "Microsoft.ApiManagement/service/apis",
"name": "58da4c4ccdae970a08121230",
"properties": {
"displayName": "Swagger Petstore",
"apiRevision": "1",
"description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.",
"serviceUrl": "http://petstore.swagger.io/v2",
"path": "petstore",
"protocols": [
"https"
],
"authenticationSettings": {
"openid": {
"openidProviderId": "testopenid",
"bearerTokenSendingMethods": [
"authorizationHeader"
]
}
},
"subscriptionKeyParameterNames": {
"header": "Ocp-Apim-Subscription-Key",
"query": "subscription-key"
},
"isCurrent": true
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,9 @@
},
"ApiManagementCreateApiRevision": {
"$ref": "./examples/ApiManagementCreateApiRevision.json"
},
"ApiManagementCreateApiWithOpenIdConnect": {
"$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json"
}
},
"consumes": [
Expand Down Expand Up @@ -3528,7 +3531,7 @@
{
"value": "soap",
"description": "Imports the Soap API having a SOAP front end.",
"name": "SoapPassThrough"
"name": "SoapPassThrough"
}
]
}
Expand Down Expand Up @@ -3896,6 +3899,14 @@
"oAuth2": {
"$ref": "#/definitions/OAuth2AuthenticationSettingsContract",
"description": "OAuth2 Authentication settings"
},
"openid": {
"$ref": "#/definitions/OpenIdAuthenticationSettingsContract",
"description": "OpenID Connect Authentication Settings"
},
"subscriptionKeyRequired": {
"type": "boolean",
"description": "Specifies whether subscription key is required during call to this API, true - API is included into closed products only, false - API is included into open products alone, null - there is a mix of products."
}
},
"description": "API Authentication Settings."
Expand All @@ -3913,6 +3924,44 @@
},
"description": "API OAuth2 Authentication settings details."
},
"OpenIdAuthenticationSettingsContract": {
"properties": {
"openidProviderId": {
"type": "string",
"description": "OAuth authorization server identifier."
},
"bearerTokenSendingMethods": {
"description": "How to send token to the server.",
"type": "array",
"items": {
"$ref": "#/definitions/BearerTokenSendingMethodsContract"
}
}
},
"description": "API OAuth2 Authentication settings details."
},
"BearerTokenSendingMethodsContract": {
"type": "string",
"description": "Form of an authorization grant, which the client uses to request the access token.",
"enum": [
"authorizationHeader",
"query"
],
"x-ms-enum": {
"modelAsString": true,
"name": "bearerTokenSendingMethods",
"values": [
{
"value": "authorizationHeader",
"description": "Access token will be transmitted in the Authorization header using Bearer schema"
},
{
"value": "query",
"description": "Access token will be transmitted as query parameters."
}
]
}
},
"OperationCollection": {
"properties": {
"value": {
Expand Down Expand Up @@ -4303,7 +4352,7 @@
"description": "Text describing the issue."
},
"createdDate": {
"type":"string",
"type": "string",
"format": "date-time",
"description": "Date and time when the issue was created."
},
Expand Down Expand Up @@ -4400,7 +4449,7 @@
"description": "Comment text."
},
"createdDate": {
"type":"string",
"type": "string",
"format": "date-time",
"description": "Date and time when the comment was created."
},
Expand Down Expand Up @@ -4455,7 +4504,7 @@
"description": "Filename by which the binary data will be saved."
},
"contentFormat": {
"type":"string",
"type": "string",
"description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property."
},
"content": {
Expand Down
Loading

0 comments on commit 46689b8

Please sign in to comment.