diff --git a/common4j/src/main/com/microsoft/identity/common/java/jwt/JwtKeyUseTypes.kt b/common4j/src/main/com/microsoft/identity/common/java/jwt/JwtKeyUseTypes.kt new file mode 100644 index 0000000000..f2f845b0e1 --- /dev/null +++ b/common4j/src/main/com/microsoft/identity/common/java/jwt/JwtKeyUseTypes.kt @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. +// All rights reserved. +// +// This code is licensed under the MIT License. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files(the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and / or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions : +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. +package com.microsoft.identity.common.java.jwt + +object JwtKeyUseTypes { + const val RESOURCE_ACCOUNT: String = "resource_account" +} diff --git a/common4j/src/main/com/microsoft/identity/common/java/logging/DiagnosticContextExtensions.kt b/common4j/src/main/com/microsoft/identity/common/java/logging/DiagnosticContextExtensions.kt new file mode 100644 index 0000000000..ab98d69117 --- /dev/null +++ b/common4j/src/main/com/microsoft/identity/common/java/logging/DiagnosticContextExtensions.kt @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. +// All rights reserved. +// +// This code is licensed under the MIT License. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files(the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and / or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions : +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. +package com.microsoft.identity.common.java.logging + +import com.microsoft.identity.common.java.AuthenticationConstants +import com.microsoft.identity.common.java.AuthenticationConstants.SdkPlatformFields.PRODUCT + +/** + * Extension function to set up the [DiagnosticContext] with correlation ID, SDK type, and SDK version. + * @return An [AutoCloseable] that clears the context when closed. + */ +fun DiagnosticContext.withInitializedContext( + correlationId: String, + sdkType: String, + sdkVersion: String +): AutoCloseable { + val requestContext = RequestContext().apply { + put(DiagnosticContext.CORRELATION_ID, correlationId) + put(PRODUCT, sdkType) + put(AuthenticationConstants.SdkPlatformFields.VERSION, sdkVersion) + } + setRequestContext(requestContext) + return AutoCloseable { + clear() + } +} \ No newline at end of file diff --git a/common4j/src/main/com/microsoft/identity/common/java/providers/oauth2/TokenRequest.java b/common4j/src/main/com/microsoft/identity/common/java/providers/oauth2/TokenRequest.java index 6d15116cc8..b5ae8e3589 100644 --- a/common4j/src/main/com/microsoft/identity/common/java/providers/oauth2/TokenRequest.java +++ b/common4j/src/main/com/microsoft/identity/common/java/providers/oauth2/TokenRequest.java @@ -305,6 +305,11 @@ public static class GrantTypes { // e.g. used in Primary Refresh Token acquisition flows public static final String JWT_BEARER = "urn:ietf:params:oauth:grant-type:jwt-bearer"; public static final String TRANSFER_TOKEN = "transfer_token"; + + /** + * Grant type used to acquire resource account PRT. + */ + public static final String RESOURCE_ACCOUNT = "resource_account"; } public static class TokenType {