Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Azure Active Directory API Deprecated #7352

Closed
jdelforno opened this issue Feb 18, 2020 · 26 comments
Closed

Azure Active Directory API Deprecated #7352

jdelforno opened this issue Feb 18, 2020 · 26 comments
Assignees
Labels
AAD ARM - RBAC customer-reported Issues that are reported by GitHub users external to the Azure organization. Graph.Microsoft Mgmt This issue is related to a management-plane library. needs-author-feedback Workflow: More information is needed from author to address the issue. no-recent-activity There has been no recent activity on this issue. question The issue doesn't require a change to the product in order to be resolved. Most issues start as that

Comments

@jdelforno
Copy link

Make use of the Microsoft Graph API rather than updating the AAD API Endpoint.

You're effectively investing time that's going to be redundant as a rewrite will be required when the Azure AD API reaches EOL.

Learning some Golang atm to contribute but food for thought.

@ArcturusZhang
Copy link
Member

Hi @jdelforno thanks for this issue, but I did not quite understand what you are referring to. Can you be more specific?

@ArcturusZhang ArcturusZhang added AAD ARM - RBAC customer-reported Issues that are reported by GitHub users external to the Azure organization. Graph labels Feb 18, 2020
@ArcturusZhang ArcturusZhang added the Mgmt This issue is related to a management-plane library. label Feb 18, 2020
@jdelforno
Copy link
Author

Hi @jdelforno thanks for this issue, but I did not quite understand what you are referring to. Can you be more specific?

Hey @ArcturusZhang

The Azure AD Graph API ( https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-graph-api ) has been deprecated by Microsoft.

Important
We strongly recommend that you use Microsoft Graph instead of Azure AD Graph API to access Azure Active Directory (Azure AD) resources. Our development efforts are now concentrated on Microsoft Graph and no further enhancements are planned for Azure AD Graph API. There are a very limited number of scenarios for which Azure AD Graph API might still be appropriate; for more information, see the Microsoft Graph or the Azure AD Graph blog post and Migrate Azure AD Graph apps to Microsoft Graph.

As the code states it's using the Azure AD Graph API (graph.windows.net), it should be mentioned somewhere that a refactor is required against those items that require it and to make use of the MS Graph API in future (https://docs.microsoft.com/en-us/graph/api/overview?view=graph-rest-1.0).

Otherwise, people may look at the Azure AD API, get it confused with the MS Graph API and draw the wrong conclusions.

Cheers,
John

@ArcturusZhang
Copy link
Member

Hi @jhendrixMSFT could you bring some context about this?

@jhendrixMSFT
Copy link
Member

@jdelforno hello! The contents of this SDK (excluding the ./storage package) are auto-generated from swagger files in the azure-rest-api-specs repo. If we want to mark the graphrbac package as deprecated it must come from being declared as such in the swagger.

@ArcturusZhang Do we have a swagger for the MS Graph APIs yet?

@ArcturusZhang
Copy link
Member

@jdelforno hello! The contents of this SDK (excluding the ./storage package) are auto-generated from swagger files in the azure-rest-api-specs repo. If we want to mark the graphrbac package as deprecated it must come from being declared as such in the swagger.

@ArcturusZhang Do we have a swagger for the MS Graph APIs yet?

Well, when I search the end point of MS Graph graph.microsoft.com in azure-rest-api-specs, I got nothing. I would say there is no swagger for MS Graph APIs yet

@phenixdotnet
Copy link

phenixdotnet commented Apr 3, 2020

Hi @ArcturusZhang @jhendrixMSFT,
I don't know if you can move away swagger for some part of this sdk but may be you should have a look at this project : https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator
Looks like this tools is used to generate the code for others sdk, may be it can be used to generate the graph API part of this ?

@sirlatrom
Copy link

@phenixdotnet See microsoftgraph/MSGraph-SDK-Code-Generator#53, there is no Golang generator in that project and none has been made yet since it was suggested in 2016.

@phenixdotnet
Copy link

@sirlatrom yes I know that but if the MSGraph code generator is still the way to go (CF microsoftgraph/msgraph-sdk-design#28), it could be possible to write the necessary t4 to get a go sdk. (actually I have a POC with that by the way).
Just need to be sure the MSGraph code generator is not dead and a PR with go lang support would be accepted.

@jdelforno
Copy link
Author

jdelforno commented Jun 18, 2020

Given the Odata information is available here: https://graph.microsoft.com/v1.0/$metadata

Can we somehow convert it via https://github.com/rbeauchamp/Swashbuckle.OData or https://github.com/oasis-tcs/odata-openapi/tree/master/tools#transformjs-for-nodejs to get the desired outcome?

@jdelforno
Copy link
Author

The answer to the above was yes, use: https://github.com/oasis-tcs/odata-openapi/blob/master/tools#transformjs-for-nodejs

Which generates an OpenAPI 3.0 document.

Then use autorest from https://github.com/Azure/AutoRest

To start generating Go.

Fingers crossed..

@ArcturusZhang
Copy link
Member

And for your information, there is a community SDK of msgraph in golang here
MSgraph team develops their own code generator but it does not support golang: https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator

@jdelforno
Copy link
Author

AutoRest doesn't really like OpenAPI 3.0 yet it seems. Adding the -o 2.0 switch to the XLST transform. Trying again.

@ArcturusZhang I recognise and acknowledge both points. However, I won't be programming in Go, I'm only be hoping to have the Terraform Azure AD Provider updated.

Which to my knowledge, they won't use anything that's not part of the Azure repo as a whole =)

@darrelmiller
Copy link
Member

@jdelforno If you are looking for OpenAPI documents that will work with AutoREST, we have these here https://github.com/microsoftgraph/msgraph-sdk-powershell/tree/dev/openApiDocs that we use for the AutoREST PowerShell generation.
We can generate V2 versions of these if the Go generator requires V2. We haven't made a commitment to do Go for Graph yet, but we are investing in our code generation tech this semester so Go support is definitely within the realm of possibility.

@DonovanCharpin
Copy link

Hey @darrelmiller , do you have some news about the Go support for SDK generation?

Also, @phenixdotnet, you say you have a POC, could you share it?

@RickWinter RickWinter added the question The issue doesn't require a change to the product in order to be resolved. Most issues start as that label Jul 19, 2021
@ghost ghost added the needs-team-attention Workflow: This issue needs attention from Azure service team or SDK team label Jul 19, 2021
@baywet
Copy link
Member

baywet commented Feb 22, 2022

Hey everyone 👋
Stumbled on this issue by luck. I'm the main maintainer for the Microsoft Graph Go SDK currently in preview.
Go try it out and don't hesitate to leave feedback over there!

@mbarnes
Copy link
Contributor

mbarnes commented Mar 10, 2022

With the Azure AD Graph deprecation deadline approaching (correction: I see it's been delayed), I'm looking for guidance on how to proceed.

@baywet, was your last comment here addressed to developers or users of azure-sdk-for-go?

I'm not sure whether I'm supposed to abandon azure-sdk-for-go for Microsoft Graph Go SDK, or wait for azure-sdk-for-go to adopt Microsoft Graph Go SDK (or some other solution) under the hood.

@jhendrixMSFT, can you advise?

@jhendrixMSFT
Copy link
Member

While I'll defer to @baywet (I don't work on the MS Graph SDK), the MS Graph SDK is to replace our graphrbac package. So you'd use MS Graph in conjunction with this SDK.

@mblaschke
Copy link

@jhendrixMSFT
Sorry for bringing up this topic again but there is currently no real solution for accessing Azure AD from go. The old azure-sdk is now deprecated, the new azure-sdk doesn't have any AzureAD API support and msgraph-sdk is still in preview and currently not really useable manly due to the package size issue (see microsoftgraph/msgraph-sdk-go#129).

As a developer I'm feeling lost between a deprecated SDK and a not feasible solution for the next months and I'm fearing the deprecation of the Azure AD API "soon".

@jhendrixMSFT
Copy link
Member

Unfortunately, I don't have a good answer at present. I brought this up in our scrum yesterday but nothing concrete has been formed yet.

@tiny-dancer
Copy link

If helpful, another community SDK can be found here https://github.com/manicminer/hamilton, which is used by the azure ad terraform provider.

(I can’t speak to its relation/strategy to the aforementioned preview go sdk, just have followed the azure ad terraform provider progress to MS Graph)

@mblaschke-daimlertruck
Copy link

even if https://github.com/manicminer/hamilton is a good alternative I would be happy if the https://github.com/microsoftgraph/msgraph-sdk-go gets more attention from Microsoft as official product. @baywet is working hard to provide a good sdk.

@jhendrixMSFT
is there any possibility to address this internally to try to get more staff for msgraph-sdk-go? This sdk is as important as azure-sdk-for-go is.

@jhendrixMSFT
Copy link
Member

I agree that getting a solid msgraph-sdk-go is the right long-term solution. While I can't make any promises, I will pass this info along to management in hopes of getting more traction.

@missingcharacter
Copy link

Is https://github.com/microsoftgraph/msgraph-sdk-go the way forward? (I see it is now on version 1.20.0)

@baywet
Copy link
Member

baywet commented Oct 10, 2023

Hey everyone,
Sorry, I forgot to revert here.
The Microsoft Graph Go SDK has been generally available since May the 4th 2023. It's the way forward if you're migrating off Azure AD SDK for Go due to the deprecation of the underlying API and will give you access to many more APIs.
We're refreshing the SDK weekly based on added APIs to the service (hence the already high patch number).
Give it a try and reach out on the other repo if you have questions.

@tadelesh tadelesh added needs-author-feedback Workflow: More information is needed from author to address the issue. and removed needs-team-attention Workflow: This issue needs attention from Azure service team or SDK team labels Dec 26, 2023
Copy link

Hi @jdelforno. Thank you for opening this issue and giving us the opportunity to assist. To help our team better understand your issue and the details of your scenario please provide a response to the question asked above or the information requested above. This will help us more accurately address your issue.

Copy link

github-actions bot commented Jan 2, 2024

Hi @jdelforno, we're sending this friendly reminder because we haven't heard back from you in 7 days. We need more information about this issue to help address it. Please be sure to give us your input. If we don't hear back from you within 14 days of this comment the issue will be automatically closed. Thank you!

@github-actions github-actions bot added the no-recent-activity There has been no recent activity on this issue. label Jan 2, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jan 17, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Apr 16, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
AAD ARM - RBAC customer-reported Issues that are reported by GitHub users external to the Azure organization. Graph.Microsoft Mgmt This issue is related to a management-plane library. needs-author-feedback Workflow: More information is needed from author to address the issue. no-recent-activity There has been no recent activity on this issue. question The issue doesn't require a change to the product in order to be resolved. Most issues start as that
Projects
None yet
Development

No branches or pull requests