W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
<
這是一個具有HTTP Basic身份驗證和單個用戶帳戶的Spring Cloud“ Hello World”應用程序:
app.groovy。
@Grab('spring-boot-starter-security') @Controller class Application { @RequestMapping('/') String home() { 'Hello World' } }
您可以使用spring run app.groovy
運行它,并在日志中查看密碼(用戶名是“ user”)。到目前為止,這只是Spring Boot應用的默認設(shè)置。
這是帶有OAuth2 SSO的Spring Cloud應用:
app.groovy。
@Controller @EnableOAuth2Sso class Application { @RequestMapping('/') String home() { 'Hello World' } }
指出不同?該應用程序?qū)嶋H上將與上一個應用程序完全相同,因為它尚不知道它是OAuth2憑證。
您可以很容易地在github中注冊一個應用程序,因此,如果要在自己的域上使用生產(chǎn)應用程序,請嘗試。如果您愿意在localhost:8080上進行測試,請在應用程序配置中設(shè)置以下屬性:
application.yml。
security: oauth2: client: clientId: bd1c0a783ccdd1c9b9e4 clientSecret: 1a9030fbca47a5b2c28e92f19050bb77824b5ad1 accessTokenUri: https://github.com/login/oauth/access_token userAuthorizationUri: https://github.com/login/oauth/authorize clientAuthenticationScheme: form resource: userInfoUri: https://api.github.com/user preferTokenInfo: false
運行上面的應用程序,它將重定向到github進行授權(quán)。如果您已經(jīng)登錄github,您甚至不會注意到它已通過身份驗證。僅當您的應用程序在端口8080上運行時,這些憑據(jù)才有效。
要限制客戶端獲得訪問令牌時要求的范圍,可以設(shè)置security.oauth2.client.scope
(逗號分隔或YAML中的數(shù)組)。默認情況下,作用域為空,并且由授權(quán)服務器決定默認值是什么,通常取決于它所擁有的客戶端注冊中的設(shè)置。
上面的示例都是Groovy腳本。如果要用Java(或Groovy)編寫相同的代碼,則需要在類路徑中添加Spring Security OAuth2(例如,在此處查看 示例)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: