@@ -282,6 +282,7 @@ private void PersistSoftwareStatement()
282282 {
283283 _udapDcrDocument = JsonSerializer
284284 . Deserialize < UdapDynamicClientRegistrationDocument > ( _beforeEncodingStatement ) ;
285+
285286 var beforeEncodingScope = _udapDcrDocument ? . Scope ;
286287
287288 var rawStatement = new RawSoftwareStatementAndHeader
@@ -399,9 +400,14 @@ private async Task BuildRawSoftwareStatement()
399400 }
400401 else
401402 {
403+ //TODO: Why don't we pass scopes to BuildRawSoftwareStatementForClientCredentials. Pattern seems different here
404+ var scopes = AppState . MetadataVerificationModel ? . UdapServerMetaData ? . ScopesSupported ? . Any ( ) == true ?
405+ AppState . SmartMetadataModel ? . scopes_supported :
406+ AppState . MetadataVerificationModel ? . UdapServerMetaData ? . ScopesSupported ;
407+
402408 await BuildRawSoftwareStatementForAuthorizationCode (
403409 RegisterService . GetScopesForAuthorizationCode (
404- AppState . MetadataVerificationModel ? . UdapServerMetaData ? . ScopesSupported ,
410+ scopes ,
405411 TieredOauth ,
406412 OpenIdScope ,
407413 AppSharedState . ScopeLevelSelected ,
@@ -439,6 +445,10 @@ private async Task BuildRawSoftwareStatementForClientCredentials(bool cancelRegi
439445 UdapDcrBuilderForClientCredentialsUnchecked . Cancel ( ) :
440446 UdapDcrBuilderForClientCredentialsUnchecked . Create ( ) ;
441447
448+ var scopes = AppState . MetadataVerificationModel ? . UdapServerMetaData ? . ScopesSupported ? . Any ( ) == true ?
449+ AppState . MetadataVerificationModel ? . UdapServerMetaData ? . ScopesSupported :
450+ AppState . SmartMetadataModel ? . scopes_supported ;
451+
442452 dcrBuilder . WithAudience ( AppState . MetadataVerificationModel ? . UdapServerMetaData ? . RegistrationEndpoint )
443453 . WithExpiration ( TimeSpan . FromMinutes ( 5 ) )
444454 . WithJwtId ( )
@@ -448,8 +458,7 @@ private async Task BuildRawSoftwareStatementForClientCredentials(bool cancelRegi
448458449459 } )
450460 . WithTokenEndpointAuthMethod ( UdapConstants . RegistrationDocumentValues . TokenEndpointAuthMethodValue )
451- . WithScope ( RegisterService . GetScopesForClientCredentials (
452- AppState . MetadataVerificationModel ? . UdapServerMetaData ? . ScopesSupported ,
461+ . WithScope ( RegisterService . GetScopesForClientCredentials ( scopes ,
453462 SmartV1Scopes ,
454463 SmartV2Scopes ) ) ;
455464
@@ -471,7 +480,7 @@ private async Task BuildRawSoftwareStatementForClientCredentials(bool cancelRegi
471480 {
472481 _missingScope = true ;
473482 }
474- // Console.WriteLine(request.SerializeToJson(true));
483+ // Console.WriteLine(request.SerializeToJson(trueNo advertised scopes in metada
475484 var statement = await RegisterService
476485 . BuildSoftwareStatementForClientCredentials ( request , _signingAlgorithm ) ;
477486 if ( statement != null )
0 commit comments