-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Identity application credential #16787
Identity application credential #16787
Conversation
KarishmaGhiya
commented
Aug 5, 2021
•
edited
Loading
edited
- Create Application Credential (consists of Environment Credential and Managed Identity Credential)
- Public tests for Application Credential (testing Env Cred scenarios)
- Internal tests for Application Credential (testing Managed Identity Cred Scenarios)
- Fixes issue - Create AzureApplicationCredential #15805
- Details can be found here
- Updated changelog
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like a pretty clean implementation overall! Looks like there's a test failing the CI.
*/ | ||
export interface ApplicationCredentialOptions | ||
extends TokenCredentialOptions, | ||
CredentialPersistenceOptions { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It doesn't look like the EnvironmentCredential
or ManagedIdentityCredential
uses the persistence options (if I understand correctly...they don't end up using the msal node flow), so I think we could get away with just extending TokenCredentialOptions
.
@willmtemple Am I correct that those credentials don't use persistence?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
EnvironmentCredential passes the options to credentials that support persistence. ManagedIdentityCredential does not currently support persistence, but it will eventually.
@@ -60,7 +60,7 @@ export class ChainedTokenCredential implements TokenCredential { | |||
let successfulCredentialName = ""; | |||
const errors = []; | |||
|
|||
const { span, updatedOptions } = createSpan("ChainedTokenCredential-getToken", options); | |||
const { span, updatedOptions } = createSpan("ChainedTokenCredential.getToken", options); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was there an issue for this or did you happen to notice it was wrong?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I’d say, let’s not make this change here unless we make it everywhere in Identity. An issue could help.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On second thought, @KarishmaGhiya can we fix this everywhere else that you find it? Or is this the only place?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so I found inconsitencies in use of "." and "-" with getToken @sadasant
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@chradek I happened to notice the inconsistencies
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, let’s thing about this later. Also, we should align with what other clients are doing! Or align other packages to something that makes sense, (either -
or .
).
sdk/identity/identity/src/credentials/defaultAzureCredential.ts
Outdated
Show resolved
Hide resolved
sdk/identity/identity/test/internal/node/applicationCredential.spec.ts
Outdated
Show resolved
Hide resolved
It’s going really well! Now the final effort comes: Making sure CI is happy 😊 |
438364e
to
af9f607
Compare
sdk/identity/identity/test/internal/node/managedIdentityCredential.spec.ts
Outdated
Show resolved
Hide resolved
sdk/identity/identity/test/public/node/applicationCredential.spec.ts
Outdated
Show resolved
Hide resolved
sdk/identity/identity/test/public/node/environmentCredential.spec.ts
Outdated
Show resolved
Hide resolved
This test passes on my local though. Seems that the error messages for Managed Identity Credential are slightly different for local and CI, I updated the test to check just whether it is coming as "not authenticated" instead of verifying the complete message for ManagedIdentityCredential under the "AggregateAuthenticationError" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job! 👏
Microsoft.SecurityInsights 2021-09-01-preview (Azure#16933) * Adds base for updating Microsoft.SecurityInsights from version preview/2021-03-01-preview to version 2021-09-01-preview * Updates readme * Updates API version in new specs and examples * Microsoft.security insights 2021 09 01 preview add missing resources (Azure#15531) * Copy missing resources specs and examples from 2019-01-01-preview * Update added resources specs and examples and extract common types * Update readme * Extract ClientInfo, UserInfo and Lable to common types * Fix SpellCheck and Avocado * Return ThreatIntelligence to readme * Fix broken refs in Watchlists * Resolve duplicate schema errors * Run prettier * Make common types prettier * Add required property to operations according to ARM requirments * Fix readme * Add file separators to readme * Rename example file * Supress OBJECT_ADDITIONAL_PROPERTIES * Add 'where' to OBJECT_ADDITIONAL_PROPERTIES supression * Move OBJECT_ADDITIONAL_PROPERTIES supression under general Supression section. * Copy dataConnectors from 2021-03-01-preview * Update version of dataConnectors (this was done as there were errors when trying to generate C# client. Copying and changing version again fixed the problem). * Add dataConnectorsCheckRequirments path, parameters and definitions from 2019-01-01-preveiw Co-authored-by: Anat Gilenson <[email protected]> * Use newest common types in new 2021-09-01-preview API version (Azure#15778) * Use newest common types in AlertRules * Use newest common types in AutomationRules * Use newest common types in Bookmarks * Use newest common types in dataConnectors * Use newest common types in Enrichment * Use newest common types in Entities * Use newest common types in EntityQueries * Use newest common types in Incidents * Use newest common types in Metadata * Use newest common types in OfficeConsents * Use newest common types in OnboardingStates * Use newest common types in operations * Use newest common types in Settings * Use newest common types in SourceControls * Use newest common types in ThreatIntelligence * Use newest common types in Watchlist * Use newest common types in EntityTypes * Use newest common types in RelationTypes * Fix ThreatIntelligence Co-authored-by: Anat Gilenson <[email protected]> * Add template version to the scheduled alert rule + scheduled template (Azure#15919) * Add template version to the scheduled alert rule * Update AlertRules.json * Update AlertRules.json * Update AlertRules.json * Update AlertRules.json * Update GetAlertRuleTemplates.json * Update GetAlertRuleTemplateById.json * add aws s3 connector (Azure#15844) * Add a new kind of alert rules - NRT (Azure#15980) * add NRT rule * add NRT rule * add NRT rule * add NRT rule * fix typo * fix typo * fix * Align new Metadata feature with 2021-03-01-preview (Azure#16304) Co-authored-by: Anat Gilenson <[email protected]> * Add fixes from 2021-03-01-preview (Azure#16238) Co-authored-by: Anat Gilenson <[email protected]> * Add entity query templates (Azure#16269) * Add entity query templates from 2021-03-01-preview * Update version * Use newest common types and update readme * Fix conflicting common types Co-authored-by: Anat Gilenson <[email protected]> * Fix bookmark relations operatinIds to be consistent with other operationIds. (Azure#16519) Co-authored-by: Anat Gilenson <[email protected]> * Add corrections from 2021-03-01-preview (Azure#16490) Co-authored-by: Anat Gilenson <[email protected]> * Remove unused parameters (Azure#16619) Co-authored-by: Anat Gilenson <[email protected]> * Update readme default readme tag for client generation (Azure#16620) Co-authored-by: Anat Gilenson <[email protected]> * Use CloudError instead of ErrorResponse to avoid breaking change (Azure#16691) Co-authored-by: Anat Gilenson <[email protected]> * Add data connectors polling ccp api support (Azure#16293) * adding dataConnectors polling CCP api Support. (witout tests validations) * azure sentinel dataconnectors update examples * azure sentinel dataConnectors examples update and fix * azure sentinel dataConnectors prettier * azure sentinel dataConnectors add connect disconnect examples update path * azure sentinel dataConnectors add connect disconnect examples fix * azure sentinel dataConnectors add connect disconnect examples fix 2 * azure sentinel dataConnectors rebase dataConnectors dev * azure sentinel dataconnectors - fix put to post on connect and disconnect endpoints * azure sentinel dataconnectors - adding x-ms-secret to password on connect * azure sentinel dataconnectors - connect/disconnect endpoint remove unnedded 201 return * azure sentinel dataConnectors - remove empty body DataConnectorDisconnectBody Co-authored-by: Alon Danoch <[email protected]> * Add office IRM Connector (Azure#16764) * Add office IRM * fix * fix * fix * fix Co-authored-by: omerhaimov <[email protected]> * Add teamInformation to IncidentProperties 2021-09-01-preview (Azure#16787) * Fix Swagger for SecurityInsights - Add teamInformation to IncidentProperties * Try change description as advised by Swagger reviewer Yuchao Yan to fix the validation error. * Revert change in ntDomain description as it has nothing to do with validations Co-authored-by: Anat Gilenson <[email protected]> * Make CloudError and CloudErrorBody external resources (already exist under Microsoft.Rest.Azure namespace) (Azure#16872) Co-authored-by: Anat Gilenson <[email protected]> * Remove operational insights parameter 2021 09 01 preview (Azure#16891) * Remove operationalInsightsResourceProvider parameter from specs * Remove parameter from examples Co-authored-by: Anat Gilenson <[email protected]> * Update EntityTypes.json (Azure#16972) Co-authored-by: Anat Gilenson <[email protected]> Co-authored-by: Amit Bergman <[email protected]> Co-authored-by: sagamzu <[email protected]> Co-authored-by: necoh <[email protected]> Co-authored-by: alondanoch <[email protected]> Co-authored-by: Alon Danoch <[email protected]> Co-authored-by: omerhaimov <[email protected]> Co-authored-by: omerhaimov <[email protected]> Co-authored-by: Yuchao Yan <[email protected]>