Да, вы можете.Когда вы храните клиентов, вы назначаете им разрешенный тип предоставления (например, пароль, код авторизации).
В качестве примера рассмотрите следующий код:
clients.inMemory()
.withClient("my-trusted-client")
.authorizedGrantTypes("password", "authorization_code", "refresh_token", "implicit")
.authorities("ROLE_CLIENT", "ROLE_TRUSTED_CLIENT")
.scopes("read", "write", "trust")
.secret("secret")
.accessTokenValiditySeconds(120).//Access token is only valid for 2 minutes.
refreshTokenValiditySeconds(600);//Refresh token is only valid for 10 minutes.
}
my-доверенный клиент клиент может использовать пароль или код авторизации.
Фрагмент взят из этого руководства , которому я настоятельно рекомендую вам следовать вместе с этим .Кроме того, как примечание, вы должны прочитать OAuth2 RFC .Это лучшее руководство для понимания потока.